Brava developer day 2011

63
www.bravaecm.com.br Administração do Liferay Marcos Roberto Ferreira março/2011 [email protected] @marcoooos

description

 

Transcript of Brava developer day 2011

Page 1: Brava developer day 2011

www.bravaecm.com.br

Administração do Liferay

Marcos Roberto Ferreira – março/2011

[email protected]

@marcoooos

Page 2: Brava developer day 2011

www.bravaecm.com.br

Empresa especialista na distribuição e prestação de serviços em

soluções de GED/CM, Workflow/BPM, Qualidade e Portais, que conta com a credibilidade de ser uma empresa com

o selo TOTVS Business Partner.

10 anos de atuação no mercado

+ de 1.000 projetos entregues

+ de 1.000.000 horas

aplicadas em projetos

Equipe certificada ealtamente qualificada para atendimento em toda a América Latina

BRAVA ECM

Page 3: Brava developer day 2011

www.bravaecm.com.br

Administração do Liferay

• O que é o Liferay?

• Instalação do Liferay

• Administração básica

• Configurações avançadas

• Gerenciamento de plugins

• Repositório de plugins

• Webservices do Liferay

• WSRP

• Backup

• Tuning

• Cluster

3

Page 4: Brava developer day 2011

www.bravaecm.com.br

O que é o Liferay

4

O que é o Liferay?

Page 5: Brava developer day 2011

www.bravaecm.com.br

O que é o Liferay?

Liferay Portal é uma solução de

administração de portais de códigoaberto, desenvolvida em Java,

mantido pela Liferay Inc

5

Page 6: Brava developer day 2011

www.bravaecm.com.br

O que é o Liferay?

Com Liferay Portal é possível

adicionar de maneira simplesfuncionalidades comuns à

websites. Essas funcionalidades são

chamadas de plugins que consistem

em portlets desenvolvidos utilizando

diversas tecnologias6

Page 7: Brava developer day 2011

www.bravaecm.com.br

O que é o Liferay?

7

Exemplo de portal

Page 8: Brava developer day 2011

www.bravaecm.com.br

O que é o Liferay?

8

Distribuições

• Community Edition

• Enterprise Edition

Page 9: Brava developer day 2011

www.bravaecm.com.br

O que é o Liferay

9

Estrutura do Liferay

Page 10: Brava developer day 2011

www.bravaecm.com.br

O que é o Liferay – Ex de um portal

10

Administrativo TI

Vendas

ComunidadeVendas

ComunidadeServiços

Comunidade TI

ComunidadeAdministrativo

Joinville São Paulo

ComunidadeCervejarianos

ComunidadeGamers

ComunidadeBloggers

ComunidadeEsportes

Portal BRAVA

BRAV A

Serviços

Page 11: Brava developer day 2011

www.bravaecm.com.br

O que é o Liferay – Ex de um portal - Serviços

11

ComunidadeServiços

Comunidade TI

ComunidadeAdministrativo

Joinville

ComunidadeCervejarianos

ComunidadeGamers

ComunidadeBloggers

Portal BRAVA

BRAV A

Serviços

Page 12: Brava developer day 2011

www.bravaecm.com.br

O que é o Liferay – Ex de um portal - Vendas

12

Vendas

ComunidadeVendas

ComunidadeServiços

São Paulo

ComunidadeGamers

ComunidadeEsportes

Portal BRAVA

BRAV A

Page 13: Brava developer day 2011

www.bravaecm.com.br

Instalação

13

Instalação

Page 14: Brava developer day 2011

www.bravaecm.com.br

Instalação

14

Liferay Bundle

-Ter instalado JRE/JDK 1.5 ou superior

-Ter definida a variável de ambiente JAVA_HOME

-Baixar o zip com AS desejado

-Descompactar o zip baixado

-Iniciar AS localizado no diretório do Liferay

Page 15: Brava developer day 2011

www.bravaecm.com.br

Instalação

15

Liferay WAR

-Ter instalado o AS desejado

-Baixar o arquivo liferay-portal-6xxx.war

-Baixar o arquivo liferay-portal-dependencies-6xxx.zip

