Alcançando Alta Disponibilidade com IBM Lotus iNotes

Saiba como obter alta disponibilidade para IBM® Lotus® iNotes® por meio do uso de um balanceador de carga de software ou de um hardware, como Application Delivery Controller (ADC), em conjunto com um armazenamento em cluster de IBM Lotus Domino®. Este artigo discute alguns dos desafios relacionados ao balanceamento de carga correto do Lotus iNotes para assegurar alta disponibilidade com o uso de um ADC.

Vinod Seraphin, Senior Technical Staff Member and Architect, IBM Corporation

Vinod Seraphin é Membro Sênior da Equipe Técnica e arquiteto principal para o Lotus iNotes, que "nasceu" dos esforços de criação de protótipo de Vinod para desenvolver um Personal Information Manager (PIM) atraente dentro de um navegador. Ele está com a IBM desde 1991. Antes de trabalhar com o Lotus Domino Web Access, Vinod foi o Arquiteto de Software para o Lotus Organizer®.



Jack Ciejek, Advisory Software Engineer, IBM

Jack Ciejek é engenheiro de software consultivo e trabalha como desenvolvedor no produto Lotus iNotes. Ele está na IBM desde 1988 e, antes de trabalhar nos produtos Lotus (incluindo Lotus SmartSuite para OS/2), trabalhou em vários sistemas operacionais de mainframe IBM.



Rahul Garg, Staff Software Engineer, IBM

Rahul Garg é engenheiro de software de pessoal, além de engenheiro de software na equipe do iNotes, com foco em configurações complexas e implementações do cliente. Ele está na IBM desde 2005.



Nirmala Venkatraman, Performance Architect, IBM

Nirmala Venkatraman é arquiteta de desempenho na equipe de desempenho do servidor Lotus Domino. É possível entrar em contato com ela pelo e-mail nvenkatr@us.ibm.com.



Craig Scarborough, Business Development Solutions Engineer, F5 Networks

Craig Scarborough é engenheiro de soluções de desenvolvimento de negócios para F5 Networks. Ele tem mais de 20 anos de experiência em redes, armazenamento e segurança. Craig é responsável por fazer avançar a parceria IBM/F5 ao identificar soluções inovadoras que utilizam tecnologia para atender às exigências dos clientes e do mercado.



Ron Carovano, Senior Business Development Manager, F5 Networks

Ron Carovano é gerente de desenvolvimento de negócios senior com a F5 Networks. Responsável pela aliança global com a IBM, Ron supervisiona os esforços de desenvolvimento de soluções realizados entre a F5 e a IBM. Ele é também responsável por alinhar os programas de negócios da F5 com as iniciativas de comercialização da IBM.



30/Mai/2014

Nota do editor: Você sabe muito sobre esse tópico? Deseja compartilhar seu conhecimento? Participe hoje do programa wiki do software IBM Lotus.

Wiki do Lotus iNotes

Introdução

Mail é um aplicativo corporativo crítico, e os usuários esperam disponibilidade de 24x7 de correio. Com o IBM Lotus Notes® e Lotus Domino, a alta disponibilidade é conseguida com o armazenamento em cluster do Lotus Domino e com réplicas de arquivo de correio. O cliente Lotus Notes contém código explícito para enfrentar cenários em que um servidor Lotus Domino com o qual se comunica não esteja mais disponível.

Após um leve atraso (visto que aguarda uma tentativa de conexão ou de comunicação se concretizar), o cliente Lotus Notes notifica o usuário de que o servidor não está mais disponível e pede ao usuário para confirmar se deve alternar para outro servidor de réplica conhecido.

Com o Lotus iNotes, entretanto, a alta disponibilidade requer a assistência de alguma infraestrutura adicional, como um Application Delivery Controller (ADC). Os ADCs oferecem muitos benefícios no datacenter, incluindo estes:

  • Melhorar a confiabilidade do aplicativo (por meio de monitoramento de aplicativo e balanceamento de carga)
  • Aprimorar a segurança (firewalls de aplicativos) e aceleração (otimizações de TCP e HTTP)
  • Transferência de servidores de algumas das tarefas de cálculo mais intenso; por exemplo, criptografia Secure Sockets Layer (SSL)

O Lotus Domino inclui uma tecnologia denominada Internet Cluster Manager, que pode redirecionar a URL inicial de um aplicativo para um dos diversos servidores de correio backend. No entanto, se o servidor de correio real ficar indisponível após o início de uma sessão, não haverá nenhum mecanismo para recuperar e alternar para outro servidor disponível que também tenha uma réplica do arquivo de correio.

