Defina e configure seus servidores principal e de backup para um ambiente de alta disponibilidade básico.
Instalando e Configurando Plug-ins de Servidor da Web e o IBM HTTP Server
Instalando e Configurando um Aplicativo Jazz em Servidores Primários e de Backup
Para
instalar e configurar duas instâncias de um aplicativo Jazz, como
IBM
Rational Team
Concert ou
IBM
Rational Quality
Manager no WebSphere Application Server, consulte
Configurando um WebSphere Application
Server.
Lembre-se: Instale um servidor por vez.
Cada servidor faz referência ao mesmo banco de dados em seu teamserver.properties.
Certifique-se de que o primeiro servidor esteja encerrado e desconectado do repositório antes de iniciar a segunda instalação.
Configurando Alta Disponibilidade para os Servidores Principal e de Backup
O aplicativo jazz.war normalmente instala com um único servidor de aplicativos como seu destino. Com a introdução do servidor da Web, o aplicativo jazz.war deve ser modificado para permitir o roteamento através do servidor da Web.
Para modificar o aplicativo:
- No Console do WebSphere, clique no link do aplicativo jazz.war em Aplicativos Corporativos.
- Selecione Gerenciar Módulos.
- Selecione a caixa de opção para o módulo aplicativo jazz.war.
- Na lista de clusters e servidores, escolha o servidor da Web e o servidor de aplicativos, depois clique em Aplicar.
- Clique em OK, depois em Salvar Alterações.
- Reinicie o aplicativo jazz.war.
Reconfigure o aplicativo Jazz no servidor de aplicativos principal para desativar a segurança para o aplicativo jazz.war:
- Modifique o web.xml no arquivo WAR que foi instalado no WebSphere Application Server.
Dica: Talvez seja necessário descompactar o arquivo WAR para um diretório temporário para obter o arquivo web.xml.
- Altere cada ocorrência de "CONFIDENTIAL" para "NONE".
- Certifique-se de que o WebSphere Application
Server esteja em execução, abra um navegador e acesse: https://localhost:9043/ibm/console/logon.jsp
- Acesse a página Aplicativos -> Aplicativos Corporativos.
- Selecione o aplicativo jazz_war e clique em Atualizar.
- Selecione Substituir ou incluir um único arquivo.
- No campo "Especificar o caminho que começa como o arquivo archive do aplicativo instalado para o arquivo a ser substituído ou incluído.", digite jazz.war\WEB-INF\web.xml.
- Clique em Navegar e selecione o arquivo web.xml modificado na etapa 1.
- Clique em Avançar e continue até que o aplicativo esteja salvo.
- Volte para a página Aplicativos->Aplicativos Corporativos e pare e inicie o aplicativo jazz_war.
Reconfigure ambos os
Rational
Jazz Team Servers principal e de backup para referenciar o mesmo local para o índice de texto completo. Para manter
o índice atualizado e disponível para os servidores principal e de backup, atualize com.ibm.team.fulltext.indexLocation em teamserver.properties
nos servidores principal e de backup para armazenar o índice em uma unidade compartilhada. Modifique a seguinte propriedade no arquivo teamserver.properties nos servidor principal e de backup:
Desativando Tarefas Assíncronas no Servidor de Backup
Para evitar qualquer contenção de dados possível entre os dois
Rational
Jazz Team Servers em execução, as tarefas assíncronas (ou de plano de fundo) devem ser desativadas no servidor de backup.
- Inclua a linha a seguir no arquivo teamserver.properties no servidor de Backup:
com.ibm.team.repository.scheduler.migration.mode.enabled=true
- Reinicie o aplicativo jazz.war no servidor de Backup.
Editando o Arquivo plugin_cfg.xml do Servidor da Web para Espera Inativa
Cada vez que um WebSphere Application Server é configurado para rotear pedidos através
de um servidor da Web para um servidor de aplicativos, o plugin.xml do servidor da Web é atualizado com as informações
de conexão para esse servidor de aplicativos. Neste ponto, você configurou parcialmente o arquivo plugin-cfg.xml. Substitua e, depois, edite a seguinte seção do plugin-cfg.xml no servidor da Web para concluir a configuração. Esse arquivo plugin-cfg.xml reside na pasta
plugin\config\webserver1 do servidor da Web (em que webserver1 é o nome que você designou ao servidor da Web na seção anterior
Instalando e Configurando Plug-ins de Servidor da Web e o IBM HTTP Server).
<ServerCluster CloneSeparatorChange="false" GetDWLMTable="false" IgnoreAffinityRequests="true" LoadBalance="Round Robin" Name="RTC_basicHA_Cluster" RetryInterval="60" PostBufferSize="64" PostSizeLimit="-1" RemoveSpecialHeaders="true">
<Server LoadBalanceWeight="1" ConnectTimeout="0" ExtendedHandshake="false" MaxConnections="-1" Name="PrimaryNode01_server1" ServerIOTimeout="0" WaitForContinue="false">
<Transport Hostname="primary.hostname.company.com" Port="9080" Protocol="http"/>
</Server>
<Server LoadBalanceWeight="0" ConnectTimeout="0" ExtendedHandshake="false" MaxConnections="-1" Name="BackupNode01_server1" ServerIOTimeout="0" WaitForContinue="false">
<Transport Hostname="backup.hostname.company.com" Port="9080" Protocol="http"/>
</Server>
</ServerCluster>
<UriGroup Name="default_host_RTC_basicHA_Cluster_URIs">
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/jazz/*"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/snoop/*"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/hello"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/hitcount"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="*.jsp"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="*.jsv"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="*.jsw"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/j_security_check"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/ibm_security_logout"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/servlet/*"/>
<Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/ivt/*"/>
</UriGroup>
<Route ServerCluster="RTC_basicHA_Cluster" UriGroup="default_host_RTC_basicHA_Cluster_URIs" VirtualHostGroup="default_host"/>
Verificando a Configuração do Servidor para Habilidade de Failover Manual
Para verificar a habilidade de failover manual do WebSphere Application Server, edite o arquivo plugin-cfg.xml no servidor da Web para que o PrimaryNode01 _server1 tenha um LoadBalanceWeight ="0" e o BackupNode01_server1 tenha um LoadBalanceWeight ="1". Salve o arquivo plugin-cfg.xml.
Importante: Como o armazenamento em cluster e balanceamento de carga "verdadeiros" não são ainda suportados, em nenhum momento os servidores principal e de backup terão número diferente de zero para LoadBalanceWeight.
- Com ambos os servidores principal e de backup on-line, execute o Snoop servlet de amostra do WebSphere para obter o nome do servidor que está manipulando o pedido.
- Invoque o Snoop servlet a partir de um navegador de HTML usando a URL: https://webserver/snoop.
- As informações do pedido exibem o host que está servindo o pedido como o host local - neste caso, o servidor com o LoadBalanceWeight
=1 é exibido.
- Tente trocar o LoadBalanceWeight entre o servidor principal e o de backup e observe qual servidor manipula o pedido do Snoop servlet.
Detectando Falha no Servidor Principal
Para alcançar alta disponibilidade, é necessário saber quando seu servidor principal está inativo. Isto é especificamente importante para esta solução de alta disponibilidade básica, o que não permite failover automático do servidor principal para o servidor de backup.
O processo de detecção de um servidor com falha é uma tarefa crucial e oportuna. Vários fatores podem indicar que um servidor falhou, como problemas de rede, problemas de configuração, sobrecarregamento de aplicativo ou erro do usuário. Independente de qual solução for escolhida para detectar falhas do servidor, você deve garantir que o alerta seja o mais instantâneo possível.