-Descompactar o arquivo com dependências e adicionar no diretório bibliotecas do AS

-Fazer deploy do arquivo war no AS

Page 16: Brava developer day 2011

www.bravaecm.com.br

Instalação

16

Liferay - Banco de dados

-Criar o banco de dados utilizando UTF8• create database XXX charset=utf8;

-Criar o arquivo portal-ext.properties no LiferayHome

-Adicionar no arquivo portal-ext.properties as configurções de banco ou connection pool

Page 17: Brava developer day 2011

www.bravaecm.com.br

Instalação

17

Configuração de banco – MySQL##

## JDBC

##

# MySQL

jdbc.default.driverClassName=com.mysql.jdbc.Driver

jdbc.default.url=jdbc:mysql://localhost/lportal?

useUnicode=true&

characterEncoding=UTF8&

useFastDateParsing=false

jdbc.default.username=

jdbc.default.password=

Page 18: Brava developer day 2011

www.bravaecm.com.br

Instalação

18

Configuração de banco – Connection Pool##

## JDBC

##

#

# Set the JNDI name to lookup the JDBC data source. If none is set,

# then the portal will attempt to create the JDBC data source based on the

# properties prefixed with "jdbc.default.".

#

jdbc.default.jndi.name=jdbc/LiferayPool

Page 19: Brava developer day 2011

www.bravaecm.com.br

Instalação

19

Configuração de Email – Servidor de email##

## Mail

##

#

mail.session.mail.imap.host=localhost

mail.session.mail.pop3.host=localhost

mail.session.mail.smtp.host=localhost

mail.session.mail.smtp.password=

mail.session.mail.smtp.user=

Page 20: Brava developer day 2011

www.bravaecm.com.br

Administração Básica

20

Administração Básica

Page 21: Brava developer day 2011

www.bravaecm.com.br

Administração básica

21

Interface do Liferay – Tela de login

Default user: [email protected]/test

Page 22: Brava developer day 2011

www.bravaecm.com.br

Administração básica

22

Interface do Liferay – Menu Adicionar

Page 23: Brava developer day 2011

www.bravaecm.com.br

Administração básica

23

Interface do Liferay – Painel de controle

Page 24: Brava developer day 2011

www.bravaecm.com.br

Administração básica

24

• Gerenciar usuários, comunidades, organizações, papéis e grupos;• Definir políticas de senha;• Settings - nome da empresa, host, autenticação.

Global Server Settings

Page 25: Brava developer day 2011

www.bravaecm.com.br

Administração básica

25

• Monitoring – Sessões ativas no portal.• Plugins Configuration – Permissõesdos plugins.

Global Server Settings

Page 26: Brava developer day 2011

www.bravaecm.com.br

Administração básica

26

Server Administration

Page 27: Brava developer day 2011

www.bravaecm.com.br

Administração básica

27

Server Administration

• Resources – Gerenciar memória, cache e índices• Log Levels – Definir níveis de log• Properties – Visualizar propriedades do ambiente• OpenOffice – Habilitar conversão de documentos para PDF• Shutdown – Parar o ambiente

Page 28: Brava developer day 2011

www.bravaecm.com.br

Configurações avançadas

28

Configurações avançadas

Page 29: Brava developer day 2011

www.bravaecm.com.br

Configurações avançadas

29

• As configurações do Liferay estão no arquivoportal.properties• Este arquivo está empacotado no arquivoporta-impl.jar e NÃO DEVE SER ALTERADO• Para alterar um a propriedade crie o arquivoportal-ext.properties e sobrescreva-a nestearquivo• O arquivo portal-ext.properties deve ficar no diretório home do liferay

Page 30: Brava developer day 2011

www.bravaecm.com.br

Gerenciamento de Plugins

30

Gerenciamento de Plugins

Page 31: Brava developer day 2011

www.bravaecm.com.br

Gerenciamento de Plugins

31

Para instalar um plugin é necessário ir emPlugins Installation

Page 32: Brava developer day 2011

www.bravaecm.com.br

Gerenciamento de Plugins

32

Em Plugin Installer é possível instalar: • Portlets• Temas• Layouts• Hooks• Aplicações específicas

