Como Criar um Azure Load Balancer

O que é Azure Load Balancer (Balanceador de carga do Azure).

O Azure Load Balancer é um serviço que permite uma distribuição de fluxos e dimensionar aumento de demanda de acordo com a ociosidade deles por regras de balanceamento e provas de saúde sem que prejudique a disponibilidade de seu ambiente.

Suponha que você tenha que renovar sua carteira de CNH, e ao chegar no Detran você deve conversar com várias pessoas de guichês diferentes, no momento que você é atendido pela primeira pessoa ela já recolhe todas as informações necessárias para dar andamento para renovação de sua carteira de motorista, e quando você chega no segundo guichê ele já tem os dados necessários sem que ele pergunte novamente, o Azure Load Balancer tem um conceito parecido mas usando máquinas virtuais, ele fica alternando a mesma informação para máquinas diferentes sem que o usuário perceba e assim conseguir concluir seu objetivo.

O Azure Load Balancer distribuí o tráfego de entrada para recursos de back-end usando regras de balanceamento de carga e investigações de integridade.

Existem dois tipos de load balancer:

Público: usado para balancear a carga do tráfego da Internet para a rede interna. Permite conexões de saída para o pool de recursos dentro de uma rede virtual. Quando você cria uma máquina virtual e adiciona ela em um pool de front-end essa máquina perde seu IP pública e quem toma conta é o Load Balancer, por quê a partir daí o ele assumi o papel do IP público.

Interno: usado para o balanceamento de carga dentro de uma rede virtual, para uma rede virtual entre locais, usado somente dentro do Azure.

tcp port 80

Iremos criar um Load Balancer público usando a arquitetura mostrada na figura acima.

Primeiramente iremos criar a Virtual Network do nosso ambiente.
Na parte de pesquisas do Azure, procure por Virtual Network
Clique em + Create
Em resource group clique em create new.

Nome: RG-LB
Nome da Virtual Network: VNET01
Region: East Us 2

Na parte superior siga para a aba IP Adresses

IP: 192.168.0.0/16

Coloque Add subnet,

IP: 192.168.100.0/24
Nome: SUB-FRONT-END

Clique em Add
Clique em review + create.
Depois clique create.

Agora vamos criar o NSG
Na barra de pesquisa do Azure procura por Network Security Group
Clique em + Create

Selecione o grupo de recurso: RG-LB
Nome: NSG-LB-FRONT-END
Region: East Us 2

Clique em review + create.
Depois clique create.

Agora vamos criar três Azure Virtual Machines em que o Load Balancer vai fazer o balanceamento entre elas.
Na barra de pesquisa do Azure procura por Virtual Machines.
Clique em + Create

Selecione o grupo de recurso: RG-LB

Nome: VM01
Region: East Us 2
Avaibility Options: Avaibility set

Clique em create new

Nome: AVSET-LB
Fault Domain: 2
Update Domain: 5
Username: Admin.az
E informe a senha

Na parte superior avance para Networking:

Em NIC Network Security Group selecione a opção Advanced.
Em Configure Network Security Group selecione: NSG-LB-FRONT-END

Na parte superior avance para Monitoring:

Em boot diagnostic selecione: disable
E desabilite a opção de shut-down

Clique em review + create.
Depois clique create.

Crie mais duas VMs com a mesma configuração somente alterando o nome para VM02 e VM03

Agora será adiciona uma regra para a porta 80.
Na barra de pesquisa do Azure procura por Network Security Group
Clique em: NSG-LB-FRONT-END
Na barra ao lado procure por Inbound Security Rules

Clique em Add +
Em Destination port ranges mude para 80.
Protocol: TCP
Name: Allow_port_80
Depois clique em Add

Agora adicione mais uma regra para a porta 3389.
Clique em Add +

Em Destination port ranges mude para 3389.
Protocol: TCP
Name: Allow_port_3389
Depois clique em Add

Na barra de pesquisa do Azure procura por Virtual Machines.
Clique em VM01
Na barra do lado esquerdo procure por Run Command.
E clique em Run Command Script e coloque esse script.

Install-WindowsFeature -name Web-Server -IncludeManagementTools remove-item C:\inetpub\wwwroot\iisstart.htm Add-Content -Path “C:\inetpub\wwwroot\iisstart.htm” -Value $(“Aprendendo Cloud! ” + $env:computername)

E clique em Run.

Execute esse mesmo script na VM02 e VM03.
Depois vá a Overview na VM01 copie o número de IP e coloque no navegador e verifique se
aparece VM01, se sim é porque deu certo.
Agora vamos criar o Load Balancer
Na barra de pesquisa do Azure procura por Azure Load Balancer.
Clique em + Create

Selecione o grupo de recurso: RG-LB
Name: LB-FRONT-END
Region: East Us 2
SKU: Basic

Na parte superior em FrontEnd IP Configuration

Clique em Add a FrontEnd IP Configuration
Name: FrontEndIP
Public IP address clique em create new

Name: PIP-LB-FRONT-END
Assigment: Static
Clique em Add

Na parte superior em Backend Pool.

Name: BPool
Virtual Network: VNET01
Associate to: Virtual Machines
Clique em +Add
E selecione a VM01, VM02 e VM03 e clique em Add.

Na parte superior em Inbound Rules

Clique em +Add a load balancer rule
Name: LB-Rule
Frontend IP address: FrontEndIP
Port: 80
Backend Port: 80
Backend pool: BPool
Health Probe: clique em Create new

Name: HProbe
Protocol: TCP
Clique em OK
Clique em Add.

Clique em review + create.
Depois clique create
Depois clique em GO to resource
Na barra Settings clique em FrontEnd IP configuration e copie o endereço de IP público do
load balancer e cole esse IP lá, ao apertar F5 repetidamente você vai ver que vai alterar as
máquinas.

Conclusão: Com o Azure Load Balancer, você pode dimensionar seus aplicativos e criar serviços com alta
disponibilidade. O Load Balancer dá suporte a cenários de entrada e saída. O Load Balancer
fornece baixa latência e alta taxa de transferência e pode ser escalado verticalmente em
milhões de fluxos, mas tenha sempre em mente que pra fazer isso em três máquinas virtuais
como foi feita no laboratório acima as VMs precisam estar na mesma Avaibility set.

Referências

Início Rápido: Criar um balanceador de carga público – portal do Azure – Azure Load Balancer | Microsoft Learn

O que é o Azure Load Balancer? – Azure Load Balancer | Microsoft Learn

GitHub – Macnair-Rios-Calixto/Deploying-a-project-with-Public-LoadBalancer-Vmss-and-Load-Balancer-Internal-Vmss

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *