A funcionalidade NLB (Balanceamento de Carga na Rede) no Windows Server 2008 R2 melhora a disponibilidade e escalabilidade de aplicações de servidor da Internet, tais como as utilizadas na Web, FTP, firewall, proxy, VPN (rede privada virtual) e outros servidores críticos. Um computador individual com o Windows Server 2008 R2 fornece um nível limitado de fiabilidade e de desempenho escalável do servidor. No entanto, ao combinar os recursos de dois ou mais computadores que estejam a utilizar um dos produtos do Windows Server 2008 R2 num único cluster virtual, o NLB pode fornecer a fiabilidade e o desempenho de que os servidores Web e outros servidores críticos necessitam.

Cluster de equilíbrio de carga de rede com quatro hosts

O diagrama acima apresenta dois clusters do Balanceamento de Carga na Rede ligados. O primeiro cluster é composto por dois sistemas anfitrião e o segundo cluster é composto por quatro sistemas anfitrião. Este é um exemplo do modo como pode utilizar o NLB.

Cada anfitrião executa uma cópia em separado das aplicações servidor pretendidas (tais como aplicações para servidores Web, FTP e Telnet). O NLB distribui os pedidos de clientes recebidos pelos sistemas anfitrião no cluster. O peso da carga pode ser processado por cada anfitrião configurado consoante o necessário. Pode também adicionar sistemas anfitrião de forma dinâmica ao cluster para processarem um aumento da carga. Para além disso, o NLB pode direccionar todo o tráfego para um único anfitrião designado, denominado de anfitrião predefinido.

O NLB permite que todos os computadores no cluster sejam abrangidos pelo mesmo conjunto de endereços IP do cluster e mantém um conjunto de endereços IP dedicados e exclusivos para cada anfitrião. Para aplicações com balanceamento de carga, quando um anfitrião falha ou fica offline, a carga é automaticamente redistribuída pelos computadores que ainda estão a funcionar. Quando um computador falha ou fica inesperadamente offline, as ligações activas para o servidor com falha ou offline perdem-se. No entanto, se desactivar um sistema anfitrião de forma intencional, pode utilizar o comando drainstop para servir todas as ligações activas antes de colocar o computador offline. Em qualquer caso, quando estiver preparado, o computador offline pode juntar-se novamente ao cluster de forma transparente e voltar a ficar responsável pela sua parte da carga de trabalho, o que permite que os outros computadores no cluster processem menos tráfego.

Os sistemas anfitrião num cluster de NLB trocam mensagens heartbeat para manterem dados consistentes sobre a associação do cluster. Por predefinição, quando um anfitrião falha no envio de mensagens heartbeat no prazo de cinco segundos, isso significa que ocorreu uma falha. Quando um anfitrião falhou, os restantes sistemas anfitrião no cluster convergem e efectuam o seguinte:

  • Estabelecem os sistemas anfitrião que ainda são membros activos do cluster.

  • Elegem o sistema anfitrião com a prioridade mais elevada como o novo sistema anfitrião predefinido.

  • Certificam-se de que todos os pedidos de novos clientes são processados pelos restantes sistemas anfitrião.

Durante uma convergência, os restantes sistemas anfitrião procuram heartbeats consistentes. Se o anfitrião que falhou no envio de heartbeats começar a fornecer heartbeats de forma consistente, volta a aderir ao cluster no decurso da convergência. Quando um novo anfitrião tenta aderir ao cluster, envia mensagens de heartbeat que também accionam uma convergência. Depois de todos os sistemas anfitrião do cluster concordarem na associação actual do cluster, a carga de clientes é redistribuída para os restantes sistemas anfitrião e a convergência é concluída.

A convergência demora normalmente apenas alguns segundos, por isso, a interrupção no serviço do cliente pelo cluster é mínima. Durante a convergência, os sistemas anfitrião que ainda estão activos continuam a processar pedidos de clientes sem afectarem as ligações existentes. A convergência termina quando todos os sistemas anfitrião comunicam uma vista consistente da associação do cluster e do mapa de distribuição durante vários períodos de heartbeat.

O que há de novo no NLB?

O NLB inclui os seguintes melhoramentos para o Windows Server 2008 R2:

  • Afinidade expandida. A opção Expandidos preserva a afinidade do cliente quando a configuração de um cluster de NLB é alterada. Esta opção também permite que os clientes mantenham a afinidade com um sistema anfitrião do cluster mesmo que não existam ligações activas entre o cliente e o sistema anfitrião.

  • Windows PowerShell para clusters NLB. O Windows PowerShell é uma nova linguagem de script e de shell da linha de comandos. O Windows PowerShell acelera a automatização de tarefas de administração do sistema. Pode utilizar o Windows PowerShell para gerir clusters NLB. Para mais informações sobre a utilização do Windows PowerShell para clusters de NLB, consulte o site https://go.microsoft.com/fwlink/?LinkId=140180 (pode estar em inglês).

  • Suporte para actualizações sucessivas. O NLB suporta actualizações sucessivas do Windows Server 2003 para o Windows Server 2008 R2 e do Windows Server 2008 para o Windows Server 2008 R2. Para obter informações de implementação para o NLB, incluindo informações sobre actualizações sucessivas, consulte o site https://go.microsoft.com/fwlink/?LinkId=87253 (pode estar em inglês).

Configuração do NLB

