Pergunta/problema
Para satisfazer os requisitos de failover e/ou desempenho, é recomendável configurar um ambiente em cluster que consista em duas ou mais instâncias de cluster CRX individuais. Este artigo aborda como configurar manualmente um cluster de duas instâncias CRX.
Resposta/resolução
Os nós de cluster se comunicam entre si em diferentes camadas: via TCP/IP e sistema de arquivos por meio de uma pasta compartilhada. Este último precisar estar acessível para leitura/gravação em todas as instâncias que participam de um cluster. Apenas a instância principal gravará nessa pasta. Se a instância principal morrer ou for interrompida, outra instância se tornará automaticamente o novo mestre.
Existem várias maneiras de instalar um cluster. Uma delas é alterar o arquivo repository-template.xml e instalar cada instância normalmente, outra é criar uma instância "modelo" e copiá-la para cada nó de cluster adicional.
Instalação usando um repository-template.xml personalizado
Apenas CRX 2.x.
- Antes de instalar a primeira instância, extraia o arquivo crx-explorer_crx.war.
- Edite o arquivo repository-template.xml: configure o caminho compartilhado.
- Reempacote o arquivo crx-explorer_crx.war.
Para cada instância, instale esse arquivo crx-explorer_crx.war personalizado. Todos os nós do cluster apontarão para o mesmo caminho compartilhado.
Para incluir o diretório compartilhado no Online Backup, crie um link simbólico para o caminho compartilhado em cada nó do cluster. Isso pode ser feito enquanto o CRX está em execução. O link simbólico é usado apenas durante o backup online e não durante a operação normal. Não é preciso alterar a configuração para isso. Para criar um link simbólico:
- Navegue para
crx-quickstart/repository
- Crie um link simbólico chamado
compartilhado
apontando para a pasta compartilhada:no -s <path_to_network_share> compartilhado
Isso é necessário apenas nos nós do cluster em que você deseja usar a ferramenta Online Backup. O nome recomendado do link simbólico é compartilhado
. No entanto, é possível usar um nome diferente. O link simbólico precisa estar dentro da pasta crx-quickstart para a ferramenta Online Backup.
Instalação usando a instância modelo
Instalar a primeira instância
Comece com a instalação da primeira instância. Como é necessário uma pasta compartilhada (por exemplo, NFS ou CIFS), é recomendável usar links simbólicos no sistema de arquivos para disponibilizar esse compartilhamento de rede de forma transparente.
Para definir o compartilhamento de rede antes de instalar, faça o seguinte:
- Descompacte o arquivo *.jar do início rápido do CRX para gerar a estrutura de pastas inicial:
java -jar *.jar -unpack
- Navegue para
crx-quickstart/repository
- Crie um link simbólico chamado
compartilhado
apontando para o compartilhamento de rede onde a pasta compartilhada deve ser armazenada:no -s <path_to_network_share> compartilhado
- Inicie o CRX/CQ:
java -Xmx256m -jar *.jar
Durante a instalação, o CRX usará o compartilhamento de rede de forma transparente pelo link simbólico compartilhado
para instalar seus arquivos e pastas compartilhados. Quando a instalação estiver concluída, verifique se o compartilhamento de rede foi realmente usado e se o CRX está sendo executado corretamente. Em seguida, pare a instância e prossiga para a próxima etapa.
Instalar o nó de cluster adicional
- Copie o mesmo arquivo jar do início rápido do CRX usado acima, incluindo um arquivo
license.properties
, para uma segunda máquina, por exemplo/opt/day/crx
- Copie toda a pasta
crx-quickstart
da primeira instância para a segunda máquina, abaixo de/opt/day/crx
- Na segunda máquina, navegue para
/opt/day/crx/crx-quickstart/repository
- Exclua o arquivo
cluster_node.id
que será recriado automaticamente na inicialização (a ID do cluster deve ser exclusiva) - Certifique-se de que o link simbólico
compartilhado
aponta para o mesmo compartilhamento de rede que na primeira instância - Inicie as duas instâncias, uma após a outra
Neste ponto, um cluster CRX de dois nós está em execução. O conteúdo criado/modificado em qualquer uma das duas instâncias fica visível na outra.
Versões afetadas
CRX 1.4.1, 1.4.2, 2.0