A Instalação pode ser feita através do repositório, upload e download do arquivo

Page 33: Brava developer day 2011

www.bravaecm.com.br

Gerenciamento de Plugins

33

Em Plugin Installer também é possívelconfiguar o diretório de deploy dos plugins entre outras opções.

Para demais configurações ou remoção de plugins deve-se ir nos links Plugins Configuratione Software Update

Page 34: Brava developer day 2011

www.bravaecm.com.br

Repositório de Plugins

34

Repositório de Plugins

Page 35: Brava developer day 2011

www.bravaecm.com.br

Repositório de Plugins

35

O Liferay por padrão provê dois repositórios:-Repositório com Plugins da Liferay-Repositório com Plugins da comunidade

Além disso é possível criar um próprio repositórioe disponibilizá-lo para outras instalações do Liferay.

Page 36: Brava developer day 2011

www.bravaecm.com.br

Repositório de Plugins

36

Para criar um repositório deve-se utilizar o link Software Catalog.

Em Software Catalog é necessário-Adicionar um Framework-Adicionar uma licença: GPL, LGPL, etc.-Adicionar um produto-Adicionar uma versão ao produto-Acessar o xml do repositório

• http://localhost:8080/software_catalog/group_id

Page 37: Brava developer day 2011

www.bravaecm.com.br

Webservices do Liferay

37

Webservices do Liferay

Page 38: Brava developer day 2011

www.bravaecm.com.br

Webservices do Liferay

38

O Liferay possui o Service Builder no qual é possível gerar interfaces dos seus recursos paradiversas tecnologias, como Java, JavaScript e Webservice

Para acessar as interfaces dos recursos do Liferaypor webservice são necessárias algumaspropriedades no arquivo portal-ext.properties.

Page 39: Brava developer day 2011

www.bravaecm.com.br

Webservices do Liferay

39

As propriedades para acesso por webservicessão:

#### Axis Servlet##

## See Main Servlet on how to protect this servlet.#axis.servlet.hosts.allowed=127.0.0.1,SERVER_IPaxis.servlet.https.required=false#para permitir acesso de qualquer host use abaixo#axis.servlet.hosts.allowed=

Page 40: Brava developer day 2011

www.bravaecm.com.br

Webservices do Liferay

40

Para acessar os WSDL do Liferay use o link

http://127.0.0.1:8080/tunnel-web/axis

Obs: o acesso do serviço também depende da autenticação e autorização do usuário

Page 41: Brava developer day 2011

www.bravaecm.com.br

WSRP

41

WRSP

Page 42: Brava developer day 2011

www.bravaecm.com.br

WSRP

42

Web Services for Remote Portlets (WSRP) é um padrão de portais para que um portlet em um determinado portal possa ser exibido em outroportal, independente do fornecedor.

Para os usuários é indifirente se o portlet é de um portal servidor ou de um portal consumidor.

Page 43: Brava developer day 2011

www.bravaecm.com.br

WSRP

43

Para utilizar o recurso de WSRP é necessário:-Instalar o portlet WSRP-Configurar um portlet servidor-Configurar um portlet consumidor-Adicionar o portlet no portlet consumidor-Adicionar o portlet no portal

Page 44: Brava developer day 2011

www.bravaecm.com.br

Backup

44

Backup

Page 45: Brava developer day 2011

www.bravaecm.com.br

Backup

45

Para realizar backup do Liferay é necessário:-Código fonte de customizações/plugins-Banco de dados do Liferay-Sistema de arquivos do Liferay

-portal-ext.properties-arquivos adicionais de configuração-pasta WEB-INF-arquivos de índices-bibliotecas de documentos

Page 46: Brava developer day 2011

www.bravaecm.com.br

Tuning

46

Tuning

Page 47: Brava developer day 2011

www.bravaecm.com.br

Tuning

47

O tuning de portais que utilizam o Liferayconsiste em executar testes de performance e realizar modificações no Liferay e em seuscomponentes de forma a obter um melhordesempenho.

Se tratando de tuning, não há uma receita prontado que deve ser feito. É necessário monitorar, executar alterações e acompanhar os resultados.

Page 48: Brava developer day 2011