O NLB é executado como um controlador de funcionamento em rede do Windows. As respectivas operações são transparentes à pilha de funcionamento em rede de TCP/IP.

Relação entre o NLB e outros componentes

O diagrama acima mostra a relação entre o NLB e outros componentes de software numa configuração típica de um anfitrião do NLB.

Funcionalidades no Balanceamento de Carga na Rede

O NLB inclui as seguintes funcionalidades:

Escalabilidade

A escalabilidade consiste na medida do crescimento adequado de um computador, serviço ou aplicação para satisfazer as crescentes exigências de desempenho. Para os clusters de NLB, consiste na capacidade de adicionar de forma incremental um ou mais sistemas a um cluster existente quando a totalidade da carga do cluster exceder as suas capacidades. A fim de suportar a escalabilidade, o NLB pode efectuar o seguinte:

  • Efectuar o balanceamento de pedidos de carga no cluster de NLB para serviços TCP/IP individuais.

  • Suportar até 32 computadores num único cluster.

  • Efectuar o balanceamento de vários pedidos de carga de servidor (do mesmo cliente ou de vários clientes) em vários sistemas anfitrião no cluster.

  • Suportar a capacidade de adicionar sistemas anfitrião ao cluster de NLB à medida que a carga aumenta, sem desactivar o cluster.

  • Suportar a capacidade de remover sistemas anfitrião do cluster quando o nível de carga diminui.

  • Permitir um elevado desempenho e um baixo overhead através de uma implementação completamente em modo pipeline. A colocação em pipeline permite o envio de pedidos para o cluster de NLB sem aguardar pela resposta do pedido enviado anteriormente.

Elevada disponibilidade

Um sistema com uma elevada disponibilidade fornece de forma fiável um nível aceitável de serviço com um tempo de inactividade mínimo. A fim de fornecer uma elevada disponibilidade, o NLB inclui funcionalidades incorporadas que permitem automaticamente:

  • Detectar e recuperar de um sistema anfitrião do cluster que falhe ou fique offline.

  • Efectuar o balanceamento de carga na rede quando são adicionados ou removidos sistemas anfitrião.

  • Recuperar e redistribuir a carga de trabalho no espaço de dez segundos.

Capacidade de gestão

O NLB fornece as seguintes funcionalidades de gestão:

  • Pode gerir e configurar vários clusters de NLB e os sistemas anfitrião do cluster de um único computador ao utilizar o Gestor de NLB.

  • Pode especificar o comportamento do balanceamento de carga para uma única porta ou grupo de portas IP ao utilizar regras de gestão de portas.

  • Pode definir diferentes regras de portas para cada Web site. Se utilizar o mesmo conjunto de servidores com balanceamento de carga para várias aplicações ou Web sites, as regras da porta baseiam-se no endereço IP virtual de destino (utilizando clusters virtuais).

  • Pode direccionar todos os pedidos de clientes para um único anfitrião ao utilizar regras opcionais de anfitrião único. O NLB encaminha os pedidos de clientes para um anfitrião em particular que esteja a executar aplicações específicas.

  • Pode bloquear o acesso à rede não pretendido a determinadas portas IP.

  • Pode activar o suporte IGMP (Internet Group Management Protocol) nos sistemas anfitrião do cluster para controlar a sobrecarga do comutador (quando estiver a funcionar no modo multicast).

  • Pode iniciar, parar e controlar remotamente as acções do NLB de qualquer computador em rede que esteja a executar o Windows ao utilizar comandos da shell ou scripts.

  • Pode ver o registo de eventos do Windows para verificar os eventos de NLB. O NLB regista todas as acções e as alterações ao cluster no registo de eventos.

Facilidade de utilização

O NLB fornece várias funcionalidades que tornam conveniente a utilização de:

  • O NLB está instalado como um componente do controlador de funcionamento em rede do Windows padrão.

  • O NLB não exige quaisquer alterações de hardware para ser activado e executado.

  • O Gestor de NLB permite-lhe criar novos clusters de NLB.

  • O Gestor de NLB permite-lhe configurar e gerir vários clusters e todos os sistemas anfitrião do cluster a partir de um único computador remoto ou local.

  • O NLB permite aos clientes acederem ao cluster utilizando um nome da Internet lógico e único e um endereço IP virtual, conhecido como o endereço IP do cluster (mantém nomes individuais para cada computador). O NLB permite vários endereços IP virtuais para servidores multihomed.

    Nota

    No caso de clusters virtuais, os servidores não precisam de ser multihomed para terem vários endereços IP virtuais.

  • O NLB pode ser vinculado a várias placas de rede, o que lhe permite configurar vários clusters independentes em cada anfitrião. O suporte para várias placas de rede difere de clusters virtuais, no facto de os clusters virtuais lhe permitirem configurar vários clusters numa única placa de rede.

  • O utilizador não tem de modificar aplicações do servidor para serem executadas num cluster de NLB.

  • Se o anfitrião do cluster falhar e, posteriormente, for colocado novamente online, o NLB pode ser configurado para adicionar automaticamente esse anfitrião ao cluster. O anfitrião adicionado poderá então começar a processar novos pedidos do servidor de clientes.

  • Pode colocar os computadores offline para fins de manutenção preventiva sem perturbar as operações do cluster nos outros sistemas anfitrião.

Referências adicionais


Sumário