© 2013 IBM Corporation
IBM Connections
Melhores práticas de deployment
Rodrigo Reis
IT Specialist & Software Architect
IBM Analytics-Social Business Unit
© 2013 IBM Corporation
Agenda
● Planejamento
● Instalação
● Tunning
© 2013 IBM Corporation
Planejamento
● NÃO comece pela instalação
● O deployment do IBM Connections não é Next > Next > ...
 A solução inclui no minimo 06 componentes distintos
➔ LDAP
➔ DB2
➔ Tivoli Directory Integrator (TDI)
➔ IBM Installation Manager (IIM)
➔ WebSphere Application Server Network Deployment (WASND)
➔ IBM HTTP Server (IHS)
 Cada componente requer instalação e configuração
 Devido a natureza distribuida da solução, não é dificil cometer erros na
execução da integração entre os componentes
© 2013 IBM Corporation
Planejamento
● Comece “pequeno”
 Inicialmente, incluir apenas os componentes minimos para
deploy da solução
● Fazer o deploy de componentes adicionais em demais fases do
projeto
 Mail (IBM Domino / Microsoft Exchange)
 Content Manager (IBM FileNet)
 Metrics (IBM Congnos Business Intelligence)
 Surveys and Pools (IBM Forms Experience Builder)
 Presence, Chat (IBM Sametime)
 Docs (IBM Docs)
© 2013 IBM Corporation
Planejamento
● ANTES de iniciar a fase de instalação leia toda documentação
necessária
● A documentação oficial e mais recente sobre a instalação do
produto está na Wiki
 A leitura através do Wiki não é boa para alguns
 Imprimir pode não ser viável
● Documentação adicional de suporte ao deployment
 IBM Redbook: Installing and Deploying IBM Connections
http://www.lotus.com/ldd/lcwiki.nsf/dx/PDF_of_IBM_Redbooksc
ol_Installing_and_Deploying_IBM_Connections
© 2013 IBM Corporation
Planejamento
● Opções de deployment
 Small deployment
➔ Indicado apenas para POCs e demos
➔ Instalar todo o IBM Connections sobre um único node em um único
cluster
➔ Flexibilidade limitada, uma vez que não permite escalar aplicações
individualmente
 Medium deployment
➔ Indicado para a maioria dos casos
➔ Instalar grupos de aplicações em clusters separados
➔ Maior flexibilidade, use esta opção para distrubuir as aplicações de
acordo com a espectaviva de uso
© 2013 IBM Corporation
Planejamento
● Opções de deployment
 Large deployment
➔ Instalar cada aplicativo do Connections em seu próprio cluster
➔ Fornece a melhor performance em termos de opções escalabilidade e
disponibilidade, mas também é a que requer maior quantidade de
recursos
● Escolha o tamanho de deployment adequado
 Milhares de usuários não necessariamente significa a opção
por um Large deployment
● Esteja preparado para o crescimento
 A medida que cresce o número de usuários e comunidades,
mais recursos são necessários
© 2013 IBM Corporation
Planejamento
● SEMPRE faça um planejamento pensando em um ambiente
produtivo
 Mesmo se for apenas um ambiente para piloto ou testes
● NUNCA coloque todos os componentes numa mesma máquina
 A menos que seja uma imagem rodando no seu desktop
● SEMPRE considere o uso de 03 ambientes distintos
 Teste
 Homologação
 Produção
© 2013 IBM Corporation
Planejamento
● No planejamento, as seguintes áreas devem estar bem
documentadas
 Identificar as necessidades da audiência
 Objetivo inicial e a longo prazo
 Mapeamento dos skills necessários e definição de membros e
responsabilidades
 Arquitetura de deployment
➔ Registro das decisões arquiteturais
 Roteiros de instalação e configuração
 Modelo Operacional
© 2013 IBM Corporation
Instalação
● Faça o download de todos pacotes que irá precisar de uma só
vez
● Está é uma tarefa que irá consumir muito tempo
 Dependendo da sua banda larga, planejar no minimo 24 horas
