AWS - Como configurar um Application Load Balancer.
Published: 2023-06-27 19:29:25

O Application Load Balancer (ALB) é um serviço de balanceamento de carga fornecido pela Amazon Web Services (AWS). Ele é projetado para distribuir o tráfego de aplicativos entre várias instâncias de servidores em uma arquitetura de nuvem, com o objetivo de melhorar a escalabilidade, a disponibilidade e o desempenho do aplicativo.

O ALB opera no nível da camada 7 do modelo OSI, o que significa que ele é capaz de tomar decisões de roteamento com base em informações do aplicativo, como o conteúdo do cabeçalho HTTP, o caminho da URL ou as informações do cookie. Isso permite que o ALB distribua o tráfego de forma inteligente, direcionando solicitações específicas para servidores apropriados.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uzit7zgd3tx6l10rh64b.png)

Agora que já sabe o que é o ALB, vamos a configuração.

Requisitos:
- Criar uma conta da AWS e acesso ao console da Web da AWS.
- Criar 2 instâncias EC2 web em execução com o Apache.
- Configuração de VPC e sub-redes (públicas e privadas).
- Grupos de segurança com regras apropriadas.

Criado 2 instâncias do EC2 e em User data foi adicionado o script abaixo:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nxi6m06segkxm6y23t42.png)

Testando a aplicação copiando o endereço público das instâncias do EC2.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6fmpmuopyzingktcqkbb.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4gc3swhoh1fvkp89eyu9.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/u29uo09ha0meqvwzctvb.png)
Bom... vamos criar apenas uma URL para acessar essas duas instâncias do EC2, equilibrando a carga entre elas usando o ELB e escolhendo o Application Load Balancer para configuração.

Requisitos:
- Criar um security groups, add rules type http.
- Criar um target groups add as instâncias do EC2. Ficar atento ao selecinar a VPC que estão as instâncias.
- O objetivo é associar o SG e TG no Application Load Balancer(ALB) durante a configuração.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/at01vilhxfb63wov79hq.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i4ydlybpuxbg5uny2a22.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wh7hy2i5zfamy7e1eagd.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kneq6d1fn8tskv7rf7dy.png)
A configuração do ALB ficou da seguinte forma:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/btf2uxse63m4xbgi60as.png)
Após a criação é necessário fazer o teste com o DNS name do ALB, vamos copiar e colar no browser para testes. Perceba que o link é o mesmo após a atualização.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l36i2mx2qli9wvrms9ne.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3xso71drr2kn5w2l84ti.png)

Até aqui tudo bem, mas a nível de segurança vamos direcionar o security groups das instâncias EC2 ao ALB, o objetivo é acessar somente pelo DNS name.

Então criamos o inbound rules no security group da instância EC2, type http atachando o security groups do ALB.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ax0t64yxcn86wm6odoai.png)

Vamos fazer os testes nas instâncias do EC2 e no DNS name do ALB?


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9sfw1jwe8wef5f1zift7.png)
Missão cumprida!!! 🔥🔥🔥🔥

Espero que você tenha gostado deste post e tenha aprendido algo novo🆙
Qualquer feedback será bem-vindo, é só deixar nos comentários.😀

Curta, compartilhe, siga-me em:
✅ https://linktr.ee/andreelidio