É recomendável desativar a acessibilidade em um servidor durante a manutenção, como quanto para uma reinicialização ou upgrade do servidor. Quando a acessibilidade está desativada, nenhum tráfego é direcionado para o servidor. Por exemplo, quando a acessibilidade estiver desativada em um processador de mensagens, os roteadores não direcionar qualquer tráfego para esse processador de mensagens.
Por exemplo, para atualizar um processador de mensagens, você pode usar o seguinte procedimento:
- Desativar acessibilidade no processador de mensagens.
- Faça o upgrade do processador de mensagens.
- Ativar acessibilidade no processador de mensagens.
Como desativar/ativar a acessibilidade um processador de mensagens
Para desativar a acessibilidade no processador de mensagens, basta parar o Processador de mensagens:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
O Processador de mensagens primeiro processa todas as mensagens pendentes antes de desligar. Qualquer novo as solicitações são roteadas para outros processadores de mensagens disponíveis.
Para reiniciar o processador de mensagens, use os seguintes comandos:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor start
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor wait_for_ready
O comando wait_for_ready
retorna a seguinte mensagem quando a mensagem
O processador está pronto para processar as mensagens:
Checking if message-processor is up: message-processor is up.
Desativar/ativar a acessibilidade em um Roteador
Em um ambiente de produção, você normalmente tem um balanceador de carga na frente dos roteadores de borda. Os balanceadores de carga monitoram a porta 15999 nos roteadores para garantir que a rota esteja disponível.
Configure o balanceador de carga para executar uma verificação de integridade HTTP ou TCP no roteador usando o seguinte URL:
http://router_IP:15999/v1/servers/self/reachable
Esse URL retornará um código de resposta HTTP 200 se o roteador estiver acessível.
Para tornar um roteador inacessível, você pode bloquear a porta 15999 dele. Se o balanceador de carga estiver não consegue acessar o roteador na porta 15999, ele não encaminha mais solicitações ao roteador. Para exemplo, você pode bloquear a porta usando o seguinte comando iptables no nó do roteador:
sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
Para disponibilizar o roteador mais tarde, limpe o iptables:
sudo iptables -F
Você pode estar usando iptables para gerenciar outras portas no nó, então precisa fazer isso para consideração ao limpar ou usar o iptables para bloquear a porta 15999. Se você estiver usando iptables para outras regras, é possível usar a opção -D para reverter a mudança específica:
sudo iptables -D INPUT -i eth0 -p tcp --dport 15999 -j REJECT
Executar verificações de integridade do roteador
É possível executar os seguintes tipos de verificações de integridade nos roteadores:
- Atividade:um sinal para o subsistema de monitoramento de que ele pode reiniciar um
componente. Exemplo:
To check a router's liveness: http://router_IP:8081/v1/servers/self/up To check a load balancer's liveness: http://router_IP:15999/v1/servers/self/reachable
- Prontidão:determina se um roteador pode processar solicitações de clientes para um ambiente específico.
Exemplo:
To check both a router and MP pool's availability: http://router_IP:15999/{org}__{env}
Para saber o status de um roteador, faça uma solicitação para a porta 8081 no roteador:
curl -v http://router_IP:8081/v1/servers/self/up
Se o roteador estiver ativo, a solicitação retornará "true" na resposta e HTTP 200. Observe que este verifica apenas se o roteador está em execução. Controle da acessibilidade do roteador a partir de um balanceador de carga, é determinado pela porta 15999.
Para saber o status de um processador de mensagens:
curl http://Message_Processor_IP:8082/v1/servers/self/up