Configurando Disponibilidade Alta (HA) para Locais vSocket do GCP Usando Terraform.

Prev Next

Este artigo descreve como implantar uma configuração de Alta Disponibilidade (HA) para um local vSocket do GCP.

Visão geral

Você pode configurar Alta Disponibilidade (HA) para Cato vSockets na Plataforma Google Cloud (GCP) implantando dois vSockets em zonas separadas e colocando um Balanceador de Carga Google Cloud em frente às suas interfaces LAN. O Balanceador de Carga fornece um único endereço IP estático que os recursos internos utilizam para conectar-se aos vSockets. Ele monitora continuamente a saúde de cada vSocket e encaminha o tráfego apenas para o vSocket ativo (mestre). Isso pode ser tanto o Socket primário ou, em caso de falha, o secundário.

Além disso, os vSockets utilizam o Virtual Router Redundancy Protocol (VRRP) para trocar informações de estado entre eles. Quando o Socket secundário está em modo de espera, ele se relata ao Balanceador de Carga como não saudável para que o tráfego seja encaminhado apenas para o vSocket ativo. Juntos, as verificações de saúde do Balanceador de Carga e o VRRP fornecem falha automática com mínima interrupção. O tempo típico de falha é aproximadamente 3–5 segundos.

Nota:

A versão mínima suportada do vSocket para HA no GCP é 24.0.20395.

As configurações de vSocket HA no GCP dependem exclusivamente do Balanceador de Carga para direcionar o tráfego para o vSocket ativo.

Fluxo de Trabalho de Falha do vSocket GCP

Este é o fluxo de trabalho quando o vSocket ativo principal falha para o vSocket de espera secundário em um site do GCP.

  1. Em operação normal, o vSocket primário tem o papel ativo, e o vSocket secundário tem o papel de espera.

    1. O balanceador de carga verifica os Sockets para seu status de saúde. O primário reporta que está saudável, o secundário reporta que está doente.

    2. Os Sockets primário e secundário comunicam-se por meio da LAN usando o protocolo VRRP.

    3. O IP do balanceador de carga direciona o tráfego para o IP do vSocket primário.

    4. Os prefixos da tabela de rota LAN usam o IP do balanceador de carga como o próximo salto.

  2. O vSocket primário (ativo) é desligado.

    1. O vSocket secundário (em espera) para de receber pacotes de keepalive do vSocket primário.

    2. O vSocket secundário assume o papel ativo (mestre) e começa a reportar ao balanceador de carga como saudável.

    3. O balanceador de carga para de receber respostas do vSocket primário e agora direciona o tráfego apenas para o vSocket secundário.

  3. O vSocket secundário agora é o vSocket ativo e passa o tráfego para o site em ambas as direções.

  4. Quando o vSocket primário se recupera, ele retoma o papel ativo, e o vSocket secundário retorna ao status de espera. O balanceador de carga agora direciona o tráfego de volta para o vSocket primário.

Pré-requisitos para Implantação do Terraform

  • Um projeto GCP com permissões para criar os seguintes recursos:

    • VPCs e sub-redes

    • Instâncias de computação

    • Regras de firewall

    • Balanceador de carga

    • Verificações de saúde

    • IPs estáticos

    • Contas de serviço

  • Terraform está instalado e autenticado no GCP

  • Credenciais ou tokens de conta Cato necessários pelo módulo Terraform

  • Duas zonas de disponibilidade na região-alvo (por exemplo, us-central1-a e us-central1-b)

  • (Opcional) Nome DNS reservado apontando para o endereço IP estático do Balanceador de Carga

  • Versão mínima do vSocket: 24.0.20395

Arquitetura de Referência

  • Cada vSocket inclui três interfaces: MGMT, WAN e LAN. As interfaces LAN participam do VRRP para sincronização de estado.

  • O balanceador de carga opera no lado LAN para fornecer um endereço IP consistente para clientes internos.

  • As verificações de saúde sondam a interface LAN de cada vSocket. Apenas instâncias que relatam ao balanceador de carga como saudáveis recebem tráfego.

  • O VRRP garante a sincronização do estado entre os dois vSockets.

GCP_HA_Diagram.png

Usando Terraform para Implantar HA para um Site vSocket do GCP

Todos os recursos necessários (VPCs, vSockets, Balanceador de Carga e verificações de saúde) devem ser definidos em um único stack do Terraform.

Os módulos oficiais do Terraform vSocket da Cato, disponíveis no Registro Terraform, incluem documentação detalhada e exemplos para vSockets em uma configuração de Alta Disponibilidade. Para mais informações sobre o módulo HA do GCP, veja aqui.

Para estender a configuração para HA no GCP:

  1. Implante dois vSockets em diferentes zonas usando a mesma abordagem.

  2. Adicione um recurso Balanceador de Carga no lado LAN para frentear ambos os vSockets.

  3. Permita comunicação VRRP entre os dois vSockets para sincronização de estado

