O software Keepalived implementa principalmente funções de alta disponibilidade por meio do protocolo VRRP. VRRP é a abreviação de Virtual Router Redundancy Protocol. VRRP foi projetado para resolver o problema do ponto único de falha das rotas estáticas, o que pode garantir que, quando nós individuais caem, toda a rede possa funcionar ininterruptamente. Portanto, o Keepalived tem a função de configurar e gerenciar o LVS, e também a função de verificar a saúde dos nós sob LVS e, por outro lado, pode realizar a alta disponibilidade dos serviços de rede do sistema.
Princípio de Failover de Alta Disponibilidade Keepalived
O failover mantido entre pares de serviços de alta disponibilidade é implementado por meio do VRRP (Virtual Router Redundancy Protocol).
Quando o serviço Keepalived está funcionando normalmente, o nó mestre enviará continuamente mensagens de batida cardíaca para o nó de espera (multicast) para avisar o nó de backup que ele ainda está ativo, e quando o nó mestre falha, ele não pode mais enviar mensagens de batimento, então o nó de espera não consegue mais detectar o batimento cardíaco do nó mestre, e então chama seu próprio programa de tomada para assumir os recursos IP e serviços do nó mestre. Quando o nó mestre principal é restaurado, o nó backup libera os recursos IP e serviços assumidos pelo nó mestre e os restaura para seu papel original de espera.
Pares de alta disponibilidade mantidos se comunicam entre si via VRRP
1) VRRP, o nome completo do Protocolo de Redundância Virtual Router, o nome chinês é Protocolo de Redundância de Rotas Virtuais, o VRRP surgiu para resolver o ponto único de falha das rotas estáticas. 2) VRRP é um mecanismo de protocolo de campanha que fornece tarefas de roteamento para um roteador VRRP. 3) VRRP usa multicast IP (Endereço Multicast Padrão (224.0.0.18)) permite a comunicação entre pares altamente disponíveis. 4) Quando o nó mestre envia pacotes e o nó de espera recebe pacotes, quando o nó de espera não pode receber os pacotes de dados enviados pelo nó mestre, o programa de tomada de controle é iniciado para assumir os recursos do nó mestre. Podem existir múltiplos nós de espera, que são selecionados por meio de competição prioritária, mas geralmente há um par na operação e manutenção do sistema Keepaled. 5) O VRRP utiliza um protocolo de criptografia para criptografar dados, mas os oficiais do Keepalived ainda recomendam o uso de texto simples para configurar o tipo de autenticação e a senha.
Como funciona o serviço Keepalived
1) Pares de alta disponibilidade mantidos se comunicam via VRRP, o VRRP é determinado pelo mecanismo de campanha, a prioridade do mestre é maior que a do standby, portanto, ao trabalhar, o master dará prioridade para obter todos os recursos, o nó de espera fica em estado de espera, quando o master trava, o nó de espera assume os recursos do mestre e então substitui o mestre para fornecer serviços ao mundo exterior.
2) entre pares de serviço Keepalidas,Apenas o servidor que é o mestre envia o tempo todoVRRPPacote de transmissãoQuando o mestre não está disponível, ou seja, quando o host não pode ouvir o pacote de transmissão enviado pelo mestre, o serviço relevante será iniciado para assumir os recursos e garantir a continuidade do negócio. A velocidade de tomada mais rápida pode ser inferior a 1 segundo.
Ambiente de teste
Sistema: CentOS 8
| Endereço IP | ilustrar | | 192.168.50.222 | Endereço VIP | | 192.168.50.227 | Nó mestre MASTER | | 192.168.50.131 | Nós de reserva BACKUP |
Vamos dar uma olhada nas renderizações finalizadas da seguinte forma:
Instale o serviço Nginx
Use yum diretamente emMasternodeeNós alternativosO servidor instala nginx com o seguinte comando:
Edite os arquivos de configuração nginx dos nós primário e de espera separadamente, caminho:/etc/nginx/nginx.confA configuração é a seguinte:
Iniciado via comando nginx, teste o acesso à porta 8055 via navegador, como mostrado na imagem a seguir:
Instalar o Keepalived Para instalar tanto no nó primário quanto no nó de espera, o comando é o seguinte:
Endereço do perfil:/etc/keepalived/keepalived.conf
Aqui você precisa configurar um script de verificação de saúde e criar um novochk_nginx.sho código é o seguinte:
Faça upload do script para o diretório /etc/keepalive. e conceder permissões de execução da seguinte forma:
192.168.50.227 configuração do nó primário keepalived.confComo segue:
192.168.50.133 Configuração alternativa do nó keepalived.confComo segue:
Configure boot e boot em ambos os servidores separadamente
Até agoraA configuração está completa (veja o topo do artigo para a renderização), pode ser testado via serviço nginx com o seguinte comando:
(Fim)
|