{"id":82920,"date":"2020-05-26T13:42:37","date_gmt":"2020-05-26T11:42:37","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov"},"modified":"2020-05-26T13:42:37","modified_gmt":"2020-05-26T11:42:37","slug":"luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","title":{"rendered":"Cele mai bune practici Kubernetes. Configurarea cererilor \u0219i limitelor de resurse","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502052\/\">Cele mai bune practici Kubernetes. Crearea de containere mici<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502320\/\">Cele mai bune practici Kubernetes. Organizarea Kubernetes cu spa\u021bii de nume<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502430\/\">Cele mai bune practici Kubernetes. Verificarea livrabilit\u0103\u021bii Kubernetes cu teste de Readiness \u0219i Liveness<\/a><\/noindex><\/p>\n<p>Pentru fiecare resurs\u0103 Kubernetes exist\u0103 posibilitatea de a configura dou\u0103 tipuri de cerin\u021be - Requests \u0219i Limits. Primul descrie cerin\u021bele minime de disponibilitate a resurselor nodului, necesare pentru a rula un container sau un pod, iar al doilea limiteaz\u0103 strict resursele disponibile pentru container. <\/p>\n<p>C\u00e2nd Kubernetes planific\u0103 un pod, este foarte important ca containerele s\u0103 aib\u0103 suficiente resurse pentru a func\u021biona corect. Dac\u0103 inten\u021biona\u021bi s\u0103 desf\u0103\u0219ura\u021bi o aplica\u021bie mare pe un nod cu resurse limitate, este posibil ca aceasta s\u0103 nu func\u021bioneze din cauza faptului c\u0103 nodul r\u0103m\u00e2ne f\u0103r\u0103 memorie sau nu are suficiente puteri de procesare. \u00cen acest articol, vom explora cum putem rezolva problemele de insuficien\u021b\u0103 a puterilor de calcul prin cerin\u021be de resurse \u0219i limit\u0103ri.<\/p>\n<p>Cerin\u021bele Requests \u0219i limit\u0103rile Limits sunt mecanismele pe care Kubernetes le folose\u0219te pentru a gestiona resursele, precum procesorul \u0219i memoria. Requests reprezint\u0103 ceea ce asigur\u0103 c\u0103 un container prime\u0219te resursa solicitat\u0103. Dac\u0103 un container solicit\u0103 o resurs\u0103, Kubernetes o va planifica doar pe nodul care poate oferi aceasta. Limit\u0103rile Limits controleaz\u0103 faptul c\u0103 resursele solicitate de container nu vor dep\u0103\u0219i niciodat\u0103 o valoare specificat\u0103.<\/p>\n<p><img decoding=\"async\" alt=\"Cele mai bune practici Kubernetes. Configurarea cererilor \u0219i limitelor de resurse\" src=\"\/wp-content\/uploads\/2020\/05\/047fc1c3dddef1f33be78616ad70d62f.png\" style=\"display:block;margin: 0 auto;\" \/><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Un container poate cre\u0219te puterile de calcul doar p\u00e2n\u0103 la un anumit prag, dup\u0103 care va fi limitat. S\u0103 vedem cum func\u021bioneaz\u0103 acest lucru. A\u0219adar, exist\u0103 dou\u0103 tipuri de resurse - procesor \u0219i memorie. Planificatorul Kubernetes folose\u0219te date despre aceste resurse pentru a determina unde s\u0103 ruleze podurile dvs. O specifica\u021bie tipic\u0103 a resurselor pentru un pod arat\u0103 a\u0219a.<\/p>\n<p><img decoding=\"async\" alt=\"Cele mai bune practici Kubernetes. Configurarea cererilor \u0219i limitelor de resurse\" src=\"\/wp-content\/uploads\/2020\/05\/84f1212f7098d25273217d4218d661f2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nFiecare container dintr-un pod poate stabili propriile cerin\u021be \u0219i limite, totul fiind aditiv. Resursele de procesor sunt definite \u00een milicores. Dac\u0103 containerul dumneavoastr\u0103 necesit\u0103 dou\u0103 nuclee complete pentru a func\u021biona, seta\u021bi valoarea la 2000m. Dac\u0103, \u00een schimb, containerul are nevoie doar de 1\/4 dintr-un nucleu, valoarea va fi de 250m. Re\u021bine\u021bi c\u0103, dac\u0103 atribui\u021bi o valoare a resurselor de procesor care dep\u0103\u0219e\u0219te num\u0103rul de nuclee ale celui mai mare nod, lansarea podului nu va fi planificat\u0103 deloc. O situa\u021bie similar\u0103 va ap\u0103rea dac\u0103 ave\u021bi un pod care necesit\u0103 patru nuclee, iar clusterul Kubernetes const\u0103 doar din dou\u0103 ma\u0219ini virtuale principale.<\/p>\n<p>Numai dac\u0103 aplica\u021bia dumneavoastr\u0103 nu este dezvoltat\u0103 special pentru a profita de avantajele mai multor nuclee (g\u00e2ndindu-ne aici la programe precum calculele \u0219tiin\u021bifice complexe \u0219i opera\u021biile cu baze de date), cea mai bun\u0103 practic\u0103 este s\u0103 seta\u021bi cerin\u021bele CPU la 1 sau mai pu\u021bin, urmat\u0103 de lansarea unui num\u0103r mai mare de replici pentru scalabilitate. Aceast\u0103 solu\u021bie va oferi sistemului mai mult\u0103 flexibilitate \u0219i fiabilitate.<\/p>\n<p>C\u00e2nd vine vorba de limitele procesorului, lucrurile devin mai interesante, deoarece acesta este considerat un resurs\u0103 comprimabil\u0103. Dac\u0103 aplica\u021bia dumneavoastr\u0103 \u00eencepe s\u0103 se apropie de limita puterii procesorului, Kubernetes va \u00eencepe s\u0103 limiteze containerul folosind CPU Throttling \u2014 reducerea frecven\u021bei procesorului. Aceasta \u00eenseamn\u0103 c\u0103 procesorul va fi restric\u021bionat artificial, oferind aplica\u021biei, poten\u021bial, o performan\u021b\u0103 mai slab\u0103, totu\u0219i procesul nu va fi oprit sau eliminat. <\/p>\n<p>Resursele de memorie sunt definite \u00een byte. De obicei, valoarea din set\u0103ri este m\u0103surat\u0103 \u00een mebibitei Mib, dar pute\u021bi seta orice valoare, de la byte la petabyte. Aici se aplic\u0103 aceea\u0219i situa\u021bie ca \u0219i \u00een cazul CPU \u2014 dac\u0103 solicita\u021bi o cantitate de memorie care dep\u0103\u0219e\u0219te capacitatea de memorie a nodurilor dumneavoastr\u0103, execu\u021bia acestui pod nu va fi planificat\u0103. Dar, spre deosebire de resursele de procesor, memoria nu este comprimabil\u0103, deoarece nu exist\u0103 nicio modalitate de a-i limita utilizarea. Prin urmare, execu\u021bia containerului va fi oprit\u0103 imediat ce acesta dep\u0103\u0219e\u0219te limita de memorie alocat\u0103.<\/p>\n<p><img decoding=\"async\" alt=\"Cele mai bune practici Kubernetes. Configurarea cererilor \u0219i limitelor de resurse\" src=\"\/wp-content\/uploads\/2020\/05\/a2b372ad9de7e065b435dae87ee62708.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEste important s\u0103 re\u021bine\u021bi c\u0103 nu pute\u021bi configura cereri care dep\u0103\u0219esc dimensiunea resurselor pe care nodurile dvs. le pot oferi. Specifica\u021biile resurselor comune pentru ma\u0219inile virtuale GKE pot fi g\u0103site pe linkurile afi\u0219ate sub acest videoclip.<\/p>\n<p>\u00centr-o lume ideal\u0103, set\u0103rile implicite ale containerului ar fi suficiente pentru ca fluxurile de lucru s\u0103 decurg\u0103 f\u0103r\u0103 probleme. \u00cens\u0103, \u00een realitate, lucrurile nu sunt at\u00e2t de simple, oamenii pot uita cu u\u0219urin\u021b\u0103 s\u0103 configureze utilizarea resurselor sau hackerii ar putea stabili cereri \u0219i limite care dep\u0103\u0219esc capacit\u0103\u021bile reale ale infrastructurii. Pentru a preveni dezvoltarea unor astfel de scenarii, este posibil s\u0103 configura\u021bi cotele de resurse ResourceQuota \u0219i intervalele de limitare LimitRange.<\/p>\n<p>Dup\u0103 crearea spa\u021biilor de nume, acestea pot fi blocate prin cote. De exemplu, dac\u0103 ave\u021bi spa\u021bii de nume prod \u0219i dev, se folose\u0219te un model \u00een care cotele pentru produc\u021bie lipsesc complet, iar cotele pentru dezvoltare sunt foarte stricte. Acest lucru permite mediului prod s\u0103 preia toate resursele disponibile \u00een cazul unei cre\u0219teri bru\u0219te a traficului, bloc\u00e2nd complet mediul dev.<\/p>\n<p>Cota resurselor poate ar\u0103ta astfel. \u00cen acest exemplu, sunt 4 sec\u021biuni - acestea sunt cele 4 linii de cod inferioare.<\/p>\n<p><img decoding=\"async\" alt=\"Cele mai bune practici Kubernetes. Configurarea cererilor \u0219i limitelor de resurse\" src=\"\/wp-content\/uploads\/2020\/05\/569f4ddde6ad46c707e91cc05947fc6b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nS\u0103 analiz\u0103m fiecare dintre ele. Requests.cpu reprezint\u0103 num\u0103rul maxim de cereri combinate de capacitate de procesor care pot proveni de la toate containerele din spa\u021biul de nume. \u00cen acest exemplu, pute\u021bi avea 50 de containere cu cereri de 10m, cinci containere cu cereri de 100m sau pur \u0219i simplu un singur container cu cerere de 500m. At\u00e2ta timp c\u00e2t cantitatea total\u0103 de requests.cpu pentru acest spa\u021biu de nume este mai mic\u0103 de 500m, totul va fi \u00een regul\u0103.<\/p>\n<p>Memoria solicitat\u0103 requests.memory este cantitatea maxim\u0103 combinat\u0103 de cereri de memorie pe care toate containerele din spa\u021biul de nume o pot avea. La fel ca \u00een cazul precedent, pute\u021bi avea 50 de containere cu 2 MiB, cinci containere cu 20 MiB sau un singur container cu 100 MiB at\u00e2ta timp c\u00e2t cantitatea total\u0103 de memorie solicitat\u0103 \u00een spa\u021biul de nume este mai mic\u0103 de 100 mebibai.<\/p>\n<p>Limits.cpu reprezint\u0103 valoarea maxim\u0103 combinat\u0103 de capacitate de procesor pe care toate containerele din spa\u021biul de nume o pot utiliza. Se poate considera c\u0103 acesta este pragul cererilor de capacitate de procesor.<\/p>\n<p>\u00cen cele din urm\u0103, limits.memory reprezint\u0103 volumul maxim de memorie total\u0103 pe care toate containerele din spa\u021biul de nume \u00eel pot utiliza. Aceasta este o limitare a cererilor de memorie aggregate.<br \/>\nA\u0219adar, prin default, containerele din clusterul Kubernetes func\u021bioneaz\u0103 cu resurse computa\u021bionale nelimitate. Prin intermediul cotelor de resurse, administratorii clusterului pot restric\u021biona consumul de resurse \u0219i crearea acestora pe baza spa\u021biului de nume. \u00cen spa\u021biul de nume, un modul pod sau un container poate consuma at\u00e2ta putere CPU \u0219i memorie c\u00e2t este definit \u00een cota de resurse a spa\u021biului de nume. Totu\u0219i, exist\u0103 temerea c\u0103 un singur pod sau container ar putea monopoliza toate resursele disponibile. Pentru a preveni aceast\u0103 situa\u021bie, se folose\u0219te intervalul limit\u0103 Limit Range \u2013 o politic\u0103 de restric\u021bionare a distribu\u021biei resurselor (pentru poduri sau containere) \u00een spa\u021biul de nume.<\/p>\n<p>Intervalul limit\u0103 ofer\u0103 restric\u021bii care pot:<\/p>\n<ul>\n<li>asigura utilizarea minim\u0103 \u0219i maxim\u0103 a resurselor computa\u021bionale pentru fiecare modul sau container din spa\u021biul de nume;<\/li>\n<li>for\u021ba utilizarea unei cereri de stocare Storage Request minim\u0103 \u0219i maxim\u0103 pentru fiecare PersistentVolumeClaim din spa\u021biul de nume;<\/li>\n<li>for\u021ba stabilirea unei rela\u021bii \u00eentre cererea Request \u0219i limita Limit pentru resursa din spa\u021biul de nume;<\/li>\n<li>stabili Requests\/Limits ca valori implicite pentru resursele computa\u021bionale \u00een spa\u021biul de nume \u0219i s\u0103 le introduc\u0103 automat \u00een containere \u00een timpul execu\u021biei.<\/li>\n<\/ul>\n<p>\nAstfel, pute\u021bi crea un interval limit\u0103 \u00een spa\u021biul dumneavoastr\u0103 de nume. Spre deosebire de cotele care se aplic\u0103 \u00eentregului spa\u021biu de nume, Limit Range se utilizeaz\u0103 pentru containere individuale. Acest lucru poate preveni crearea de c\u0103tre utilizatori a unor containere foarte mici sau, dimpotriv\u0103, gigantice, \u00een interiorul spa\u021biului de nume. Intervalul limit\u0103 Limit Range poate ar\u0103ta astfel. <\/p>\n<p><img decoding=\"async\" alt=\"Cele mai bune practici Kubernetes. Configurarea cererilor \u0219i limitelor de resurse\" src=\"\/wp-content\/uploads\/2020\/05\/3fb358788910ca21e267a887032cdf1a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLa fel ca \u0219i \u00een cazul anterior, aici putem distinge 4 sec\u021biuni. S\u0103 examin\u0103m fiecare.<br \/>\n\u00cen sec\u021biunea default, se stabilesc restric\u021bii implicite pentru containerul din pod. Dac\u0103 stabili\u021bi aceste valori \u00een intervalul limit\u0103, orice containere pentru care aceste valori nu au fost stabilite explicit vor fi guvernate de valorile implicite.<\/p>\n<p>\u00cen sec\u021biunea defaultRequest se configureaz\u0103 cererile implicite pentru container \u00een pod. Din nou, dac\u0103 seta\u021bi aceste valori \u00een intervalul limit\u0103, containele pentru care aceste parametrii nu sunt specifica\u021bi explicit vor folosi aceste valori ca fiind implicite.<\/p>\n<p>\u00cen sec\u021biunea max sunt specificate limitele maxime care pot fi stabilite pentru container \u00een pod. Valorile din sec\u021biunea default \u0219i limitele pentru container nu pot fi setate mai sus dec\u00e2t aceast\u0103 limit\u0103. Este important de re\u021binut c\u0103 dac\u0103 este stabilit\u0103 o valoare max, iar sec\u021biunea default lipse\u0219te, atunci valoarea maxim\u0103 devine valoarea implicit\u0103.<\/p>\n<p>\u00cen sec\u021biunea min sunt specificate cerin\u021bele minime care pot fi stabilite pentru container \u00een pod. Astfel, valorile din sec\u021biunea default \u0219i cerin\u021bele pentru container nu pot fi setate mai jos dec\u00e2t aceast\u0103 limit\u0103.<\/p>\n<p>Din nou, este important de re\u021binut c\u0103 dac\u0103 aceast\u0103 valoare este setat\u0103, iar valoarea default nu este, atunci valoarea minim\u0103 devine cererea implicit\u0103.<\/p>\n<p>\u00cen cele din urm\u0103, aceste cereri de resurse sunt utilizate de programatorul Kubernetes pentru a executa sarcinile dvs. de munc\u0103. Pentru a putea configura corect containerele, este esen\u021bial s\u0103 \u00een\u021belege\u021bi cum func\u021bioneaz\u0103 acest lucru. S\u0103 presupunem c\u0103 dori\u021bi s\u0103 rula\u021bi mai multe module \u00een clusterul dvs. Presupun\u00e2nd c\u0103 specifica\u021biile pod-ului sunt valabile, Kubernetes va folosi un algoritm de balansare ciclic\u0103 pentru a alege un nod pentru a executa sarcina.<\/p>\n<p><img decoding=\"async\" alt=\"Cele mai bune practici Kubernetes. Configurarea cererilor \u0219i limitelor de resurse\" src=\"\/wp-content\/uploads\/2020\/05\/29abd097fc0158dfbb585c4617036ccf.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKubernetes va verifica dac\u0103 resursele de la nodul Node 1 sunt suficiente pentru a \u00eendeplini cerin\u021bele containerelor din pod, iar dac\u0103 nu este cazul, va trece la urm\u0103torul nod. Dac\u0103 niciunul dintre nodurile din sistem nu poate satisface cerin\u021bele, pod-urile vor trece \u00een starea de a\u0219teptare Pending state. Prin func\u021bionalit\u0103\u021bile Google Kubernetes Engine, cum ar fi scalarea automat\u0103 a nodurilor, GKE poate determina automat starea de a\u0219teptare \u0219i poate crea c\u00e2teva noduri suplimentare. <\/p>\n<p>Dac\u0103 ulterior apare o capacitate excesiv\u0103 la noduri, func\u021bia de scalare automat\u0103 va reduce num\u0103rul acestora pentru a economisi bani. De aceea, Kubernetes planific\u0103 pod-urile pe baza cererilor. Cu toate acestea, limita poate fi mai mare dec\u00e2t cererile \u0219i, \u00een unele cazuri, un nod poate s\u0103 r\u0103m\u00e2n\u0103 f\u0103r\u0103 resurse. Numim aceast\u0103 stare overcommitment state.<\/p>\n<p><img decoding=\"async\" alt=\"Cele mai bune practici Kubernetes. Configurarea cererilor \u0219i limitelor de resurse\" src=\"\/wp-content\/uploads\/2020\/05\/995c906880f09734c4765519f1f2465d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA\u0219a cum am men\u021bionat, c\u00e2nd vine vorba de procesor, Kubernetes va \u00eencepe s\u0103 limiteze pod-urile. Fiecare pod va primi at\u00e2t c\u00e2t a cerut, dar dac\u0103 nu atinge limita, se va \u00eencepe aplicarea throttling-ului. <\/p>\n<p>\u00cen ceea ce prive\u0219te resursele de memorie, Kubernetes este nevoit s\u0103 ia decizii cu privire la ce pod-uri s\u0103 \u0219terg\u0103 \u0219i care s\u0103 r\u0103m\u00e2n\u0103, p\u00e2n\u0103 c\u00e2nd elibera\u021bi resursele sistemului, altfel \u00eentreaga sistem va ceda.<\/p>\n<p>S\u0103 ne imagin\u0103m un scenariu \u00een care ave\u021bi o ma\u0219in\u0103 care a atins limita de memorie \u2013 cum va ac\u021biona Kubernetes \u00een acest caz? <\/p>\n<p>Kubernetes va c\u0103uta pod-urile care utilizeaz\u0103 mai multe resurse dec\u00e2t au solicitat. A\u0219adar, dac\u0103 containerele dvs. nu au cereri deloc, aceasta \u00eenseamn\u0103 c\u0103, implicit, utilizeaz\u0103 mai mult dec\u00e2t au cerut, pur \u0219i simplu pentru c\u0103 nu au cerut deloc nimic! Aceste containere devin principalii candida\u021bi pentru a fi dezactivate. Urm\u0103toarele candida\u021bi sunt containerele care au satisf\u0103cut toate cerin\u021bele, dar se afl\u0103 \u00eenc\u0103 sub limita maxim\u0103. <\/p>\n<p>A\u0219adar, dac\u0103 Kubernetes g\u0103se\u0219te mai multe pod-uri care dep\u0103\u0219esc parametrii cererilor lor, le va sorta \u00een func\u021bie de prioritate \u0219i apoi va elimina modulele cu prioritate mai mic\u0103. Dac\u0103 toate modulele au aceea\u0219i prioritate, Kubernetes va opri pod-urile care au dep\u0103\u0219it cererile lor mai mult dec\u00e2t celelalte pod-uri. <\/p>\n<p>\u00cen foarte rare ocazii, Kubernetes poate \u00eentrerupe pod-uri care sunt \u00eenc\u0103 \u00een limitele cererilor lor. Acest lucru poate ap\u0103rea atunci c\u00e2nd componentele critice ale sistemului, precum agentul Kubelet sau Docker, \u00eencep s\u0103 consume mai multe resurse dec\u00e2t au fost rezervate pentru ele. <br \/>\nA\u0219adar, \u00een etapele ini\u021biale ale activit\u0103\u021bii unor companii mici, un cluster Kubernetes poate func\u021biona bine f\u0103r\u0103 a stabili cereri de resurse \u0219i limite, dar pe m\u0103sur\u0103 ce echipele \u0219i proiectele dvs. \u00eencep s\u0103 creasc\u0103 \u00een dimensiune, risca\u021bi s\u0103 v\u0103 confrunta\u021bi cu probleme \u00een aceast\u0103 privin\u021b\u0103. Ad\u0103ugarea cererilor \u0219i limitelor \u00een modulele \u0219i spa\u021biile de nume necesit\u0103 foarte pu\u021bin efort suplimentar \u0219i v\u0103 poate scuti de multe griji.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/503488\/\"> Cele mai bune practici Kubernetes. Oprirea corect\u0103 Terminate<\/a><\/noindex><\/p>\n<p><center><div class=\"youtube-placeholder\" data-id=\"mxEvAPQRwhw\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/mxEvAPQRwhw\/hqdefault.jpg\" alt=\"Reda\u021bi video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<h3>Pu\u021bin publicitate \ud83d\ude42<\/h3>\n<p>\nMul\u021bumim c\u0103 r\u0103m\u00e2ne\u021bi cu noi. V\u0103 plac articolele noastre? Dori\u021bi s\u0103 vede\u021bi mai multe materiale interesante? Sus\u021bine\u021bi-ne, efectu\u00e2nd o comand\u0103 sau recomand\u00e2ndu-ne prietenilor, <noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/cloudvps\/nl\">VPS cloud pentru dezvoltatori de la 4,99 $<\/a><\/noindex>, <b>un echivalent unic pentru serverele entry-level, care a fost creat de noi pentru voi:<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/347386\/\">Toat\u0103 adev\u0103rul despre VPS (KVM) E5-2697 v3 (6 nuclee) 10GB DDR4 480GB SSD 1Gbps de la 19 $ sau cum s\u0103 \u00eemp\u0103r\u021bi\u021bi corect un server?<\/a><\/noindex> (sunt disponibile op\u021biuni cu RAID1 \u0219i RAID10, p\u00e2n\u0103 la 24 nuclee \u0219i p\u00e2n\u0103 la 40GB DDR4).<\/p>\n<p><b>Dell R730xd la jum\u0103tate de pre\u021b \u00een centrul de date Equinix Tier IV din Amsterdam?<\/b> Numai la noi <b><noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/serversnl\">2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TB de la 199 $<\/a><\/noindex> \u00een Olanda! <b>Dell R420 \u2014 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB \u2014 de la 99 $!<\/b><\/b> Citi\u021bi despre <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/329618\/\">Cum s\u0103 construi\u021bi o infrastructur\u0103 de clas\u0103 enterprise folosind servere Dell R730xd E5-2650 v4 la pre\u021buri foarte mici de 9000 \u20ac?<\/a><\/noindex><br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502614\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f Kubernetes \u0441 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e\u043c \u0438\u043c\u0435\u043d \u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0436\u0438\u0437\u043d\u0435\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 Kubernetes \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0435\u0441\u0442\u043e\u0432 Readiness \u0438 Liveness \u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430 Kubernetes \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u2014 Requests \u0438 Limits. \u041f\u0435\u0440\u0432\u043e\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u043d\u0430\u043b\u0438\u0447\u0438\u044e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0443\u0437\u043b\u0430, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0438\u043b\u0438 \u043f\u043e\u0434\u0430, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":82921,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-82920","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043b\u0438\u043c\u0438\u0442\u043e\u0432 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-05-26T11:42:37+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-26T11:42:37+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Cele mai bune practici Kubernetes. Configurarea cererilor \u0219i limitelor de resurse | ProHoster","description":"Cele mai bune practici Kubernetes.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043b\u0438\u043c\u0438\u0442\u043e\u0432 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 | ProHoster","og:description":"\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes.","og:url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-05-26T11:42:37+00:00","article:modified_time":"2020-05-26T11:42:37+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"82920","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 15:28:37","updated":"2022-09-28 05:48:38","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/82920","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=82920"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/82920\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/82921"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=82920"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=82920"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=82920"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}