Què és Kubectl Autoscale?
L'escala automàtica és la característica principal del clúster de Kubernetes que fa que els recursos s'actualitzin automàticament sense la molèstia de fer-ho manualment. És un procés molt de malbaratament de temps i recursos per actualitzar manualment els recursos exigents. L'escalat automàtic de Kubernetes proporciona una instal·lació automàtica per optimitzar els recursos.
Autoscaler pot crear i destruir el nombre de nodes segons el requisit. Autoscale redueix el malbaratament de recursos. L'escala automàtica de Kubectl tria automàticament els pods que s'estan executant actualment dins del clúster de Kubernetes.
Hi ha dos tipus d'escala: (1) HorizontalPodScaler i (2) Vertical. L'escalador horitzontal és diferent de l'escalador vertical. L'HorizontalPodScaler ajuda a disminuir o augmentar les beines quan sigui necessari. D'altra banda, l'escalador vertical utilitza recursos com la CPU i la memòria.
A continuació, es mostren tots els passos que podeu seguir al vostre sistema i veure'n la sortida per a una millor comprensió.
Pas 1: inici d'un clúster Minikube
En el primer pas, inicieu l'eina minikube per executar el clúster Kubernetes de manera que puguem executar l'ordre 'kubectl autoscale'. Podeu configurar els vostres nodes, pods i fins i tot un clúster a l'entorn de Kubernetes mitjançant el clúster minikube. Per fer-ho, utilitzeu l'ordre següent per mantenir el minikube en mode actiu:
~$ iniciar minikube
Com podeu veure a la següent captura de pantalla de sortida, aquesta ordre habilita el clúster minikube i fa que l'entorn Kubernetes sigui utilitzable:
Pas 2: obteniu els detalls del pod
En aquest pas, el clúster de Kubernetes s'està executant correctament. Ara, obtenim els detalls del pod al clúster. El pod de Kubernetes és la col·lecció d'unitats que comparteix recursos. El següent script s'executa executant l'ordre següent al vostre clúster minikube:
~$ kubectl obtenir beinesMitjançant l'ordre anterior que és 'kubectl get pods', podem obtenir la llista de tots els pods que s'executen al clúster Kubernetes.
Després d'executar l'ordre 'get pods', obtenim la següent sortida:
Pas 3: obteniu els desplegaments de Pod
A l'ordre anterior 'kubectl get pods', obtenim els detalls dels pods. Ara, utilitzem l'ordre 'obté desplegament' per obtenir la llista dels desplegaments creats. Amb aquest propòsit s'executa l'script següent:
~$ kubectl aconsegueix desplegamentsDesprés d'executar l'ordre, la següent captura de pantalla mostra la sortida:
Pas 4: desplegament d'escala automàtica
L'ordre d'escala automàtica s'utilitza per fer la selecció d'automatització dels pods que s'executen al clúster. En desplegar l'escala automàtica al clúster, inserim i acabem automàticament el nombre de nodes. El següent script s'executa al clúster minikube i mostra el nom del fitxer, els pods mínims i els pods màxims on els pods han d'estar entre 2 i 10:
~$ desplegament d'escala automàtica de kubectl nginx1-deployment1 --min = 2 --màx = 10Després d'executar l'ordre, es genera la següent sortida:
Pas 5: creeu un fitxer YAML de Kubernetes
En aquest pas, aprendràs a crear el fitxer YAML al clúster. El fitxer YAML és útil per al desplegament i les proves d'aplicacions. Hi ha diversos tipus a Kubernetes per crear i editar el fitxer.
En aquest article, utilitzem l'ordre 'nano' per crear el fitxer YAML perquè és la manera més fàcil i la millor opció per als principiants.
Seguiu els passos indicats aquí per crear un fitxer YAML amb nano:
- Per crear un fitxer nou o canviar-ne un existent, navegueu a la ubicació del directori desitjada.
- Escriviu 'nano'. Després d'això, escriviu el nom del fitxer. Per exemple, si voleu crear un nom de fitxer nou, escriviu el nom: 'deploo.yaml'.
Executeu l'script següent i creeu un fitxer YAML al directori del projecte:
~$ nano deploo.yamlDesprés de crear el fitxer 'deploo.yaml', el següent pas és configurar el fitxer YAML. Ho expliquem en el següent pas.
Pas 6: contingut del fitxer YAML
En aquest pas, podem configurar fàcilment el servidor Apache i els fitxers PHP. Abans d'utilitzar HorizontalPodScaler, hem de configurar el monitor de càrrega de treball. Com el següent fragment de codi mostra el tipus: desplegament, el port del navegador web és 90 i el límit de la CPU és de 200 m.
Podeu veure la informació completa del fitxer 'deploo.yaml' aquí:
apiVersion : aplicacions/v1amable : Desplegament
metadades :
nom : php
especificació :
selector :
matchLabels :
correr : php-apache
plantilla :
metadades :
etiquetes :
correr : php-apache
especificació :
contenidors :
- nom : php
imatge : registry.k8s.io/hpa-example
ports :
- Port de contenidors : 90
recursos :
límits :
CPU : 200 m
peticions :
CPU : 100 m
---
apiVersion : v1
amable : Servei
metadades :
nom : php
etiquetes :
correr : php-apache
especificació :
ports :
- port : 70
selector :
correr : php-apache
Pas 7: creeu el desplegament
En aquest pas, creem el fitxer YAML anomenat 'deploo.yaml'. El següent script s'executa al clúster minikube:
~$ kubectl create -f deploo.yamlLa sortida de l'ordre esmentada que hem executat es pot veure a la captura de pantalla que segueix. La sortida indica que s'ha creat el fitxer YAML:
Pas 8: creeu l'HorizontalPodScaler
En aquest pas, us mostrarem l'ordre per crear l'HorizontalPodAutoscaler. Les beines s'insereixen i s'acaben automàticament en funció de la demanda. És diferent de l'escala vertical, per la qual la CPU i els recursos de memòria s'assignen mitjançant l'escala automàtica. El següent script s'executa al clúster minikube:
~$ desplegament d'escala automàtica kubectl php -- CPU - per cent = 50 -- min = 10 -màx = 20Aquí podeu veure que establim els valors de mínim i màxim a 10 i 20.
S'adjunta la sortida de l'ordre anterior:
Pas 9: comproveu HorizontalPodScaler
En aquest pas, comprovem l'estat actual de HorizontalPodAutoscaler que s'ha creat recentment. S'executa l'ordre següent:
~$ kubectl obtenir hpaConclusió
Una de les funcions més útils de Kubernetes és l''escala automàtica de kubectl', que proporciona actualitzacions automàtiques de recursos al clúster de Kubernetes. Autoscaler ajuda quan un clúster necessita augmentar les beines o disminuir-les. En aquest article, hem après els dos mètodes d'escala automàtica: un és l'escalador automàtic predeterminat i l'altre és l'HorizontalPodScaler.
Primer, vam desplegar les beines i les vam declarar. Aleshores, vam crear l'autoscaler i vam configurar el servidor Apache per desplegar el monitor de càrrega de treball abans que HorizontalPodScaler. Després d'això, vam crear un fitxer YAML i HorizontalPodScaler. Aquest article es va centrar en els passos detallats per crear, configurar i desplegar el Kubernetes a escala automàtica.