Setați limitele de resurse Kubernetes

Setati Limitele De Resurse Kubernetes



Limitele de resurse sunt o parte importantă a orchestrarii containerelor Kubernetes, deoarece asigură faptul că containerele nu consumă prea multe resurse sau nu devin neresponsive din cauza epuizării resurselor. Acest articol oferă un ghid despre cum să setați limitele resurselor containerului Kubernetes pentru a le maximiza beneficiile și a profita la maximum de aplicațiile dvs. Aflați cum să configurați și să gestionați resursele containerului dvs. rapid și ușor, cu doar câțiva pași simpli, astfel încât să puteți fi sigur că toate serviciile dumneavoastră funcționează fără probleme.

Setați limitele resurselor containerului în Kubernetes

Limitele de resurse ale containerului sunt un element esențial al Kubernetes, permițând utilizatorilor să gestioneze numărul de resurse pe care un container le poate consuma. Pentru a evita supraîncărcarea și a garanta performanța unei aplicații, acest lucru este deosebit de crucial în contexte de producție. Iată câteva sfaturi profesioniste pentru a seta limitele resurselor containerului:







Începeți prin a determina resursele de care au nevoie containerele dvs. Analizați modul de utilizare a sistemului și determinați ce containere ar trebui să aibă limitele de memorie și CPU ajustate. De asemenea, este important să luați în considerare nodurile de bază atunci când setați limitele resurselor - dacă setați o limită prea mare sau prea mică, nodul ar putea să nu poată rula celelalte aplicații fără să se blocheze. Apoi, decideți ce tip de limită doriți să utilizați - burstable sau non-burstable. Acum, să vedem pașii necesari pe care îi puteți urma pentru a seta limitele resurselor containerului Kubernetes. Înainte de a merge spre pași, există câteva condiții prealabile necesare:



Cerințe preliminare

Înainte de a trece la pași, să ne asigurăm că sistemul nostru îndeplinește toate nevoile cerințelor preliminare. Asigurați-vă că aveți Ubuntu 20.04 sau orice altă versiune cea mai recentă pentru a avea un mediu Linux/Unix pentru a funcționa, cluster Kubernetes, CLI Kubectl pentru a utiliza comenzile kubectl, comunicarea cluster, gestionați mediul de dezvoltare și minikube sau orice alt loc de joacă Kubernetes pentru a crea clustere. Instalați aceste instrumente dacă nu le-ați instalat încă înainte de a trece la următoarea secțiune. Acum, trecem la ghidul pas cu pas despre cum să setăm limitele resurselor containerului Kubernetes.



Cum să setați limitele de resurse Kubernetes

Setarea limitelor de resurse pentru containerul Kubernetes este o parte importantă a gestionării și întreținerii clusterelor dvs. Kubernetes. Având o limită adecvată de resurse, asigură că fiecare container funcționează optim, fără a compromite performanța altor containere sau a întregului cluster. Acest lucru se poate face prin stabilirea cererilor de resurse și a limitelor pentru CPU, memorie, stocare efemeră și multe altele. Iată cum să setați corect limitele resurselor containerului Kubernetes.





Pasul 1: Porniți Minikube

Clusterul Minikube trebuie să fie într-o stare activă, astfel încât să puteți rula aplicațiile sau comenzile în el. Pentru a vă asigura că funcționează și funcționează corect, utilizați următoarea comandă dată:



> porniți minikube

Pasul 2: Activați serverul de metrici

În acest pas, împărtășim comanda care vă permite să activați serverul de metrici. Comanda este dată în următoarele:

> suplimente minikube permite metrics-server

Pasul 3: Verificați dacă serverul de metrici este activ sau nu

Tastați următoarea comandă pentru a verifica dacă serverul de metrică este activ sau nu:

> kubectl obține apiservices

După cum se vede în imaginea anterioară, conține o referință la metrics.k8s.io în cazul în care API-ul pentru metrici de resurse este accesibil.

Pasul 4: Creați un spațiu de nume

Pentru a păstra resursele, creați un spațiu de nume pentru acest exercițiu, care este separat de restul clusterului dvs. Acum demonstrăm cum să creați un spațiu de nume. Comanda care efectuează este dată după cum urmează:

> kubectl creează spațiu de nume ABC

Pasul 5: Creați un fișier de configurare

Fișierul de configurare YAML pe care îl folosim pentru a construi un pod în container este creat în acest pas. Iată comanda care este folosită pentru a realiza acest lucru:

> nano reqlimit.yaml

