Olá pessoal,

Espero que todos estejam bem durante a pandemia.

Continuando a série que iniciamos há alguns dias, este é o terceiro post sobre AutoScaling. Hoje iniciaremos o Hands-On para criar um ambiente para AutoScaling.

A série pode ser vista aqui:

Desafios de Scaling em Workloads On-Premises – Post 1

AutoScaling no Oracle Cloud Infrastructure – Post 2

Para termos os nossos recursos no OCI organizados, vamos criá-los dentro de um único Compartment. Isso não quer dizer que essa é a opção recomendada num ambiente corporativo. O ideal é que os recursos sejam divididos de forma a garantir o princípio de menos privilégios concedidos (least privilege principle), e, além disso, se possa dividir os recursos entre os compartments de forma a garantir que seja possível realizar o tracking de custos dos recursos. Claro que também é possível realizar isso através de tags. Mas, isso será discutido em outro momento. 😃

Os recursos serão criados na seguinte ordem:

  • Criação de um Compartment;
  • Criação de uma VCN e subnets;
  • Criação de um Load Balancer;
  • Ajuste da Security List com as portas/protocolos necessários para que o AutoScaling funcione (adição das instâncias no backend-set do Load Balancer);
  • Criação de uma instância;
  • Configuração da instância;
  • Criação de uma Custom Image;
  • Remoção da instância criada;
  • Criação de uma nova instância utilizando uma Custom Image;
  • Criação de uma Instance Configuration;
  • Criação de 2 Instance Pools;
  • Criação de 2 AutoScaling Configurations.

Caso o post fique muito extenso, haverá outro continuando.

Criação de um Compartment

Portanto, na tela inicial, clique no “hambúrguer” e então vá até Identity e depois clique em Compartments:

Os compartments existentes aparecerão. Clique no botão Create Compartment:

A tela de criação de Compartments será exibida, defina um nome e então clique no botão Create Compartment. No exemplo abaixo, defino o nome de DEV_COMPARTMENT:

Os compartments serão exibidos. Agora há um compartment chamado DEV_COMPARTMENT:

Criação de uma Subnet e VCNs

Na tela inicial do OCI, clique em Set up a network with a wizard

A seguinte tela será exibida:

Especifique um nome para a VCN, no exemplo usamos DEV_VCN, escolha o compartment recém criado, revise dados de CIDR Block e clique em Next:

Revise os dados sobre a VCN e clique em Create:

Um resumo sobre os recursos criados será exibido:

Abaixo podemos ver mais detalhes sobre a VCN:

Criação de um Load Balancer

Na tela inicial, clique no hamburger, depois vá em Networking e aí clique em Load Balancers:

Clique no botão Create Load Balancer:

 

Especifique um nome para o Load Balancer (LB_POOL_DEV), mantenha o tipo de visibilidade em Public e o shape em Micro. Escolha a VCN recém-criada, DEV_VCN e escolha a Subnet Pública, então clique em Next:

Na política de Load Balancing, mantenha a opção Weighted Round Robin, especifique o protocolo HTTP e porta 80, clique em Next:

O

No listener, especifique o nome LB_POOL_DEV, escolha o protocolo HTTP e a porta 80, clique então em Submit:

O Load Balancer será criado:

Ajuste da Security List com as portas/protocolos necessários para que o AutoScaling funcione (adição das instâncias no backend-set do Load Balancer)

Clique no Hamburger, depois clique em Networking e em seguida clique em Overview:

Clique na VCN DEV_VCN:

No lado inferior esquerdo, clique em Security Lists:

Clique então em Default Security List for DEV VCN:

Clique no botão Add Ingress Rules, as duas regras que deverão ser criadas estão destacadas pelo retângulo vermelho:

Regra 1 (para acesso dos usuários ao site/aplicação na porta 80):

Stateless: No

Protocolo: TCP

Source: 0.0.0.0/0

Destination Port Range: 80

Regra 2 (para acesso do load balancer na porta 80):

Stateless: No

Protocolo: TCP

Source: 10.0.0.0/24

Destination Port Range: 80

Criação de Uma Instância

Na tela inicial, clique em Create a VM instance:

Um Wizard será aberto, as seguintes opções foram alteradas:

Name: default-web

Compartment: DEV_COMPARTMENT

Shape: VM.Standard.E2.1

Virtual Cloud Network Compartment: DEV_COMPARTMENT

Virtual Cloud Network: VCN_DEV

Subnet: Public Subnet

Choose SSH Key Files: escolha uma chave já existente. Caso contrário, uma chave SSH pode ser criada.

Após isso, clique em Create:

A Instance criada será exibida:

 

No próximo post continuaremos.

Espero que seja útil.

Um abraço

Vinicius