para esta atividade
● Copiar os pacotes para a máquina onde o produto será instalado
e só então descompactar
● Os caminhos NÃO devem incluir espaços
 Isso vale para o origem e destino
© 2013 IBM Corporation
Instalação
● Siga a risca o que está documentado nos Requistos de Sistema
● Informações para todas versões do IBM Connections
 Detailed system requirements for IBM Connections
http://www.ibm.com/support/docview.wss?uid=swg27012786
● APENAS configurações e versões recomendadas são
suportadas
● NÃO assumir que a última versão de um compentente é melhor
© 2013 IBM Corporation
Instalação
● Tenha um usuário de administração exclusivo para o Connections
 No Linux, apenas usuário com privilégio de root tem as
permissões necessários para instalar o Connections, para
outros usuários consulte o tópico Installing as a non-root user
na Wiki
 No Windows, evitar usuários com group policies aplicadas
● Durante a instalação TODOS softwares de segurança devem ser
desativados
 SELinux, AppArmor, Antivirus, Firewalls, Scripts de
segurança, ...
© 2013 IBM Corporation
Instalação
● Requisitos minimos de instalação
 Memória
➔ 4GB é muito pouco. Melhor partir de 8GB a 12GB de RAM
➔ Memory Swapping acaba com qualquer esforço de tunning
 CPU
➔ Minimo de 2 cores apenas para small deployments
➔ Regra de Ouro: 1 core por JVM
 Disco
➔ Usar network store ou virtual servers, pois são facéis de
estender
© 2013 IBM Corporation
Instalação
● Recursos de rede
 DNS
➔ TODOS os servidores que compõem o ambiente devem ser
resolvidos pelo nome
➔ Para o protocolo de descoberta, evite round robin
● Network Storage (problemas de file locking)
➔ Não utilize NFS V3. Use NFS V4 / smb|cifs
➔ Não utilize DFS
 Proxy / Proxy Reverso
➔ Teste o ambiente sem Proxy. Ative-os apenas quanto tudo
estiver OK.
© 2013 IBM Corporation
Instalação
● LDAP
 Preparar o LDAP
➔ Melhores dados, melhor Profile
 É possível ter um diretório de autenticação diferente
● Planeje a ativação do SPNEGO
 Considere manter o DefaultFileBasedRealm
➔ Se a politica de segurança permitir, ajuda a resolver
rapidamente problemas com respositórios federados
© 2013 IBM Corporation
Instalação
● O Snapshot é seu melhor amigo
 Tire um snapshot ao final de cada instalação e configuração
bem sucedida
 Faça isso para todos os servidores
● Se os servidores não forem máquinas virtuais
 Faça um backup do profile do WAS para cada instalação e
configuração bem sucedida
 Opcionalmente, faça um backup do filesystem
© 2013 IBM Corporation
Tunning
● Principais causas para problemas de performance no IBM
Connections
 Ausência de testes de performance antes do Going-Live!
 Focar os testes de performance apenas no IBM Connections
 Testes de performance mal feitos
 Análise do tipo: Se está lento, coloca mais memória ou
aumenta o número de cores
 “Apliquei todos os parametros definidos no documento de
tunning da IBM”
© 2013 IBM Corporation
Tunning
● Performance Tunning Guide
 IBM Connections 4.0
➔ http://www-
10.lotus.com/ldd/lcwiki.nsf/dx/IBM_Connections_4.0_Performance_Tuning_
Guide
 IBM Connections 4.5
➔ http://www-
10.lotus.com/ldd/lcwiki.nsf/dx/IBM_Connections_4.5_Performance_Tuning_
Guide_Addendum
 IBM Connections 5.0
➔ http://www-
10.lotus.com/ldd/lcwiki.nsf/dx/IBM_Connection_V5_CR1_Tuning_guide
● Leia tudo atentamente e verifique todas dependências
© 2013 IBM Corporation
Tunning
Exemplo de Pior Prática: Tempo para reiniciar o Connections é
cerca de 22 minutos
● Componentes do cenário:
 WebSphere (01 servidor)