Quando configurado corretamente, um balanceador de carga pode proporcionar aos usuários uma experiência de failover sem igual. Os usuários nunca percebem que o servidor original com o qual estavam interagindo não está mais disponível; em vez disso, o balanceador de carga detecta perfeitamente esse fato e envia o pedido a outro servidor apropriado.

Há balanceadores de carga baseados em software e hardware especializado (como um ADC) que fornecem esse recurso. As variedades de hardware são geralmente um pouco mais caras, mas fornecem desempenho superior, maior capacidade e mais economia de recursos de servidor backend.

Este artigo discute alguns dos desafios relacionados ao balanceamento de carga correto do Lotus iNotes e fornece exemplos específicos de ADC avançado de Local Traffic Manager (LTM) de BIG-IP da F5 Networks líder de mercado.

Nós também exploramos a criação de uma configuração LTM BIG-IP de finalidade geral que possa oferecer suporte à maioria das implementações de correio do Lotus iNotes e consideramos quais melhorias relacionadas ao servidor Lotus Domino e ao desempenho do usuário podem ser percebidas com o uso de LTM BIG-IP.


Configurações do Lotus Domino para alta disponibilidade

Os arquivos de correio do Lotus Domino em geral têm um subdiretório (por exemplo, mail) e um nome de arquivo (por exemplo, juser.nsf). Para balanceamento de carga, o caminho para qualquer arquivo de correio deve ser idêntico em cada um dos servidores em que uma réplica reside, e o caminho completo para o arquivo de correio deve ser exclusivo (sem ambiguidade) quando ele chegar ao balanceador de carga.

Vamos discutir alguns cenários de configuração que podem ser usados para alta disponibilidade.

Configuração 1: Cluster espelhado único

Esse primeiro cenário de configuração é o menos complexo. É um conjunto de servidores em cluster totalmente espelhado, e todos os arquivos de correio estão localizados dentro desse cluster. Dois ou três servidores hospedam um conjunto de arquivos de correio e uma estrutura de diretório idênticos, e a replicação de cluster é ativada nesses servidores (ver figura 1).

Figura 1. Dois servidores espelhados no Cluster A

Nesse cenário, no balanceador de carga, qualquer pedido relacionado ao Lotus iNotes pode ser passado a qualquer servidor do cluster.

Configuração 2: Vários clusters espelhados

O próximo nível de sofisticação é quando há vários clusters de correio Lotus Domino similares aos de Configuração 1, e o balanceador de carga precisa despachar um pedido recebido ao conjunto correto de servidores backend (aqueles que estão no mesmo cluster).

Há inúmeras abordagens possíveis para se realizar isso:

  • Na primeira, cada cluster usa um subdiretório nomeado exclusivamente em que os arquivos de correio são armazenados, significando que as URLs normais contêm um segmento que claramente identifica o cluster (ver figura 2). As regras no balanceador de carga são atualizadas para controlar esses nomes e associar os servidores backend corretos.

    Figura 2. Dois servidores em dois clusters diferentes com nomes de subdiretório exclusivos por cluster

    Essas listas codificadas permanentemente de nomes de subdiretório de cluster e servidores Lotus Domino backend devem ser mantidas atualizadas com quaisquer alterações efetuadas nos clusters de servidor.
  • Na segunda abordagem, o aplicativo de redirecionamento do Lotus iNotes é configurado para retornar a porção do nome de host do servidor de correio sede do DNS do servidor Lotus como um segmento adicional na URL gerada para o arquivo de correio (logo antes do caminho). O balanceador de carga usa esse segmento adicional para pesquisar os clusters Lotus Domino e os servidores backend associados.

    Um problema nessa abordagem é que o Lotus iNotes pode gerar URLs subsequentes em que o nome do segmento não está mais lá. Consequentemente, o identificador de cluster deve ser armazenado em um cookie, de forma que o balanceador de carga procure esse valor se o segmento não estiver presente.
  • No terceiro cenário, um agente assistente do balanceador de carga é adicionado ao servidor Lotus Domino que o balanceador de carga consulta para gerar dinamicamente a lista de servidores Lotus Domino corretos que contém uma réplica desse arquivo de correio (ver figura 3).

    Figura 3. Dois servidores em clusters diferentes

    Nesse cenário, não é necessário codificar permanentemente nomes de cluster específicos ou endereços IP do servidor Lotus Domino backend nas regras do balanceador de carga.