www.bravaecm.com.br

Tuning

48

Em testes de performance um dos componentesmais importantes é o teste de carga. Existemalgumas ferramentas disponíveis:

Open Source•The Grinder•Selenium•Jmeter

Comerciais•HP LoadRunner•PureLoad

Page 49: Brava developer day 2011

www.bravaecm.com.br

Tuning

49

Outro componente imporante é o Profiler. Existemalgumas ferramentas disponíveis:

Open Source•Netbeans Profiler•JVisualVM

Comerciais•YourKit Profiler•JProfiler

Page 50: Brava developer day 2011

www.bravaecm.com.br

Tuning

50

Há diversos fatores que podem influenciar naperformance do Liferay

•Memória•Propriedades•Servlet Filters•Portlets•Cache•Índices de busca•Geração de chave primária•Acesso ao banco

Page 51: Brava developer day 2011

www.bravaecm.com.br

Tuning - Memória

51

Memória

Um dos primeiros itens a ser verificado é a memória alocada pela JVM e as opções do Garbage Collector

Page 52: Brava developer day 2011

www.bravaecm.com.br

Tuning - Memória

52

Memória

Page 53: Brava developer day 2011

www.bravaecm.com.br

Tuning - Memória

53

Há várias opções configuração da memória daJVM e de algorítmos do GC

Page 54: Brava developer day 2011

www.bravaecm.com.br

Tuning - Propriedades

54

Propriedades

Existem algumas propriedades do porta-ext.properties que podem aumentar a performance do Liferay.

Page 55: Brava developer day 2011

www.bravaecm.com.br

Tuning - Propriedades

55

Propriedades

last.modified.check – Verifica se houve alteração em css

theme.css.load – Agrupa os arquivos de estilo para carregar

javascript.fast.load – Agrupa os arquivos JS para carregar

theme.virtual.path – indica ao Liferay para utilizar recursosestáticos de um web server ao invés de um application server.

Page 56: Brava developer day 2011

www.bravaecm.com.br

Tuning - Servlet Filter

56

Servlet Filter

Há diversos Servlet Filters que vem habilitados porpadrão no Liferay, mas que podem não estar sendoutilizados.

Page 57: Brava developer day 2011

www.bravaecm.com.br

Tuning - Servlet Filter

57

Servlet Filters

SSO CAS Filter – CAS para Single Sign On

SSO NTLM Filter – Autenticação via NTLM

SSO Open SSO Filter – OpenSSO para Single Sign On

Sharepointer Filter – Mecanismo para salvar documentosutilizando o Sharepointer

Page 58: Brava developer day 2011

www.bravaecm.com.br

Tuning

58

Portlets

O Liferay vem com diversos portlets que podem não estarsendo utilizados mas consumindo recursos. É possíveldesabilitá-los.

Cache

Os portlets por padrão vem configurados com cache, sendoque estes podem ser desabilitados. Também é interessanteverificar cache dos portlets customizados.

Page 59: Brava developer day 2011

www.bravaecm.com.br

Tuning

59

Índices de busca

É possível alterar o mecanismo de gravação dos arquivos do lucene. Também há a opção de configurar um ambienteespecífico apenas para indexação/busca

Page 60: Brava developer day 2011

www.bravaecm.com.br

Cluster

60

Cluster

Page 61: Brava developer day 2011

www.bravaecm.com.br

Cluster

61

Para ambientes com grande tráfego em que é necessário utilizar cluster do Liferay, é necessário:

-Garantir que todos os nós estão apontado para o mesmo banco de dados-Configurar o Quartz para cluster-Configurar os caches para se comunicarem através do cluster-Configurar o repositório de arquivos para para cluster-Configurar o Lucene para cluster-Plugins devem estar instaldos em todos os nós-Configurar Load Balancing-Configurar o AS para replicar sessão (opcional)

Page 62: Brava developer day 2011

www.bravaecm.com.br

Cluster

62

Exemplo de Cluster no Liferay

Usuário

Nó 1 Liferay

Nó 2 Liferay

Servidor BDApache Server

Page 63: Brava developer day 2011

www.bravaecm.com.br

[email protected]

QUESTÕES?