Nota:

Consulte a documentação oficial do módulo Terraform vSocket da Cato para detalhes sobre as entradas, saídas e opções de configuração avançadas do módulo

Gerenciamento de Alta Disponibilidade do GCP

Esta seção explica como gerenciar HA para o site GCP:

  • Mostra o status HA para cada vSocket

  • Altere o IP do balanceador de carga para o site.

  • Altere os endereços IP de gerenciamento para os vSockets.

  • Desative o HA para o site e remova o vSocket secundário.

Mostrando as Informações e o Status da Alta Disponibilidade

A página Rede > Locais > Socket para o site mostra o status HA para os vSockets primário e secundário.

Item

Descrição

Status HA

O status de Alta Disponibilidade para o site (Pronto ou Não Pronto) só mostra Pronto quando cada indicador de status de HA está OK

Conectado (indicador de status)

O status allow.svg indica que ambos os vSockets têm conectividade WAN com o Cato Cloud.

Keepalive (indicador de status)

O status allow.svg indica que um vSocket é o mestre e um é o de espera (Se ambos os vSockets estiverem no status mestre, então há um problema de cérebro dividido de HA)

Mesma Versão (indicador de status)

O status allow.svg indica que ambos os vSockets estão executando a mesma versão do Socket.

Alterando as Configurações de IP para o Site

Se você alterar as configurações de endereço IP para os vSockets no GCP, será necessário atualizar as mesmas configurações no Aplicativo de Gerenciamento Cato. Estas são as configurações que você pode configurar:

  • Sub-rede de Faixa Nativa - Use a seção Redes para o site

  • IP do Balanceador de Carga - Use a seção Redes ou Alta Disponibilidade para o site (o valor novo é atualizado automaticamente na outra seção)

  • IP de Gerenciamento - Use a seção Alta Disponibilidade para o site

Alterando a Sub-rede de Faixa Nativa

Use a seção Redes para alterar a sub-rede de Faixa Nativa.

Para alterar a sub-rede de Faixa Nativa para o site:

  1. No menu de navegação, clique em Rede > Locais e selecione o local.

  2. No menu de navegação, selecione Configuração do Site > Redes.

  3. Edite o intervalo Nativo, insira um novo valor para a Sub-rede.

  4. Clique em Aplicar. O painel Editar faixa de IP se fecha.

  5. Clique em Salvar.

Alterando o IP do Balanceador de Carga e o IP de Gerenciamento

Use a seção Alta Disponibilidade para alterar o IP do Balanceador de Carga e o IP de Gerenciamento. Você também pode alterar o IP do balanceador de carga na seção Redes.

Para alterar o balanceador de carga ou o IP de Gerenciamento para um site:

  1. No menu de navegação, clique em Rede > Locais e selecione o local.

  2. No menu de navegação, clique em Configurações do Site > Socket.

  3. Expanda a seção Configurações de Alta Disponibilidade.

  4. Insira o novo IP de Gerenciamento Primário.

  5. Insira o novo IP de Gerenciamento Secundário.

  6. Insira o novo IP do Balanceador de Carga LAN.

  7. Clique em Salvar.

Desativando Alta Disponibilidade para o Site GCP

Você pode remover o vSocket secundário de um site GCP e desativar o HA para esse site. Após remover o vSocket secundário do Aplicativo de Gerenciamento Cato, o vSocket implantado não poderá mais conectar-se ao Cato Cloud. As configurações para o site são restauradas para a configuração de um único vSocket:

  • A seção Alta Disponibilidade está desativada e não aparece mais na página

  • Na seção Redes, o IP local substitui o IP do Balanceador de Carga.

Nota:

Nota: Você não pode desfazer a ação Desassociar Socket. O número de série para o vSocket secundário não é mais válido.

Se você quiser adicionar o vSocket secundário novamente, deve instalar um novo vSocket na VM com o novo número de série.

Para desativar HA para o site GCP:

  1. No menu de navegação, clique em Rede > Locais e selecione o local.

  2. No menu de navegação, clique em Configurações do Site > Socket.

  3. Do menu de Ações do vSocket Secundário, clique em Desassociar.

  4. Em a janela de Aviso, clique em OK. O HA está desativado para o site, e o vSocket secundário é removido dele.

Limitações de Serviços

  • Em implantações HA GCP, a recuperação para o vSocket principal pode demorar mais do que a transferência para o vSocket secundário. Durante a recuperação, o tráfego pode ser interrompido por até 8 segundos.

  • Durante uma condição de 'split-brain' em uma implantação HA GCP, o tráfego de ping contínuo existente pode continuar através de ambos os vSockets principal e secundário. Isso pode fazer com que as verificações de saúde do balanceador de carga GCP mostrem ambos os vSockets como saudáveis e tornem a validação de transferência menos clara, embora o novo tráfego iniciado após a condição de 'split-brain' seja roteado apenas através do vSocket secundário.