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