➔ Large Deployment
➔ 16 GB RAM
➔ 4 Cores
 DB2 (01 servidor)
➔ 12 instances
➔ 8 GB RAM
➔ 4 Cores
© 2013 IBM Corporation
Tunning
● Mais dados sobre o cenário:
 Utilizando Large Deployment, temos cerca de 15 JVMs em
um único servidor
 Na reinicialização o Connections consome 100% de CPU
durante 15 minutos
 Java Heap size com os valores padrão (256 MB / 768 MB)
 DataSource Connection Pool também com valores padrões
(1 / 10)
 12 instâncias de banco em único servidor
© 2013 IBM Corporation
Tunning
● Mudanças para resolver o problema:
 04 Cores é insuficiente para 15 JVMs, necesário adicionar pelo
menos mais 04 Cores
 Aumentar o Java Heap size para: 1.5 GB / 2.5 GB
 Aumentar também o DataSource Connection Pool: (10 /20)
 Multiplas instâncias de banco de banco de dados só
aumentam a performance se ouver recursos suficientes para
isso, mas neste momento isso não foi alterado
● O tempo de para reinicializar o Connections caiu para 3 minutos
© 2013 IBM Corporation
Tunning
● Considere o impacto de Going-Live usando diferentes estratégias
 Rollout
➔ Aplicativos / grupos de usuários são adicionados em ondas
➔ Reduz o risco de problemas de performance
 Big Bang
➔ Todos os usuários tem acesso ao mesmo tempo ao
Connections
➔ Risco maior do sistema apresentar problemas de
performance
© 2013 IBM Corporation24
Dúvidas?
© 2013 IBM Corporation
Obrigado!!!
Rodrigo Reis
rodrigoareis@br.ibm.com
IT Specialist & Application Architect
IBM Analytics – Social Business Unit