Configuração 3: Vários clusters não espelhados

O próximo nível de complexidade é o cenário em que há vários servidores em um cluster Lotus Domino, mas cada arquivo de correio não está localizado em cada servidor desse cluster. Em vez disso, os arquivos de correio do usuário são distribuídos de modo esparso em um subconjunto de servidores no cluster.

Esse cenário é provavelmente a configuração mais complexa de ser suportada corretamente com relação a um balanceador de carga, mas é uma configuração Lotus Domino implementada geralmente. Aqui, existem algumas abordagens possíveis para realizar essa configuração:

  • Cada combinação exclusiva de servidores em que um determinado arquivo de correio reside é refletida de alguma forma dentro do nome de diretório de subdiretório exclusivo onde o arquivo de correio reside (ver figura 4). Essa combinação significa que as URLs normais em vigor identificam o cluster e o subconjunto de servidores no cluster em que o arquivo de correio reside.

    O balanceador de carga usa essa informação para despachar pedidos ao subconjunto de servidores correto.

    Figura 4. Três servidores não espelhados no Cluster A
  • Além disso, um agente assistente do balanceador de carga é adicionado ao servidor Lotus Domino que o balanceador de carga pode consultar para gerar dinamicamente a lista de servidores Lotus Domino corretos que contém uma réplica desse arquivo de correio (ver figura 5).

    Figura 5. Três servidores no Cluster A não espelhados com o redirecionador

Dessa forma, como mostrado pela nossa discussão das opções anteriores, a solução mais versátil envolve o aumento do servidor Lotus Domino para comunicar as informações sobre quais servidores backend podem ser usados para criar pools dinâmicos para balanceamento de carga do pedido recebido atual sem usar nomes de caminho especiais para comunicar as informações de failover relevantes.

Agora, vamos explorar mais detalhadamente a criação de um serviço de finalidade geral para implementar essa solução, que também requer que o balanceador de carga possa efetuar as referidas consultas dinâmicas e usar os resultados.

O LTM BIG-IP da F5 Networks oferece uma linguagem de scripts sofisticada baseada em Tool Command Language (TCL) que pode ser usada para criar o que é chamado de iRule. Um iRule usa uma sintaxe de scripts de fácil aprendizado que permite ao BIG-IP LTM personalizar como intercepta, inspeciona, transforma e direciona o tráfego de aplicativo de entrada ou saída.

Usando essa metodologia, o ambiente de balanceamento de carga tem a inteligência para rotear o tráfego HTTP ao servidor Lotus Domino correto.


Criando um serviço de assistência de balanceador de carga

O Lotus Domino armazena informações sobre arquivos NSF exclusivos em um determinado cluster no diretório de banco de dados de cluster (cldbdir.nsf); entretanto, esse banco de dados é exclusivo apenas em um determinado cluster. O banco de dados de diretório de cluster em um cluster diferente no mesmo domínio contém informações bem diferentes.

Uma forma de determinar se o arquivo NSF exclusivo está em um determinado cluster é examinar o diretório do cluster no servidor em que o pedido é recebido inicialmente, para determinar se o caminho é encontrado. Se for esse o caso, tudo está certo. O conjunto correto de servidores pode ser retornado, e o servidor inicial do usuário pode ser colocado em frente da lista retornada, para que tenha preferência.

Entretanto, se o caminho não estiver no diretório de cluster no servidor, o balanceador de carga deverá consultar um servidor em um cluster diferente. Para ajudá-lo a enviar um pedido ao cluster correto, as informações são consultadas no diretório names.nsf do Lotus Domino para localizar o conjunto de servidores que estão no cluster em que o arquivo de correio do usuário atual reside.

Para fazer essa consulta, o serviço consulta o servidor de correio inicial em busca do usuário autenticado atual e depois consulta o ClusterName de que esse servidor faz parte. Esse cluster pode ser consultado na visualização ($Clusters) para obter os servidores que fazem parte desse cluster.

Criamos o serviço de assistência Notes Formula Language e colocamos o código de chave em um formulário denominado ServersLookup no modelo do redirecionador Lotus iNotes. Quando solicitado pelo balanceador de carga, o formulário ServersLookup retorna um dos dois cabeçalhos de resposta HTTP no formato X-Domino-xxxxx, cada um contendo uma lista de servidores separada por vírgulas.

