Em muitos momentos é necessário manter a alta disponibilidade de aplicações dentro de nossa infraestrutura de redes. É considerado alta disponibilidade quando serviços essenciais se mantêm funcionais mesmo com perdas físicas de hardware ou panes elétricas de parte de seu ambiente.
A técnica conhecida como NLB, ou Network Load Balancing, permite aumentar a resiliência de um ambiente que possua servidores Web, aplicações como CRMs e ERPs. Tento sempre utilizar esta técnica em clientes que possuam ambientes críticos em que a parada de funcionamento pode gerar prejuízos consideráveis.
Este laboratório ajuda a entender a montagem e funcionamento inicial dos Clusters NLB e possui caráter educativo dentro do mundo Microsoft. Utilizaremos o Hyper-V disponível em sistemas operacionais Windows 8, Windows 8.1, Windows 10, Windows Server 2008, Windows Server 2008 R2, Windows 2012 e Windows 2012 R2. é importante lembrar que a configuração do NLB é requisito para obtenção do título de MCSA com a prova 70-412.
O que é exatamente o NLB?
O NLB é útil para garantir que os aplicativos sem monitoração de estado, como servidores Web que usam o ISS (Serviços de Informação 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.
Quais pontos devo considerar para considerar o NLB como uma ferramenta que oferece Alta Disponibilidade?
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.
Montando o laboratório no Hyper-V
Será necessário para nosso laboratório a criação de dois Switchs virtuais, sendo um para a rede interna e outro para a rede baseada em NLB. A ideia desta técnica é de segmentar o máximo todo o trafego de rede entre os servidores pertencentes ao Cluster. A próxima figura demonstra bem o formato do ambiente.
Estrutura 172.16.40.0/24
Aqui colocaremos os servidores que farão parte do cluster, com um endereçamento IP dedicado. Este endereçamento ficará alocado na segunda placa de rede.
Estrutura 172.16.41.0/24
Este é o endereço utilizado para trafego Multicast dentro do cluster. Aqui somente dados relacionados ao cluster pode trafegar. É este endereço que faremos conexão e entrada no DNS.
Estrutura 192.168.0.0/24
Aqui faremos a conexão de todo o restante da rede utilizando a primeira interface de cada servidor da rede. Os usuários também falam nesta rede portanto o trafego aqui é bem intenso.
Servidores do laboratório
Crie três servidores em sua rede e adicione os endereços IP pela estrutura 192.168.0.0/24 a primeira interface. Em meu laboratório chamei de SVR1, SVR2 e SVR3. O SVR1 de meu laboratório é um controlador de domínio com DNS ativo e configurado. Utilizei a mesma máquina virtual para economizar recursos de hardware para o laboratório, porém no mundo real recomendo cautela.
Configuração dos Servidores Virtuais (configuração mínima)
Processadores: 1
Memória RAM: 1.5 GB
Disco: 60 GB dinâmico
Formato: VHD
Int de rede (NIC): 2
S.O.: Windows Server 2012 R2
PASSO 1 - Switches Virtuais
0. Crie dois switches virtuais seguindo as seguintes configurações:
Switch 1
Nome: LAN
Formato: Privado
Obs.: Receberá as interfaces Ethernet de cada servidor (a primeira interface de rede dos servidores)
Switch 2
Nome: CLUSTER
Formato: Privado
Segmentação: VLAN 2
Obs.: Recebera as interfaces de rede Ethernet 1 de cada servidor (a segunda interface de rede dos servidores)
PASSO 2 - Instalando o NLB
1. Conecte em seu primeiro servidor que também é controlador de domínio neste laboratório;
2. Abra o Server Manager;
3. Em Dashboard clique em Criar Grupos de Servidores;
4. Clie um grupo de servidores chamado NLB_Cluster e adicione os servidores que farão parte do Cluster;
5. Em cada um dos servidores adicionados, clique com o botão direito do mouse, Add Roles and Features;
6. Siga todo o assistênte e instale a Feature Network Load Balance (NLB);
PASSO 3 - Configurando os endereçamentos IP
7. Mude o nome da interface Ethernet de cada servidor para LAN;
8. Mude o nome da interface Ethernet 1 de cada servidor para CLUSTER;
9. Atribua o endereço 172.16.40.1 para o SVR1 na interface CLUSTER e o endereço 192.168.0.1 para a interface LAN;
10. Atribua o endereço 172.16.40.2 para o SVR2 na interface CLUSTER e o endereço 192.168.0.2 para a interface LAN;
11. Atribua o endereço 172.16.40.3 para o SVR3 na interface CLUSTER e o endereço 192.168.0.3 para a interface LAN;
PASSO 4 - Configuração do Cluster NLB
12. Em SVR1 clique em Tools e depois em Network Load Balancing;
13. Clique com o botão direito em Network Load Balancing Cluster e depois em New Cluster;
14. Em New Cluster: Connect, digite o nome de um servidor que possua a Feature NLB instalada. Em meu laboratório utilizarei os servidores SVR1, SVR2 e SVR3. Digite o nome do servidor e clique em Connect;
15. Selecione a interface CLUSTER e pressione o Nest;
16. Marque a prioridade como 1 e o Default State como Started. Pressione o Next;
17. Clique em Add para adicionarmos o endereço IP de comunicação do Cluster. Colocaremos em nosso exemplo o endereço 172.16.41.1 com a mascara 255.255.255.0. Após esta configuração pressione o Next;
18. Na próxima tela marque a opção de multicast e pressione o Next;
19. Em Port Rules manteremos a configuração padrão, portando apenas pressione o Finish e aguarde até que o nó do Cluster seja identificado.
20. Clique com o botão direito no cluster que foi criado com o inicio de IP 172 e clique em Add Host to Cluster. Repita todos os passos para adicionar novos hosts para balanceamento de carga conforme demonstrado pela próxima figura.
Pronto... Cluster montado e pronto. A partir de agora qualquer aplicação instalada em ambos os servidores recebe resiliência e grande carga de disponibilidade. Lembre-se que a aplicação deve possuir suporte a balanceamento de carga para que tudo funcione corretamente.
Este post não tem o objetivo de ensinar técnicas de administração do NLB, mas sim apenas de sua instalação e implementação em um laboratório de estudos.