Melhores práticas de deployment do IBM Connections

  • 1.
    © 2013 IBMCorporation IBM Connections Melhores práticas de deployment Rodrigo Reis IT Specialist & Software Architect IBM Analytics-Social Business Unit
  • 2.
    © 2013 IBMCorporation Agenda ● Planejamento ● Instalação ● Tunning
  • 3.
    © 2013 IBMCorporation Planejamento ● NÃO comece pela instalação ● O deployment do IBM Connections não é Next > Next > ...  A solução inclui no minimo 06 componentes distintos ➔ LDAP ➔ DB2 ➔ Tivoli Directory Integrator (TDI) ➔ IBM Installation Manager (IIM) ➔ WebSphere Application Server Network Deployment (WASND) ➔ IBM HTTP Server (IHS)  Cada componente requer instalação e configuração  Devido a natureza distribuida da solução, não é dificil cometer erros na execução da integração entre os componentes
  • 4.
    © 2013 IBMCorporation Planejamento ● Comece “pequeno”  Inicialmente, incluir apenas os componentes minimos para deploy da solução ● Fazer o deploy de componentes adicionais em demais fases do projeto  Mail (IBM Domino / Microsoft Exchange)  Content Manager (IBM FileNet)  Metrics (IBM Congnos Business Intelligence)  Surveys and Pools (IBM Forms Experience Builder)  Presence, Chat (IBM Sametime)  Docs (IBM Docs)
  • 5.
    © 2013 IBMCorporation Planejamento ● ANTES de iniciar a fase de instalação leia toda documentação necessária ● A documentação oficial e mais recente sobre a instalação do produto está na Wiki  A leitura através do Wiki não é boa para alguns  Imprimir pode não ser viável ● Documentação adicional de suporte ao deployment  IBM Redbook: Installing and Deploying IBM Connections http://www.lotus.com/ldd/lcwiki.nsf/dx/PDF_of_IBM_Redbooksc ol_Installing_and_Deploying_IBM_Connections
  • 6.
    © 2013 IBMCorporation Planejamento ● Opções de deployment  Small deployment ➔ Indicado apenas para POCs e demos ➔ Instalar todo o IBM Connections sobre um único node em um único cluster ➔ Flexibilidade limitada, uma vez que não permite escalar aplicações individualmente  Medium deployment ➔ Indicado para a maioria dos casos ➔ Instalar grupos de aplicações em clusters separados ➔ Maior flexibilidade, use esta opção para distrubuir as aplicações de acordo com a espectaviva de uso
  • 7.
    © 2013 IBMCorporation Planejamento ● Opções de deployment  Large deployment ➔ Instalar cada aplicativo do Connections em seu próprio cluster ➔ Fornece a melhor performance em termos de opções escalabilidade e disponibilidade, mas também é a que requer maior quantidade de recursos ● Escolha o tamanho de deployment adequado  Milhares de usuários não necessariamente significa a opção por um Large deployment ● Esteja preparado para o crescimento  A medida que cresce o número de usuários e comunidades, mais recursos são necessários
  • 8.
    © 2013 IBMCorporation Planejamento ● SEMPRE faça um planejamento pensando em um ambiente produtivo  Mesmo se for apenas um ambiente para piloto ou testes ● NUNCA coloque todos os componentes numa mesma máquina  A menos que seja uma imagem rodando no seu desktop ● SEMPRE considere o uso de 03 ambientes distintos  Teste  Homologação  Produção
  • 9.
    © 2013 IBMCorporation Planejamento ● No planejamento, as seguintes áreas devem estar bem documentadas  Identificar as necessidades da audiência  Objetivo inicial e a longo prazo  Mapeamento dos skills necessários e definição de membros e responsabilidades  Arquitetura de deployment ➔ Registro das decisões arquiteturais  Roteiros de instalação e configuração  Modelo Operacional
  • 10.
    © 2013 IBMCorporation Instalação ● Faça o download de todos pacotes que irá precisar de uma só vez ● Está é uma tarefa que irá consumir muito tempo  Dependendo da sua banda larga, planejar no minimo 24 horas para esta atividade ● Copiar os pacotes para a máquina onde o produto será instalado e só então descompactar ● Os caminhos NÃO devem incluir espaços  Isso vale para o origem e destino
  • 11.
    © 2013 IBMCorporation Instalação ● Siga a risca o que está documentado nos Requistos de Sistema ● Informações para todas versões do IBM Connections  Detailed system requirements for IBM Connections http://www.ibm.com/support/docview.wss?uid=swg27012786 ● APENAS configurações e versões recomendadas são suportadas ● NÃO assumir que a última versão de um compentente é melhor
  • 12.
    © 2013 IBMCorporation Instalação ● Tenha um usuário de administração exclusivo para o Connections  No Linux, apenas usuário com privilégio de root tem as permissões necessários para instalar o Connections, para outros usuários consulte o tópico Installing as a non-root user na Wiki  No Windows, evitar usuários com group policies aplicadas ● Durante a instalação TODOS softwares de segurança devem ser desativados  SELinux, AppArmor, Antivirus, Firewalls, Scripts de segurança, ...
  • 13.
    © 2013 IBMCorporation Instalação ● Requisitos minimos de instalação  Memória ➔ 4GB é muito pouco. Melhor partir de 8GB a 12GB de RAM ➔ Memory Swapping acaba com qualquer esforço de tunning  CPU ➔ Minimo de 2 cores apenas para small deployments ➔ Regra de Ouro: 1 core por JVM  Disco ➔ Usar network store ou virtual servers, pois são facéis de estender
  • 14.
    © 2013 IBMCorporation Instalação ● Recursos de rede  DNS ➔ TODOS os servidores que compõem o ambiente devem ser resolvidos pelo nome ➔ Para o protocolo de descoberta, evite round robin ● Network Storage (problemas de file locking) ➔ Não utilize NFS V3. Use NFS V4 / smb|cifs ➔ Não utilize DFS  Proxy / Proxy Reverso ➔ Teste o ambiente sem Proxy. Ative-os apenas quanto tudo estiver OK.
  • 15.
    © 2013 IBMCorporation Instalação ● LDAP  Preparar o LDAP ➔ Melhores dados, melhor Profile  É possível ter um diretório de autenticação diferente ● Planeje a ativação do SPNEGO  Considere manter o DefaultFileBasedRealm ➔ Se a politica de segurança permitir, ajuda a resolver rapidamente problemas com respositórios federados
  • 16.
    © 2013 IBMCorporation Instalação ● O Snapshot é seu melhor amigo  Tire um snapshot ao final de cada instalação e configuração bem sucedida  Faça isso para todos os servidores ● Se os servidores não forem máquinas virtuais  Faça um backup do profile do WAS para cada instalação e configuração bem sucedida  Opcionalmente, faça um backup do filesystem
  • 17.
    © 2013 IBMCorporation Tunning ● Principais causas para problemas de performance no IBM Connections  Ausência de testes de performance antes do Going-Live!  Focar os testes de performance apenas no IBM Connections  Testes de performance mal feitos  Análise do tipo: Se está lento, coloca mais memória ou aumenta o número de cores  “Apliquei todos os parametros definidos no documento de tunning da IBM”
  • 18.
    © 2013 IBMCorporation Tunning ● Performance Tunning Guide  IBM Connections 4.0 ➔ http://www- 10.lotus.com/ldd/lcwiki.nsf/dx/IBM_Connections_4.0_Performance_Tuning_ Guide  IBM Connections 4.5 ➔ http://www- 10.lotus.com/ldd/lcwiki.nsf/dx/IBM_Connections_4.5_Performance_Tuning_ Guide_Addendum  IBM Connections 5.0 ➔ http://www- 10.lotus.com/ldd/lcwiki.nsf/dx/IBM_Connection_V5_CR1_Tuning_guide ● Leia tudo atentamente e verifique todas dependências
  • 19.
    © 2013 IBMCorporation Tunning Exemplo de Pior Prática: Tempo para reiniciar o Connections é cerca de 22 minutos ● Componentes do cenário:  WebSphere (01 servidor) ➔ Large Deployment ➔ 16 GB RAM ➔ 4 Cores  DB2 (01 servidor) ➔ 12 instances ➔ 8 GB RAM ➔ 4 Cores
  • 20.
    © 2013 IBMCorporation Tunning ● Mais dados sobre o cenário:  Utilizando Large Deployment, temos cerca de 15 JVMs em um único servidor  Na reinicialização o Connections consome 100% de CPU durante 15 minutos  Java Heap size com os valores padrão (256 MB / 768 MB)  DataSource Connection Pool também com valores padrões (1 / 10)  12 instâncias de banco em único servidor
  • 21.
    © 2013 IBMCorporation Tunning ● Mudanças para resolver o problema:  04 Cores é insuficiente para 15 JVMs, necesário adicionar pelo menos mais 04 Cores  Aumentar o Java Heap size para: 1.5 GB / 2.5 GB  Aumentar também o DataSource Connection Pool: (10 /20)  Multiplas instâncias de banco de banco de dados só aumentam a performance se ouver recursos suficientes para isso, mas neste momento isso não foi alterado ● O tempo de para reinicializar o Connections caiu para 3 minutos
  • 22.
    © 2013 IBMCorporation Tunning ● Considere o impacto de Going-Live usando diferentes estratégias  Rollout ➔ Aplicativos / grupos de usuários são adicionados em ondas ➔ Reduz o risco de problemas de performance  Big Bang ➔ Todos os usuários tem acesso ao mesmo tempo ao Connections ➔ Risco maior do sistema apresentar problemas de performance
  • 23.
    © 2013 IBMCorporation24 Dúvidas?
  • 24.
    © 2013 IBMCorporation Obrigado!!! Rodrigo Reis rodrigoareis@br.ibm.com IT Specialist & Application Architect IBM Analytics – Social Business Unit