X-Domino-ReplicaServers é retornado quando o serviço localiza o caminho relevante em seu próprio cluster, ao passo que X-Domino-ClusterServers é retornado somente quando os servidores de correio fazem parte de um cluster diferente.

O formulário ServersLookup é fornecido com esse artigo (ver Apêndice). As explorações de desempenho que seguem não usaram esse agente de assistência, explorando somente Configuração 1.


Analisando o desempenho

A carga de trabalho DWA85 foi executada em relação a dois servidores de correio Lotus Domino em cluster, com replicação entre os servidores. Executamos a ação com um total de 4000 usuários simultâneos com 2000 usuários ativos em cada servidor, com o sistema operacional Microsoft® Windows® de 64 bits e a versão de 32 bits do Lotus Domino 8.5.1.

Todos os testes foram configurados com 4000 usuários definidos em cada diretório do Lotus Domino nos servidores. No começo do teste, cada usuário tinha um arquivo de correio com aproximadamente 256 MB de documentos descompactados, com 3000 mensagens na pasta Inbox.

Esses testes têm o registro de transações Lotus Domino ativado com a configuração Favor Runtime, e Mail Journaling está configurado para gravar todas as mensagens localmente. As análises de Domino Domain Monitoring (DDM) estão ativadas para o sistema de mensagens e para o sistema operacional do servidor. Além disso, todos os usuários possuem regras de correio que bloqueiam o correio de dez usuários externos para fins de teste.

Com o Lotus Domino 8.5.1, ativamos a compactação de documento nos bancos de dados de correio, o que reduziu o seu tamanho de cerca de 250 MB para cerca de 170 MB. Além disso, ativamos a propriedade do banco de dados Domino Attachment and Object Store (DAOS) em alguns dos testes após os bancos de dados de correio serem criados, e também ativamos os DAOS nas caixas de correio e no banco de dados do journal.

No primeiro teste, executamos os 4000 usuários simulados do NotesBench DWA85 para os dois servidores de correio Lotus Domino na porta SSL, sem o proxy BIG-IP LTM entre os clientes e os servidores. Cada servidor tinha 2000 usuários de DWA ativos nesse teste.

No segundo teste, executamos os 4000 usuários simulados do NotesBench DWA85, passando pelo proxy BIG-IP LTM, e acessamos seus servidores de correio. Para esse teste, desativamos o cache de respostas e a compactação GZIP nos servidores de correio Lotus Domino, usando essas configurações de Notes.ini:

Notes_wa_GZIP_Disable=1
HTTPDisableUrlCache=1

A porta SSL foi também desativada para o servidor HTTP no documento Server do diretório Lotus Domino. O servidor proxy do BIG-IP LTM cuidou do cache, da compactação GZIP e da criptografia SSL durante esses testes.

As Tabelas 1-3 resumem todas as especificações de hardware.

Tabela 1. Configuração de hardware para Servidor 1

HardwareEspecificações
ModeloPlataforma Intel de 64 bits
Processadores para teste / velocidadeIntel® Xeon MP configurado como dois processadores quad core/3.67 GHz
Memória8 GB
Unidades físicas ativas42
Volumes lógicos ativos3
Sistema operacionalMicrosoft Windows 2003 X64
Versões do Lotus DominoLotus Domino 8.5.1, 32 bits
Configurações de Notes.ini usadas quando BIG-IP LTM transfere SSL/gzipiNotes_wa_GZIP_Disable=1
HTTPDisableUrlCache=1

Tabela 2. Configuração de hardware para Servidor 2

HardwareEspecificações
ModeloPlataforma Intel de 64 bits
Processadores para teste / velocidadeIntel Xeon MP configurado como dois processadores quad core/3,06 GHz
Memória12 GB
Unidades físicas ativas42
Volumes lógicos ativos3
Sistema operacionalMicrosoft Windows 2003 X64
Versões do Lotus DominoLotus Domino 8.5.1, 32 bits
Configurações de Notes.ini usadas quando BIG-IP LTM transfere SSL/gzipiNotes_wa_GZIP_Disable=1
HTTPDisableUrlCache=1

Tabela 3. Configuração de hardware para Servidor 3

HardwareEspecificações
Modelo6900
2x dual core
Memória8 GB
Unidades flash ativas8 GB
Unidade de Disco rígido ativo2 x 320 GB
Sistema operacional10.1

A Figura 6 exibe a configuração de linha de base.

Figura 6. Configuração de linha de base

Configuração de teste de desempenho

