sexta-feira, 24 de fevereiro de 2017

NSX - Load Balancing

Tendências de balanceamento de carga:

Existem uma nova tendência para os balanceadores de carga, passando de balanceamento por ambiente para balanceamento por aplicação isso tudo devido o aumento considerável no número de aplicações dentro do Datacenter.

Outra tendência é o modelo scale-out, considerando a implementação de mais balanceadores no ambiente.

NSX Edge - Load Balancing:

O balanceador de carga do NSX Edge permite que o tráfego de rede siga vários caminhos para um destino específico.

Permite a distribuição de pedidos de serviços de entrada de forma uniforme entre vários servidores de tal forma que a distribuição de carga sendo transparente para os usuários. O balanceamento de carga ajuda assim a alcançar a utilização ideal dos recursos e throughput, minimizando o tempo de resposta e evitando a sobrecarga.

O NSX Edge fornece balanceamento de carga até a camada 7.

Os serviços de balanceamento de carga nativamente oferecidos pelo NSX Edge atendem às necessidades da maioria das implantações de aplicativos. Isso ocorre porque o NSX Edge fornece um grande conjunto de funcionalidades:
  • Suporte a todos os aplicativos TCP, incluindo, mas não limitado a, LDAP, FTP, HTTP, HTTPS
  • Suporte UDP aplicação a partir de NSX SW lançamento 6.1.
Algoritmos de distribuição de balanceamento de carga múltiplos disponíveis: 
    • ROUND_ROBIN
      • Cada servidor é usado por sua vez de acordo com o peso atribuído a ele. Este é o algoritmo mais suave e mais justo quando o tempo de processamento do servidor permanece igualmente distribuído.
    • LEAST_CONN
      • Distribui solicitações de clientes para vários servidores com base no número de conexões já existentes no servidor. Novas conexões são enviadas para o servidor com o menor número de conexões.
    • IP_HASH
      • Seleciona um servidor com base em um hash do endereço IP de origem e destino de cada pacote.
    • URI
      • A parte esquerda do URI (antes do ponto de interrogação) é hash e dividido pelo peso total dos servidores em execução. O resultado indica qual servidor receberá a solicitação. Isso garante que um URI é sempre direcionado para o mesmo servidor, desde que nenhum servidor sai ou desce
  • Verificações de integridade: 
    • TCP
    • HTTP
    • HTTPS
    • incluindo inspeção de conteúdo
  • Persistência:
    • IP de origem
    • MSRDP
    • cookie 
    • ssl session-id
  • Acoplamento da conexão: conexões e conexões máximas / seg.
  • L7, incluindo, mas não limitado a, bloco de URL, reescrita de URL, reescrita de conteúdo
  • Otimização através do suporte de descarga SSL
Obs.: A plataforma NSX também pode integrar serviços de balanceamento de carga oferecidos por fornecedores terceirizados;

Escalabilidade:

Em termos de escalabilidade e números de throughput, os serviços de balanceamento de carga NSX oferecidos por cada NSX Edge individual podem escalar até (melhor cenário):
  • Throughput: 9.2 Gbps
  • Conexões simultâneas: 1 milhão
  • Novas conexões por segundo: 131k
  • Obs.: Load Balance suporta no máximo 64 Virtual IPs;
Se o balanceador de carga é configurado modo de alta disponibilidade (HA) e se o Load Balancer principal tiver uma falha, o Load Balancer secundário NSX assume a função de primário. Os fluxos existentes precisarão ter suas conexões restabelecidas.

Licenciamento:

A licença não esta associada ao número de NSX Edge, esta associado ao Host ou seja etas associado diretamente a quantidade de sockets/CPU


NSX Edge oferece suporte para dois tipos de configuração de Load Balancing:

One-arm mode e Inline mode.

One-arm mode: (chamado modo proxy): Consiste em implantar um NSX Edge diretamente conectado à rede lógica que fornece serviços de balanceamento de carga para.


  1. O cliente externo envia tráfego para o endereço IP virtual (VIP) exposto pelo balanceador de carga.
  2. O balanceador de carga executa duas traduções de endereço nos pacotes originais recebidos do cliente: NAT de destino (D-NAT) para substituir o VIP pelo endereço IP de um dos servidores implantados no farm de servidores e NAT de origem (S-NAT) para substituir o endereço IP do cliente pelo endereço IP identificando o balanceador de carga propriamente dito. S-NAT é obrigado a forçar através do LB o tráfego de retorno do farm de servidores para o cliente.
  3. O servidor no farm de servidores responde enviando o tráfego para o LB (por causa da função S-NAT discutida anteriormente).
  • O LB executa novamente um serviço NAT de Origem e Destino para enviar tráfego para o cliente externo aproveitando seu VIP como endereço IP de origem.

A vantagem deste modelo é que é mais simples de implementar e flexível, pois permite a implantação de serviços LB (appliances NSX Edge) diretamente nos segmentos lógicos onde eles são necessários sem exigir qualquer modificação no NSX Edge centralizado, fornecendo comunicação de roteamento para a rede física . No lado negativo, essa opção requer o provisionamento de mais instâncias do NSX Edge e impõe a implantação do NAT de origem que não permite que os servidores do DC tenham visibilidade no endereço IP do cliente original.

O LB pode inserir o endereço IP original do cliente no cabeçalho HTTP antes de executar S-NAT (uma função chamada "Inserir Encaminhamento X-Para cabeçalho HTTP"). Isso fornece a visibilidade dos servidores no endereço IP do cliente, mas é obviamente limitado ao tráfego HTTP.


Inline mode: (chamado modo transparente) exige, em vez disso, implantar o NSX Edge inline no tráfego destinado ao farm de servidores.


  1. O cliente externo envia tráfego para o endereço IP virtual (VIP) exposto pelo balanceador de carga.
  2. O balanceador de carga (centralizado NSX Edge) executa apenas NAT de destino (D-NAT) para substituir o VIP pelo endereço IP de um dos servidores implantados no farm de servidores.
  3. O servidor no farm de servidores responde ao endereço IP do cliente original e o tráfego é recebido novamente pelo LB, uma vez que é implantado inline (e geralmente como o gateway padrão para o farm de servidores).
  4. O LB executa Source NAT para enviar tráfego para o cliente externo alavancando seu VIP como endereço IP de origem.

Esse modelo de implantação também é bastante simples e permite que os servidores tenham total visibilidade do endereço IP do cliente original. Ao mesmo tempo, é menos flexível do ponto de vista do projeto, pois geralmente força o uso do LB como gateway padrão para os segmentos lógicos em que os farms de servidores são implantados e isso implica que apenas o roteamento centralizado (e não distribuído) deve ser adotado para aqueles Segmentos. Também é importante notar que neste caso o LB é outro serviço lógico adicionado ao NSX Edge já fornecendo serviços de roteamento entre as redes lógica e física. Como conseqüência, é recomendável aumentar o fator de forma do NSX Edge para X-Large antes de habilitar serviços de balanceamento de carga.

Comandos via CLI:

Check LB engine status (L4/L7)

  • # show service loadbalancer

Check LB objects statistics (vips, pools, members)

  • # show service loadbalancer virtual [vip-name]
  • # show service loadbalancer pool [poo-name]

Check Service Monitor status (OK, WARNING, CRITICAL)

  • # show service loadbalancer monitor

Check system log message

  • # show log

Check LB session table

  • # show service loadbalancer session

Check LB L7 sticky-table status

  • # show service loadbalancer table

Nenhum comentário:

Postar um comentário

Deixe seu comentário!