Escalando sua aplicação automaticamente
Para escalar sua aplicação automaticamente para quando houver um pico de acesso seu app continue servindo seus clientes sem interferências execute os seguintes passos.
1º Instalar o oc, veja nosso guia rápido.
2º Fazer login através da CLI.
vander@llghost:~$ oc login
Authentication required for https://api.getupcloud.com:443 (openshift)
Username: vander.nunes@getupcloud.com
Password:
Login successful.
3º Escolher o projeto que contem sua aplicação.
vander@llghost:~$ oc project nunes
Now using project "nunes" on server "https://api.getupcloud.com:443".
4º Escolher qual dc(deploymentConfig) vai ter escalabilidade automática, o dc escolhido vai aplicar no seu pod respectivamente.
vander@llghost:~$ oc get dc
NAME REVISION REPLICAS TRIGGERED BY
mysql 1 1 config,image(mysql:latest)
wp 2 1 config,image(wp:latest)
5º No exemplo acima podemos visualizar dois dc, o mysql e o wp, o escolhido para a escalabilidade automática nesse exemplo é o wp.
Antes de executarmos o oc, vamos verificar quantos pods temos ativos do wp.
Na imagem acima podemos ver que temos 1 pod de mysql e 1 pod de php que é o nosso wp, podemos ver isso também através do comando oc.
Ex:
vander@llghost:~$ oc get pods
NAME READY STATUS RESTARTS AGE
mysql-1-i9tl5 1/1 Running 0 23h
wp-2-k0g8h 1/1 Running 0 23h
Então para escalarmos o pod de web executamos o oc da seguinte forma:
$ oc autoscale dc/<deploymentConfig> --min<minimo-pods> --max<máximo-pods> --cpu-percent<porcentagem-a-ser-atingida-de-cpu>
Ex:
vander@llghost:~$ oc autoscale dc/wp --min=2 --max=5 --cpu-percent=65
deploymentconfig "wp" autoscaled
Com o comando acima estamos dizendo para o autoscaling que queremos ter no mínimo 2 pods em execução e caso eles venham a atingir a marca de 65% de uso de cpu que escale para até 5 pods.
Vamos ver como ficou isso no portal?
E na CLI?
vander@llghost:~$ oc get pods
NAME READY STATUS RESTARTS AGE
mysql-1-i9tl5 1/1 Running 0 23h
wp-2-k0g8h 1/1 Running 0 23h
wp-2-rlc4c 1/1 Running 0 5m
Vejam que agora temos 2 pods rodando para minha aplicação web (wp-2-k0g8h e wp-2-k0g8h).
6º Para visualizar as regras de autoscaling utilize o seguinte comando.
vander@llghost:~$ oc get hpa
NAME | REFERENCE | TARGET | CURRENT | MINPODS | MAXPODS | AGE |
wp | DeploymentConfig/wp/scale | 65% | 0% | 2 | 5 | 7m |
Comentários
0 comentário
Por favor, entre para comentar.