Usamos dois IBM 3850s com dois processadores Xeon de 3.6 GHz, com 8 GB de memória física, cada um com 42 discos de fibra DS4300 e um sistema operacional Microsoft Windows 2003 Server Enterprise Edition, 64 bits (ver figura 7). O sistema de driver de carga NotesBench era um servidor Linux® com capacidade de manipular até 4000 usuários simulados do DWA85.

Figura 7. Configuração de teste de desempenho com BIG-IP LTM 6900

Configurações de desempenho

Eis as configurações para o BIG-IP LTM:

  • SNAT: Definido como Automap
  • Nagle: Disabled
  • SSL: Enabled
  • Send buffer: 262144
  • Recv window: 262144
  • HTTP Profile:
    • Defaults from http-wan-optimized-compression-caching
    • Compress: Enabled
    • Compress GZIP level: 5
    • RAM cache size: 200 MB

As configurações do Lotus Notes são:

  • SSL: Disabled
  • HTTP Caching: Disabled
  • GZIP: Disabled

Resultados de desempenho

A Tabela 4 mostra os valores-chave medidos para as duas configurações.

Tabela 4. Resultados principais

Teste Linha de baseBIP-IP LTMPorcentagem de melhoria
Transações/minuto60286044-0.27%
Tempo de resposta em segundos0.3380.08375.44%
Processador ocupado 29.420.928.91%
E/S disco Ops/segundo525530-0.95%
Kbytes disco/segundo440643082.22%

Os valores que mostraram qualquer diferença significativa foram os tempos de resposta do pedido individuais e o nível de processador ocupado nos servidores Lotus Domino. Com o BIGIP ADC no lugar, os tempos médios de resposta melhoraram em 75% (ver figura 8).

Em outras palavras, os tempos de resposta com o dispositivo foram quatro vezes menores do que diretamente com o servidor Lotus Domino. Um motivo dessa melhoria é que o ADC mantém conexões abertas persistentes para o servidor Lotus Domino e pode usar com mais eficiência esses canais para pedidos subsequentes.

Além disso, o nível de ocupado do processador nos servidores Lotus Domino foi 28% menor do que quando um ADC não era usado; os níveis de ocupado menores do processador permitem que o servidor do Lotus Domino comporte um número maior de usuários simultâneos.

Figura 8. Porcentagem de melhoria do desempenho

NOTE: Tentamos também medir os tempos de resposta do cliente enquanto simulamos uma conexão de baixa velocidade para alguns indicadores principais com o cliente de correio. Quando a largura de banda era o fator de limitação principal, não medimos nenhuma melhoria significativa nas operações do usuário principal que sincronizamos.


Conclusão

Alcançar uma alta disponibilidade para o Lotus iNotes requer o uso de um balanceador de carga de software ou um ADC de hardware em conjunto com o cluster do Lotus Domino, as topologias com configurações espelhadas e clusters esparsos.

É relativamente simples fornecer suporte a clusters totalmente espelhados, mas é mais complexo usar corretamente os clusters esparsos. Apresentamos também alguma lógica nova no lado de servidor para auxílio com a topologia de cluster esparso.

Esses clusters esparsos fazem um trabalho melhor de espalhar uniformemente uma carga para os servidores restantes em um cluster, quando um dos servidores em um cluster fica inativo, de modo que não precisamos ter um arquivo de correio de réplica em cada servidor em um cluster para cada usuário no cluster.

As execuções de desempenho também revelaram que há economias de processador significativas nos servidores Lotus Domino quando um ADC é implementado. Além do mais, os testes confirmaram melhorias significativas no tempo de resposta para vários pedidos, o que pode melhorar os tempos de resposta do usuário quando eles se conectam usando largura de banda razoável.

Para organizações que procuram adotar soluções mais voltadas para a Web, um investimento em balanceadores de carga de software ou ADC de hardware pode melhorar bastante os tempos de resposta do usuário e reduzir a carga do processador nos servidores de correio Lotus Domino front-end.


Apêndice

O formulário ServersLookup tem um campo "Computed for display" denominado $$HTMLHead com um tipo de texto. Esse campo contém as fórmulas mostradas aqui. Instruções de depuração foram adicionadas, de forma que, se o formulário for aberto manualmente em um navegador, será possível ver os resultados nas fórmulas.

Para abrir o formulário manualmente, emita o seguinte pedido:

http://mail.acme.ibm.com/iwaredir.nsf/ServersLookup?OpenForm&nsfpath=mail\jsmith.nsf

