Nesta parte iremos apenar executar um teste de stress em nossa aplicação para verificarmos o funcionamento do auto scaling group conforme a demanda de nossa aplicação.
Na aba de pesquisa dentro do console AWS pesquise por EC2 e entre no recurso Ec2 que ira aparecer como opção
Na tela que ira aparecer dentro da aba Instances clique na opção instances
e abrira uma tela com as instancias Ec2 criadas dentro de sua conta AWS, clique no id de uma das instancias que criamos para armazenar nossa aplicação
Na tela a seguir no canto superior procure pelo botão Connect
e clique nele, na próxima tela mantenha a opção
EC2 Instance Connect
selecionada e clique no botão Connect
na parte inferior da tela
Pronto, seguindo estes passamos estamos acessando o cluster de nossa aplicação e seu Terminal, e podemos inserir comandos normalmente em nossa instancia.
Para realizarmos o testes siga os passos a seguir:
1) Instalar o utilitário stress e fazer teste de carga
Primeiro rode o comando
sudo amazon-linux-extras install epel -y
dentro do terminal de sua instancia
Depois rode o comando
sudo yum install stress -y
Estes comandos instala o stress em nossa maquina
2) Criar carga de trabalho dentro de nossa maquina utilizando o stress
Rode o comando
stress -c 4
e isso ira inserir demandas em nossa aplicação, para podermos realizar o teste de stress espere por alguns minutos para gerar uma demanda significativa
Agora vamos acompanhar o que esta acontecendo em nosso ambiente AWS conforme a demanda de nossa aplicação
Como fizemos anteriormente na aba de pesquisa procure pelo recurso Cloudwatch
da AWS e clique nele, no menu esquerdo ira aparecer uma aba com um Alarm
especificado clique no triangulo
Ao clicar no icone do triangulo ira aparecer um alarme apontado para nosso auto scaling group nos informando que a Utilização da carga da Cpu da instancia esta acima de 50 porcento
Na parte superio do console pesquise pelo recurso auto scaling group e clique nele
Conforme podemos ver não possuíamos mais 2 instancias apenas rodando e sim 3, e a capacidade desejada para suportar a demanda de nossa aplicação também subiu para 3
Isso ocorreu pois ao gerarmos demandas através do nosso teste de stress o cloudwatch monitora as métricas de nossa aplicação e ao verificar que a aplicação esta utilizando mais que 50 porcento da carga da total da CPU ele aciona um alarme e o auto scaling group automaticamente cria uma nova instancia EC2 e sobe dentro do nosso ambiente para manter a disponibilidade de nossa aplicação
Agora mate o teste de stress e veremos que apos algum tempo sera acionado um alarme no cloudwatch
que a utilização da Cpu esta abaixo dos 40 porcento
Ao verificarmos no auto scaling group
vemos que agora temos 2 instancias rodando e a capacidade desejada para nossa aplicação também e 2 instancias
Ao verificar que a demanda e menor que 40 porcento aciona um alarme e o auto scaling group automaticamente mata uma instancia dentro de nosso ambiente
E isso ai galera finalizamos aqui nosso post, podemos observar o grande poder de escalabilidade e disponibilidade de nossa aplicação a cloud AWS nos proporciona através do recurso Elastic Beanstalk, agradeço a todos que lerem este post e ate o próximo
Top comments (0)