Network Load Balancing
Neste tópico, forneceremos uma visão geral do recurso NLB (Balanceamento de Carga de Rede) do Windows Server 2016. Você pode usar o NLB para gerenciar dois ou mais servidores como um só cluster virtual. O NLB aprimora a disponibilidade e a escalabilidade de aplicativos de servidor da Internet como os usados na Web, no FTP, no firewall, no proxy, na VPN (rede virtual privada) e em outros servidores críticos.
Observação
O Windows Server 2016 inclui um novo SLB (Balanceador de Carga de Software) inspirado no Azure como um componente da infraestrutura de SDN (Rede definida pelo software). Use o SLB em vez do NLB se estiver usando a SDN, usando cargas de trabalho não Windows, precisar da NAT (conversão de endereços de rede) de saída ou precisar da L3 (Camada 3) ou do balanceamento de carga não baseado em TCP. Continue usando o NLB com o Windows Server 2016 para implantações não SDN. Para obter mais informações sobre o SLB, confira SLB (Balanceamento de Carga de Software) para SDN.
O recurso NLB (Balanceamento de Carga de Rede) distribui o tráfego por diversos servidores usando o protocolo de rede TCP/IP. Combinando dois ou mais computadores que executam aplicativos em um único cluster virtual, o NLB proporciona confiabilidade e desempenho para servidores Web e outros servidores críticos.
Os servidores em um cluster NLB se chamam hosts, e cada host executa uma cópia separada dos aplicativos de servidor. O NLB distribui as solicitações de entrada dos clientes pelos hosts do cluster. É possível configurar a carga que será tratada por cada host. Você também pode adicionar hosts dinamicamente ao cluster para tratar aumentos de carga. Além disso, o NLB pode direcionar todo o tráfego para um único host designado, chamado de host padrão.
O NLB permite que todos os computadores no cluster sejam abordados pelo mesmo conjunto de endereços IP, e mantém um conjunto de endereços IP exclusivos e dedicados para cada host. Para aplicativos com balanceamento de carga, quando um host falha ou fica offline, a carga é automaticamente redistribuída entre os computadores que permanecem em operação. Quando estiver pronto, o computador offline poderá reintegrar-se ao cluster de forma transparente e retomar sua parcela da carga de trabalho, o que permite que os outros computadores do cluster lidem com menos tráfego.
Aplicações práticas
O NLB é útil para garantir que os aplicativos sem monitoração de estado, como servidores Web que usam o IIS (Serviços de Informações da Internet), fiquem disponíveis com inatividade mínima e que eles sejam dimensionáveis(por meio da adição de servidores à medida que a carga aumenta). As seções a seguir descrevem como o NLB suporta alta disponibilidade, escalabilidade e gerenciamento dos servidores em cluster que executam esses aplicativos.
Alta disponibilidade
Um sistema altamente disponível oferece, de forma confiável, um nível aceitável de serviço com tempo de inatividade mínimo. Para oferecer alta disponibilidade, o NLB inclui recursos internos que podem automaticamente:
Detectar um host de cluster que falha ou fica offline, e depois recuperar.
Equilibrar a carga da rede quando hosts são adicionados ou removidos.
Recuperar e redistribuir carga de trabalho no prazo de dez segundos.
Escalabilidade
Escalabilidade é a medida que determina como um computador, serviço ou aplicativo pode atender melhor às necessidades crescentes de desempenho. No caso de clusters NLB , a escalabilidade é a capacidade de adicionar paulatinamente um ou mais sistemas a um cluster existente quando a carga total sobre o cluster excede seus recursos. Para dar suporte à escalabilidade, o NLB pode fazer o seguinte:
Equilibrar solicitações de carga no cluster NLB para serviços TCP/IP individuais.
Dar suporte para até 32 computadores em um único cluster.
Executar o balanceamento de várias solicitações de carga (do mesmo cliente ou de vários) em vários hosts do cluster.
Adicionar hosts ao cluster do NLB à medida que a carga aumenta, sem fazer o cluster falhar.
Remover os hosts do cluster quando a carga diminui.
Permitir alto desempenho e baixa sobrecarga através de implementação com pipelining integral. O pipelining permite que as solicitações sejam enviadas ao cluster NLB sem aguardar resposta da solicitação enviada anteriormente.
Capacidade de gerenciamento
Para dar suporte à escalabilidade, o NLB pode fazer o seguinte:
Gerenciar e configurar vários clusters NLB e os hosts de cluster em um só computador usando o Gerenciador do NLB ou os cmdlets do NLB (Balanceamento de Carga de Software) no Windows PowerShell.
Especificar o comportamento do balanceamento de carga para uma única porta ou para um grupo de portas IP usando regras de gerenciamento de portas.
Definir regras de porta diferentes para cada site. Se você usar o mesmo conjunto de servidores com balanceamento de carga para vários aplicativos ou sites, as regras de porta baseiam-se no endereço IP de destino virtual (usando clusters virtuais).
Direcionar todas as solicitações de clientes para um único host utilizando regras opcionais de host único. O NLB roteia solicitações de clientes para um host específico que esteja executando aplicativos específicos.
Bloquear o acesso indesejado à rede para determinadas portas IP.
Permitir suporte do IGMP (Internet Group Management Protocol) em hosts de cluster para controlar inundações porta do comutador (onde os pacotes de rede de entrada são enviados para todas as portas do comutador) ao operar em modo multicast.
Iniciar, parar e controlar as ações NLB remotamente usando comandos do Windows PowerShell ou scripts.
Exibir o log de eventos do Windows para verificar eventos do NLB. O NLB registra todas as ações e alterações de cluster no log de eventos.
Funcionalidade importante
O NLB é instalado como um componente de driver de rede padrão do Windows Server. Suas operações são transparentes para a pilha de rede TCP/IP. A figura a seguir mostra a relação entre o NLB e outros componentes de software em uma configuração típica.
Veja a seguir os principais recursos do NLB.
Não requer alterações de hardware para funcionar.
Oferece Ferramentas de Balanceamento de Carga de Rede para configurar e gerenciar vários clusters e todos os hosts do cluster em um único computador remoto ou local.
Permite que os clientes acessem o cluster usando um só nome lógico de Internet e endereço IP virtual, que é conhecido como endereço IP de cluster (mantém os nomes individuais de cada computador). O NLB permite vários endereços IP virtuais para servidores multihomed.
Observação
Quando você implanta VMs como clusters virtuais, o NLB não exige que os servidores sejam multihomed para ter vários endereços IP virtuais.
Permite que o NLB seja vinculado a vários adaptadores de rede, o que permite configurar vários clusters independentes em cada host. O suporte a vários adaptadores de rede difere dos clusters virtuais, pois os clusters virtuais permitem configurar vários clusters em um único adaptador de rede.
Não requer modificações de aplicativos de servidor para que eles possam ser executados em um cluster NLB.
Pode ser configurado para adicionar automaticamente um host ao cluster se esse host de cluster falhar e voltar ao modo online posteriormente. O host adicionado pode começar a manipular os pedidos de novos servidores clientes.
Permite que você coloque computadores offline para manutenção preventiva sem perturbar as operações de cluster nos outros hosts.
Requisitos de hardware
Veja a seguir os requisitos de hardware necessários para executar um cluster do NLB.
Todos os hosts do cluster devem residir na mesma sub-rede.
Não há restrição ao número de adaptadores de rede em cada host, e hosts diferentes podem ter um número diferente de adaptadores.
Dentro de cada cluster, todos os adaptadores de rede devem ser multicast ou unicast. O NLB não dá suporte a ambientes mistos unicast e multicast em um único cluster.
Se você usar o modo unicast, o adaptador de rede que é usado para lidar com tráfego cliente para cluster deve apoiar a mudança do seu endereço de MAC (Controle de Acesso de Mídia).
Requisitos de software
Veja a seguir os requisitos de software necessários para executar um cluster do NLB.
Apenas TCP/IP podem ser usados no adaptador para que o NLB seja habilitado em cada host. Não adicione outros protocolos (por exemplo, IPX) a esse adaptador.
Os endereços IP dos servidores no cluster devem ser estáticos.
Observação
O NLB não oferece suporte ao protocolo DHCP. O NLB desabilita o DHCP em cada interface que ele configura.
Informações de instalação
Você pode instalar o NLB usando o Gerenciador do Servidor ou os comandos do Windows PowerShell para o NLB.
Opcionalmente, você pode instalar as Ferramentas de Balanceamento de Carga de Rede para gerenciar um cluster NLB local ou remoto. As ferramentas incluem o Gerenciador de Balanceamento de Carga de Rede e os cmdlets do Windows PowerShell para o NLB.
Instalação com o Gerenciador do Servidor
No Gerenciador do Servidor, use o Assistente para Adicionar Funções e Recursos para adicionar o recurso Balanceamento de Carga de Rede. Quando você conclui o assistente, o NLB é instalado e você não precisa reiniciar o computador.
Instalação com o Windows PowerShell
Para instalar o NLB usando o Windows PowerShell, execute o comando a seguir em um prompt do Windows PowerShell com privilégios elevados no computador em que deseja instalar o NLB.
Install-WindowsFeature NLB -IncludeManagementTools
Após a conclusão da instalação, nenhuma reinicialização do computador é necessária.
Para obter mais informações, consulte Install-WindowsFeature.
Gerenciador de Balanceamento de Carga de Rede
Para abrir o Gerenciador de Balanceamento de Carga de Rede em um Gerenciador do Servidor, clique em Ferramentas e depois clique em Gerenciador de Balanceamento de Carga de Rede.
Recursos adicionais
A tabela a seguir fornece links para informações adicionais sobre o recurso NLB.
Tipo de conteúdo | Referências |
---|---|
Implantação | Guia de Implantação do Balanceamento de Carga de Rede | Como configurar o Balanceamento de Carga de Rede com os serviços do terminal |
Operations | Como gerenciar clusters de Balanceamento de Carga de Rede | Como definir parâmetros do Balanceamento de Carga de Rede | Como controlar os hosts em clusters de Balanceamento de Carga de Rede |
Solução de problemas | Solução de problemas com clusters do Balanceamento de Carga de Rede | Eventos e erros de clusters do NLB |
Ferramentas e configurações | Cmdlets do Windows PowerShell para Balanceamento de Carga de Rede |
Recursos da comunidade | Fórum sobre alta disponibilidade (clustering) |