tmpDebug := "";
tmpNSFPath := @ReplaceSubstring(@URLDecode
( "Domino"; @UrlQueryString("nsfpath") );"/";"\\");
tmpServers := @DbLookup( "":"" ; "":"cldbdir.nsf" ; "($Pathname)" ; 
tmpNSFPath; "CanonicalServername");
tmpServers:=@If(@IsError(tmpServers);"";tmpServers);
REM {Lookup home mail server };
tmpHomeServer:=@Name([Canonicalize];@NameLookup( [NoUpdate];
@UserName; "MailServer" ));
REM {Is Home Mail server in list of servers, then move this up to 
the front of the list};
tmpServers := @If(@IsMember(tmpHomeServer;tmpServers); 
tmpHomeServer : @Transform(tmpServers;"x";@If(x=tmpHomeServer;@Nothing;x))
;tmpServers);
tmpDebug := tmpDebug + "ReplicaServers:" + @Implode(tmpServers;",");
tmpDNSNames := "";
tmpClusterName := "";
tmpClusterServers := "";
REM {If no servers found, then db is in a different cluster, return list of cluster 
servers, with home server in front of list};
tmpServers := @If(tmpServers="" | @Elements(tmpServers)=0;
  @Do(
    tmpDebug := tmpDebug + "Looking for cluster servers;";
    tmpClusterName := @Subset(@DbLookup("":""; "":"names.nsf"; "($ServersLookup)"; 
    tmpHomeServer; "ClusterName"); 1);
    tmpClusterServers := @DbLookup( "":""; "":"names.nsf"; "($Clusters)"; 
    tmpClusterName; "$0");
  tmpClusterServers := @Transform(tmpClusterServers;"x";
@If(x=tmpHomeServer;@Nothing;@Name([Canonicalize];x)));
    tmpClusterServers := @If(@IsMember(tmpHomeServer;tmpClusterServers); 
    tmpHomeServer : @Transform(tmpClusterServers;"x";
@If(x=tmpHomeServer;@Nothing;x));tmpClusterServers);
    tmpClusterServers);
  tmpServers);
tmpLimit:=@Elements(tmpServers)+1;
@For(n:=1;
n<tmpLimit;
n:=n+1;
tmpHTTPHostNameALT:=@Subset(@DbLookup( "":"" ; "":"names.nsf" ; 
"($ServersLookup)" ; tmpServers[n] ; "HTTP_Hostname");1);
tmpServerFQDN:=@Subset(@DbLookup( "":"" ; "":"names.nsf" ; "($ServersLookup)" ; 
tmpServers[n] ; "SMTPFullHostDomain");1);
tmpString:=tmpString+@Text(n)+tmpHTTPHostNameAlt+tmpServerFQDN;
tmpDNSNames := @If(@Length(tmpDNSNames)>0;tmpDNSNames+",";"") + 
@LowerCase(@If (tmpHTTPHostNameALT!="";tmpHTTPHostNameALT;tmpServerFQDN))
);
@If(tmpClusterName="";@SetHTTPHeader("X-Domino-ReplicaServers";tmpDNSNames);
@SetHTTPHeader("X-Domino-ClusterServers";tmpDNSNames));
@SetHTTPHeader("Cache-control";"no-store");
@If(tmpDebug="";"";"<script>"+tmpDebug+"</script>")

Agradecimentos

Os autores desejam agradecer as seguintes pessoas que ajudaram com as explorações de alta disponibilidade descritas neste artigo: John Fortier (IBM), James Powers (IBM), Mark Oslowski (IBM), Matt Cauthorn (F5 Networks) e John Alam (F5 Networks).

Recursos

Comentários

developerWorks: Conecte-se

Los campos obligatorios están marcados con un asterisco (*).


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

 


A primeira vez que você entrar no developerWorks, um perfil é criado para você. Informações no seu perfil (seu nome, país / região, e nome da empresa) é apresentado ao público e vai acompanhar qualquer conteúdo que você postar, a menos que você opte por esconder o nome da empresa. Você pode atualizar sua conta IBM a qualquer momento.

Todas as informações enviadas são seguras.

Elija su nombre para mostrar



Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Los campos obligatorios están marcados con un asterisco (*).

(Escolha um nome de exibição de 3 - 31 caracteres.)

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

 


Todas as informações enviadas são seguras.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Lotus
ArticleID=491213
ArticleTitle=Alcançando Alta Disponibilidade com IBM Lotus iNotes
publish-date=05302014