Comanda Kubectl Autoscale

Comanda Kubectl Autoscale



Kubernetes oferă capacitatea de autoscaling pentru a gestiona resursele în mod automat, fără interacțiune umană. Funcția de autoscale modifică automat numărul de noduri atunci când este necesar și economisește resurse. În acest articol, vom învăța cum să implementăm comanda „kubectl autoscale” și autoscaling „HorizontalPodScaler”. Acest tutorial învață acest concept important în detaliu. Să discutăm mai întâi ce este conceptul de autoscale kubectl și apoi să ne îndreptăm către procesul pas cu pas pentru o mai bună înțelegere. Acest articol este foarte util dacă sunteți nou în conceptul de autoscaling Kubernetes.

Ce este Kubectl Autoscale?

Autoscaling este caracteristica principală a cluster-ului Kubernetes, care face ca resursele să se actualizeze automat, fără bătaia de cap de a o face manual. Actualizarea manuală a resurselor solicitante este un proces care irosește foarte mult timp și resurse. Autoscaling Kubernetes oferă o facilitate automată de optimizare a resurselor.

Autoscaler poate crea și distruge numărul de noduri conform cerințelor. Autoscale reduce risipa de resurse. Autoscale Kubectl alege automat podurile care se execută în prezent în clusterul Kubernetes.







Există două tipuri de scalare: (1) HorizontalPodScaler și (2) Vertical scaler. Scalerul orizontal este diferit de scalatorul vertical. HorizontalPodScaler ajută la scăderea sau creșterea păstăilor atunci când este necesar. Pe de altă parte, scalatorul vertical utilizează resurse precum procesorul și memoria.



Iată toți pașii pe care îi puteți urma în sistemul dvs. și vedeți rezultatul pentru o mai bună înțelegere.



Pasul 1: Pornirea unui Cluster Minikube

În primul pas, porniți instrumentul minikube pentru a rula cluster-ul Kubernetes, astfel încât să putem executa comanda „kubectl autoscale”. Vă puteți configura nodurile, podurile și chiar un cluster în mediul Kubernetes folosind clusterul minikube. Pentru a face acest lucru, utilizați următoarea comandă pentru a menține minikube în modul activ:





~$ porniți minikube

După cum puteți vedea în următoarea captură de ecran de ieșire, această comandă activează clusterul minikube și face ca mediul Kubernetes să fie utilizabil:

Pasul 2: Obțineți detaliile podului

În acest pas, clusterul Kubernetes rulează cu succes. Acum, obținem detaliile podului în cluster. Podul din Kubernetes este o colecție de unități care împart resurse. Următorul script este executat prin rularea următoarei comenzi în clusterul dumneavoastră minikube:

~$ kubectl obține păstăi

Folosind comanda anterioară, care este „kubectl get pods”, putem obține lista tuturor pod-urilor care rulează în clusterul Kubernetes.

După executarea comenzii „get pods”, obținem următoarea ieșire:

  O captură de ecran a unui program de calculator Descriere generată automat cu încredere scăzută

Pasul 3: Obțineți implementările Pod

În comanda anterioară „kubectl get pods”, obținem detaliile pods-urilor. Acum, folosim comanda „get deployment” pentru a obține lista implementărilor create. Următorul script este executat în acest scop:

~$ kubectl obține implementări

După executarea comenzii, următoarea captură de ecran arată rezultatul:

Pasul 4: Implementarea autoscale

Comanda autoscale este utilizată pentru a face selecția automată a podurilor care rulează în cluster. Prin implementarea autoscale-ului în cluster, inserăm și terminăm automat numărul de noduri. Următorul script este executat în clusterul minikube și arată numele fișierului, podurile minime și podurile maxime unde podurile ar trebui să fie între 2 și 10:

~$ implementare autoscale kubectl nginx1-deployment1 --min = 2 --max = 10

După executarea comenzii, este generată următoarea ieșire:

Pasul 5: creați un fișier YAML Kubernetes

