Introduction
Este documento descreve o processo de eleição do diretor em um cenário de balanceamento de carga de VPN com o Cisco 5500-X Series Adaptive Security Appliance (ASA).
Prerequisites
Requirements
Não existem requisitos específicos para este documento.
Componentes Utilizados
As informações neste documento são baseadas no Cisco ASA 5500-X que executa o software versão 9.2.
Note: Este documento também se aplica a todas as versões de software, pois o recurso foi introduzido pela primeira vez na versão 7.0(1).
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Informações de Apoio
O balanceamento de carga da VPN é um mecanismo usado para distribuir de forma equitativa o tráfego de rede entre os dispositivos em um cluster virtual. O balanceamento de carga baseia-se numa simples distribuição; não leva em conta a utilização do throughput ou outros fatores. Um cluster de balanceamento de carga consiste em dois ou mais dispositivos, um direcionador e um ou mais dispositivos secundários, e esses dispositivos não precisam ser configurados de forma idêntica.
Algoritmo de balanceamento de carga
Aqui está uma visão geral do algoritmo de balanceamento de carga:
- O dispositivo do direcionador mantém uma lista classificada de membros do cluster secundário em ordem crescente de endereços IP internos.
- A carga é calculada como uma porcentagem inteira (número de sessões ativas/máximas) fornecida por cada membro do cluster secundário.
- O dispositivo direcionador redireciona o túnel VPN IPSec/SSL (Secure Sockets Layer) para um dispositivo com a carga mais baixa primeiro, até que seja um por cento mais alto que os outros dispositivos.
- O dispositivo do direcionador redireciona para si mesmo somente quando todos os membros do cluster secundário são um por cento mais altos que o dispositivo do direcionador.
Aqui está um exemplo com um direcionador e dois membros de cluster secundários:
- Todos os nós começam com uma carga de zero por cento, e todas as porcentagens são arredondadas para o meio por cento mais próximo.
- O dispositivo do direcionador assume a conexão se todos os membros tiverem uma carga 1% maior que o dispositivo do direcionador.
- Se o dispositivo do direcionador não fizer a conexão, a sessão é tomada pelo dispositivo de backup que tem atualmente a menor porcentagem de carga.
- Se todos os membros tiverem a mesma porcentagem de carga, o dispositivo de backup com a menor quantidade de sessões assumirá a sessão.
- Se todos os membros tiverem a mesma porcentagem de carga e o mesmo número de sessões, o dispositivo de backup com a menor quantidade de endereços IP assumirá a sessão.
Processo de eleição do diretor
O processo de eleição do diretor de balanceamento de carga da VPN é executado no cluster fora da rede. Há dois tipos de dados trocados na rede externa:
- Os pacotes do Address Resolution Protocol (ARP) para o endereço IP do cluster que são usados para descoberta de direcionador são trocados. O número máximo de pacotes ARP enviados para o endereço IP do cluster para descobrir o direcionador é:
(10 - prioridade) + 1
Aqui, a prioridade é configurada como no subcomando priority do comando CLI do balanceamento de carga da vpn.
- Os pacotes UDP no exterior para as mensagens de solicitação/resposta de Hello são trocados. O número da porta é especificado no subcomando cluster port load-balance e é padrão para 9023.
Como exemplo, se a prioridade for cinco para um dispositivo de balanceamento de carga, ele tentará enviar até seis pacotes ARP para ver se qualquer dispositivo de direcionador possui o endereço IP do cluster. Se um dispositivo de direcionador for detectado, o ASA não enviará mais nenhuma mensagem ARP e aguardará 15 segundos antes de enviar a solicitação de saudação UDP. O dispositivo do direcionador responde com uma resposta UDP Hello.
Caveat para cenários de reinicialização
Em uma situação de reinicialização com dois ASAs em um cluster de balanceamento de carga:
- O ASA-1 ou o ASA-2 eram o diretor antes da reinicialização.
- O ASA-1 é reinicializado.
- O ASA-2 torna-se o diretor se não fosse o diretor antes.
- O ASA-1 simplesmente ingressa no cluster como um membro após a reinicialização.
O algoritmo de balanceamento de carga pode ser afetado por uma configuração do switch onde a interface externa dos dispositivos de cluster também está conectada. Por exemplo, um algoritmo Spanning-Tree pode causar atraso de conectividade quando o dispositivo conectado ao switch é reinicializado.
Tip: O comando spanning-tree port fast ajuda a acelerar o processo.
Em alguns casos, um ASA recém-reinicializado com balanceamento de carga habilitado pode tentar se tornar o dispositivo do direcionador (mesmo que já exista um dispositivo do direcionador) porque não pode acessar o dispositivo do direcionador atual devido a um atraso de conectividade no switch. Quando há um conflito de diretoria detectado como resultado de uma colisão ARP, o ASA com um endereço de controle de acesso de mídia (MAC) baixo ganha, enquanto o ASA com um endereço MAC mais alto desiste da função de dispositivo do direcionador.
Processo de reeleição do diretor
Há duas situações que causam uma reeleição do dispositivo do diretor.
Dispositivo Diretor Removido do Cluster
Quando você desabilita o recurso no ASA, uma mensagem de broadcast é enviada a todos os membros do cluster para informar a alteração, e o processo de eleição descrito anteriormente é executado.
O dispositivo do diretor não responde às mensagens de saudação do membro do cluster
Se o dispositivo do direcionador não responder a uma mensagem Hello de membro do cluster, um membro do cluster ASA leva aproximadamente 20 segundos para detectar que o direcionador não está mais presente. As mensagens de saudação são enviadas a cada cinco segundos (não configurável). Se os membros do cluster não receberem uma resposta do dispositivo do direcionador após quatro mensagens de saudação, o processo de eleição será acionado.
Troubleshoot
Note: Consulte o artigo Important Information on Debug Commands Cisco antes de usar os comandos debug.
Esses comandos debug podem ser úteis nas tentativas de solucionar problemas com seu sistema:
- debug fsm 255 - Use este comando para ativar o comando geral Finite State Machine debug. Insira o comando no debug all para desativar.
- debug menu vpnlb 3 - Use este comando para ativar o rastreamento de depuração do balanceamento de carga da VPN. Insira o comando debug menu vpnlb 3 novamente para desativar.
- debug menu vpnlb 4 - Use este comando para ativar o rastreamento da função de balanceamento de carga da VPN. Insira o comando debug menu vpnlb 4 novamente para desativar.
Informações Relacionadas