Aici, trebuie să includeți o solicitare CPU împreună cu o limită CPU. Includeți resurse:limite pentru a defini o limită CPU. În acest caz, este creat un Pod cu un singur container. Containerul are o limită de solicitare de 0,5 CPU și maxim 1 CPU. Fișierul de configurare al podului este disponibil aici. După cum puteți vedea, secțiunea args a fișierului de configurare conține argumentele pe care le folosește containerul când pornește. Containerul este instruit să încerce să utilizeze cele 2 procesoare prin intermediul parametrului -cpus „2”.

Când creați resurse în Kubernetes, cum ar fi implementări și poduri, este important să specificați numărul minim de resurse necesare (cerere) și numărul maxim de resurse permise (limită) pentru fiecare pod sau implementare. Acest lucru împiedică orice pod să consume prea multe resurse, ceea ce ar putea face ca celelalte poduri active să sufere din cauza performanței scăzute sau chiar să se blocheze din cauza lipsei de resurse disponibile pe cluster.

Pasul 6: Creați un Pod

Acum, vă arătăm cum să creați podul cu următoarea comandă:

> kubectl crea -f reqlimit.yaml

Din rezultatul dat anterior, puteți observa că podul numit „cpu-demo” este creat.

Pasul 7: Verificați podul

În acest pas, verificăm dacă podul creat este activ sau nu cu următoarea comandă:

> kubectl obține pod cpu-demo --namespace =abc

Pasul 8: Vizualizați detaliile podului

Acum, dacă doriți să vizualizați informații detaliate despre Pod, iată comanda care ar trebui să fie executată:

> kubectl obține pod cpu-demo --ieșire =yaml --namespace =abc

Pasul 9: Ștergeți podul

Aici, vom arăta cum să ștergeți podul pentru a curăța resursele. Comanda folosită în acest scop este următoarea:

> kubectl șterge pod cpu-demo --namespace =abc

Pasul 10: Creați un fișier de configurare

În acest pas, creăm un fișier de configurare. Acest fișier specifică o solicitare CPU care este destul de mare pentru nodurile dvs.

> nano reqlimit2

Fișierul de configurare cu un singur container poate fi găsit aici. Containerul solicită 100 de procesoare, ceea ce este mai mult decât orice nod pe care clusterul dumneavoastră îl poate furniza în mod rezonabil.

Pasul 11: Cre A te Pod

În acest pas, creăm podul cu următoarea comandă:

> kubectl crea -f reqlimit2.yaml

Pasul 12: Vizualizați starea podului

Acum, puteți vedea st A tus din pod cu comanda care este atașată aici:

Ieșirea arată că starea Pod este în așteptare.

Pasul 13: Consultați informațiile pod

Acum, vedem informații detaliate despre Pod, inclusiv evenimentele cu comanda dată aici:

Accesați secțiunea de evenimente și vedeți dacă containerul este programat sau nu.

Dacă nu poate fi programat și motivul este resursele CPU insuficiente, puteți șterge nodul. Cum să ștergeți un nod este explicat în pasul următor.

Etapa 14: Ștergeți nodul

Puteți șterge nodul cu următoarea comandă:

> kubectl șterge pod cpu-demo- 2 --namespace =abc

Care este impactul limitelor de resurse ale containerelor asupra performanței?

Odată cu popularitatea tot mai mare a tehnologiei containerelor Kubernetes, este important să înțelegem modul în care limitele resurselor pot afecta performanța. Setarea limitelor de resurse în interiorul unui container Kubernetes vă poate ajuta să vă asigurați că aplicațiile dvs. rulează la nivelul lor optim și că nu consumă prea multe resurse de la serverul gazdă. Limitând resursele, puteți evita procesele redundante irosite, puteți ajuta la prevenirea blocării sistemului din cauza utilizării și puteți optimiza performanța containerelor dumneavoastră.

Pentru a seta aceste limite de resurse într-un container Kubernetes, trebuie să utilizați un instrument numit cgroups (grupuri de control). Grupurile C permit administratorilor să limiteze resursele, cum ar fi ciclurile CPU sau utilizarea memoriei pentru containere individuale. De asemenea, puteți seta ceilalți parametri, cum ar fi dimensiunea maximă a fișierelor sau utilizarea lățimii de bandă a rețelei per container.

Concluzie

Stabilirea limitelor de resurse pentru containerele Kubernetes este o parte esențială a gestionării mediului dvs. de cloud computing. Cu o configurație adecvată, vă puteți asigura că fiecare container are acces la resursele de care are nevoie, dar nu atât de mult încât să afecteze alte containere sau sisteme. Acest lucru permite o utilizare mai eficientă și mai rentabilă a resurselor de calcul. În plus, limitând cantitatea de memorie sau CPU pe care o poate consuma un container, puteți preveni întreruperile din cauza proceselor neașteptate sau a unor vârfuri neașteptate de utilizare.