În acest pas, veți învăța să creați fișierul YAML în cluster. Fișierul YAML este util pentru implementare și testarea aplicației. Există diferite tipuri în Kubernetes pentru a crea și edita fișierul.

În acest articol, folosim comanda „nano” pentru a crea fișierul YAML, deoarece este cea mai ușoară modalitate și cea mai bună alegere pentru începători.

Urmați pașii indicați aici pentru a crea un fișier YAML folosind nano:

  • Pentru a crea un fișier nou sau a schimba unul existent, navigați la locația de director dorită.
  • Introduceți „nano”. După aceea, scrieți numele fișierului. De exemplu, dacă doriți să creați un nume de fișier nou, notați numele – „deploo.yaml”.

Rulați următorul script și creați un fișier YAML în directorul proiectului:

~$ nano deploo.yaml

După crearea fișierului „deploo.yaml”, următorul pas este configurarea fișierului YAML. Îl explicăm în pasul următor.

Pasul 6: conținutul fișierului YAML

În acest pas, putem configura cu ușurință serverul Apache și fișierele PHP. Înainte de a utiliza HorizontalPodScaler, trebuie să configuram monitorul sarcinii de lucru. După cum arată următorul cod tip:deployment, portul browserului web este 90 și limita CPU este de 200m.

Puteți vedea informațiile complete despre fișierul „deploo.yaml” aici:

apiVersion : aplicații/v1
drăguț
: Implementare
metadate
:
Nume
: php
spec
:
selector
:
matchLabels
:
alerga
: php-apache
șablon
:
metadate
:
etichete
:
alerga
: php-apache
spec
:
containere
:
- Nume
: php
imagine
: registry.k8s.io/hpa-example
porturi
:
- containerPort
: 90
resurse
:
limite
:
CPU
: 200m
cereri
:

CPU
: 100m
---
apiVersion
: v1
drăguț
: Serviciu
metadate
:
Nume
: php
etichete
:
alerga
: php-apache
spec
:
porturi
:
- port
: 70
selector
:
alerga
: php-apache

Pasul 7: Creați implementarea

În acest pas, să creăm fișierul YAML numit „deploo.yaml”. Următorul script este executat în clusterul minikube:

~$ kubectl create -f deploo.yaml

Ieșirea comenzii menționate mai sus pe care am executat-o ​​poate fi văzută în captura de ecran care urmează. Ieșirea indică faptul că fișierul YAML a fost creat:

Pasul 8: Creați HorizontalPodScaler

În acest pas, vă vom arăta comanda pentru a crea HorizontalPodAutoscaler. Podurile sunt introduse și terminate automat în funcție de cerere. Este diferit de scalarea verticală, prin care CPU-ul și resursele de memorie sunt alocate prin autoscale. Următorul script este executat în clusterul minikube:

~$ kubectl implementare autoscale php -- CPU - la sută = cincizeci -- min = 10 – max = douăzeci

Aici, puteți vedea că am setat valorile pentru minim și maxim la 10 și 20.

Se atașează rezultatul comenzii anterioare:

Pasul 9: Verificați HorizontalPodScaler

În acest pas, verificăm starea actuală a HorizontalPodAutoscaler care este nou creat. Se execută următoarea comandă:

~$ kubectl obține hpa

Concluzie

Una dintre cele mai utile caracteristici ale Kubernetes este „kubectl autoscale” care oferă actualizări automate ale resurselor în clusterul Kubernetes. Autoscaler ajută atunci când un cluster trebuie să mărească podurile sau să le scadă. În acest articol, am învățat cele două metode de autoscale - una este autoscaler-ul implicit și cealaltă este HorizontalPodScaler.

Mai întâi, am desfășurat păstăile și le-am declarat. Apoi, am creat autoscaler-ul și am configurat serverul Apache pentru a implementa monitorul sarcinii de lucru înainte de HorizontalPodScaler. După aceea, am creat un fișier YAML și HorizontalPodScaler. Acest articol s-a concentrat pe pașii detaliați de creare, configurare și implementare a autoscale Kubernetes.