{"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\/da\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","title":{"rendered":"Bedste praksis for Kubernetes. Konfiguration af anmodninger og ressourcegr\u00e6nser","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502052\/\">De bedste Kubernetes-praksis. Oprettelse af sm\u00e5 containere<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502320\/\">De bedste Kubernetes-praksis. Organisering af Kubernetes med navnerum<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502430\/\">De bedste Kubernetes-praksis. Kontrol af Kubernetes' levedygtighed med Readiness- og Liveness-tests<\/a><\/noindex><\/p>\n<p>For each Kubernetes resource, there is the possibility to configure two types of requirements \u2014 Requests and Limits. The first describes the minimum node resource requirements necessary to start a container or pod, while the second strictly limits the resources available to the container. <\/p>\n<p>When Kubernetes schedules a pod, it is essential that the containers have sufficient resources for normal operation. If you plan to deploy a large application on a node with limited resources, it is quite possible that it will not function due to insufficient memory or CPU power on that node. In this article, we will look at how to address resource shortages using resource requests and limits.<\/p>\n<p>Requests and Limits are mechanisms that Kubernetes uses to manage resources such as CPU and memory. Requests are what guarantee that a container receives the requested resource. If a container requests a resource, Kubernetes will only schedule it on a node that can provide it. Limits control that the resources requested by the container will never exceed a certain value.<\/p>\n<p><img decoding=\"async\" alt=\"Bedste praksis for Kubernetes. Konfiguration af anmodninger og ressourcegr\u00e6nser\" 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>A container can only scale its computational power up to a certain limit, after which it will be restricted. Let's look at how this works. There are two types of resources \u2014 CPU and memory. The Kubernetes scheduler uses data about these resources to determine where to run your pods. A typical resource specification for a pod looks like this.<\/p>\n<p><img decoding=\"async\" alt=\"Bedste praksis for Kubernetes. Konfiguration af anmodninger og ressourcegr\u00e6nser\" src=\"\/wp-content\/uploads\/2020\/05\/84f1212f7098d25273217d4218d661f2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHver container i en pod kan angive sine egne anmodninger og begr\u00e6nsninger, og alt dette er additivt. CPU-ressourcerne defineres i millikere. Hvis din container har brug for to fulde kerner til drift, indstiller du v\u00e6rdien til 2000m. Hvis containeren derimod kun har brug for \u00bc kerne, vil v\u00e6rdien v\u00e6re 250m. V\u00e6r opm\u00e6rksom p\u00e5, at hvis du tildeler en CPU-ressourcev\u00e6rdi, der overstiger antallet af kerner p\u00e5 den st\u00f8rste node, vil din pod ikke blive planlagt til at k\u00f8re overhovedet. En lignende situation vil opst\u00e5, hvis du har en pod, der kr\u00e6ver fire kerner, men dit Kubernetes-kluster kun best\u00e5r af to prim\u00e6re virtuelle maskiner.<\/p>\n<p>Medmindre din applikation er specielt designet til at udnytte fordelene ved flere kerner (som komplekse videnskabelige beregninger og databaseoperationer), er den bedste praksis at indstille CPU Requests til 1 eller mindre, for derefter at k\u00f8re flere replikaer for skalerbarhed. Denne l\u00f8sning vil give systemet st\u00f8rre fleksibilitet og p\u00e5lidelighed.<\/p>\n<p>N\u00e5r det kommer til CPU-begr\u00e6nsninger, bliver det mere interessant, da det betragtes som en komprimerbar ressource. Hvis din applikation begynder at n\u00e6rme sig gr\u00e6nsen for CPU-kraft, vil Kubernetes begynde at d\u00e6mpe din container ved at anvende CPU Throttling \u2014 nedsk\u00e6ring af CPU-frekvensen. Det betyder, at CPU'en vil blive kunstigt begr\u00e6nset, hvilket kan give applikationen d\u00e5rligere ydeevne, men processen vil ikke blive stoppet eller afbrudt. <\/p>\n<p>Hukommelsesressourcerne defineres i bytes. Normalt m\u00e5les v\u00e6rdien i indstillingerne i mebibytes (Mib), men du kan angive enhver v\u00e6rdi fra bytes til petabytes. Her g\u00e6lder det samme som for CPU \u2014 hvis du anmoder om en m\u00e6ngde hukommelse, der overstiger den tilg\u00e6ngelige hukommelse p\u00e5 dine noder, vil udf\u00f8relsen af denne pod ikke blive planlagt. Men i mods\u00e6tning til CPU-ressourcer kan hukommelse ikke komprimeres, fordi der ikke er nogen m\u00e5de at begr\u00e6nse dens brug p\u00e5. Derfor vil udf\u00f8relsen af containeren stoppe, s\u00e5 snart den overskrider den tildelte hukommelse.<\/p>\n<p><img decoding=\"async\" alt=\"Bedste praksis for Kubernetes. Konfiguration af anmodninger og ressourcegr\u00e6nser\" src=\"\/wp-content\/uploads\/2020\/05\/a2b372ad9de7e065b435dae87ee62708.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDet er vigtigt at huske, at du ikke kan konfigurere foresp\u00f8rgsler, der overstiger st\u00f8rrelsen af de ressourcer, som dine noder kan levere. Specifikationerne for de delte ressourcer til GKE-virtuelle maskiner kan findes via linkene under denne video.<\/p>\n<p>I en ideel verden vil standardindstillingerne for containeren v\u00e6re tilstr\u00e6kkelige til, at arbejdsprocesserne forl\u00f8ber glat. Men den virkelige verden er ikke s\u00e5dan; folk glemmer let at konfigurere ressourceanvendelse, eller hackere ops\u00e6tter foresp\u00f8rgsler og gr\u00e6nser, der overstiger infrastrukturens faktiske kapacitet. For at forhindre s\u00e5danne scenarier kan der konfigureres ressourcekvoter med ResourceQuota og gr\u00e6nseomr\u00e5der med LimitRange.<\/p>\n<p>Efter oprettelsen af navnerum kan de blive l\u00e5st med kvoter. For eksempel, hvis du har navnerummene prod og dev, anvendes en skabelon, hvor kvoterne for produktion slet ikke findes, mens kvoterne for udvikling er meget strenge. Dette giver prod muligheden for at tage alle eksisterende ressourcer i tilf\u00e6lde af en pludselig trafikstigning, hvilket helt l\u00e5ser dev.<\/p>\n<p>Ressourcekvoten kan se s\u00e5dan ud. I dette eksempel er der 4 afsnit \u2013 det er de 4 nederste linjer af koden.<\/p>\n<p><img decoding=\"async\" alt=\"Bedste praksis for Kubernetes. Konfiguration af anmodninger og ressourcegr\u00e6nser\" src=\"\/wp-content\/uploads\/2020\/05\/569f4ddde6ad46c707e91cc05947fc6b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLad os se n\u00e6rmere p\u00e5 hver enkelt. Requests.cpu er det maksimale antal kombinerede CPU-ressourceforesp\u00f8rgsler, der kan komme fra alle containere i navnerummet. I dette eksempel kan du have 50 containere med foresp\u00f8rgsler p\u00e5 10m, fem containere med foresp\u00f8rgsler p\u00e5 100m eller blot \u00e9n container med en foresp\u00f8rgsel p\u00e5 500m. S\u00e5 l\u00e6nge det samlede antal requests.cpu i dette navnerum er mindre end 500m, er alt i orden.<\/p>\n<p>Den anmodede hukommelse requests.memory er den maksimale kombinerede m\u00e6ngde hukommelsesforesp\u00f8rgsler, som alle containere i navnerummet kan have. Som i det tidligere tilf\u00e6lde kan du have 50 containere med 2 MiB, fem containere med 20 MiB eller \u00e9n enkelt container med 100 MiB, s\u00e5 l\u00e6nge det samlede antal anmodet hukommelse i navnerummet er mindre end 100 Mebibyte.<\/p>\n<p>Limits.cpu er den maksimale samlede v\u00e6rdi af CPU-ressourcer, som alle containere i navnerummet kan bruge. Det kan betragtes som gr\u00e6nsen for CPU-ressourceforesp\u00f8rgsler.<\/p>\n<p>Endelig er limits.memory det maksimale bel\u00f8b af samlet hukommelse, som alle containere i navnerummet kan bruge. Denne begr\u00e6nsning omfatter de samlede hukommelsesforesp\u00f8rgsler.<br \/>\nSom standard arbejder containere i Kubernetes-clusteret med ubegr\u00e6nsede beregningsressourcer. Med ressourcetr\u00e6k kan clusteradministratorer begr\u00e6nse ressourceforbrug og -oprettelse baseret p\u00e5 navnerum. I navnerummet kan en pod eller container forbruge s\u00e5 meget CPU- og hukommelsesmagt som angivet i navnerummets ressourcetr\u00e6k. Der er dog bekymringer for, at en enkelt pod eller container kan monopolisere alle tilg\u00e6ngelige ressourcer. For at forhindre denne situation anvendes Limit Range \u2013 en politik for begr\u00e6nsning af ressourcefordeling (for pods eller containere) i navnerummet.<\/p>\n<p>Limit Range giver begr\u00e6nsninger, der kan:<\/p>\n<ul>\n<li>sikre minimums- og maksimumsforbrug af beregningsressourcer for hver pod eller container i navnerummet;<\/li>\n<li>tvinge minimums- og maksimumsforesp\u00f8rgsel af lager Storage Request for hver PersistentVolumeClaim i navnerummet;<\/li>\n<li>tvinge forholdet mellem foresp\u00f8rgsel Request og begr\u00e6nsning Limit for ressourcen i navnerummet;<\/li>\n<li>s\u00e6tte standard Requests\/Limits for beregningsressourcer i navnerummet og automatisk anvende dem i containere ved k\u00f8rslen.<\/li>\n<\/ul>\n<p>\nDermed kan du oprette en limit range i dit navnerum. I mods\u00e6tning til kvoten, som g\u00e6lder for hele navnerummet, anvendes Limit Range p\u00e5 individuelle containere. Dette kan forhindre, at brugere opretter meget sm\u00e5 eller derimod gigantiske containere inde i navnerummet. Et limit range kan se s\u00e5ledes ud. <\/p>\n<p><img decoding=\"async\" alt=\"Bedste praksis for Kubernetes. Konfiguration af anmodninger og ressourcegr\u00e6nser\" src=\"\/wp-content\/uploads\/2020\/05\/3fb358788910ca21e267a887032cdf1a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSom i det tidligere tilf\u00e6lde kan vi her fremh\u00e6ve 4 sektioner. Lad os se n\u00e6rmere p\u00e5 hver enkelt.<br \/>\nI default-sektionen fasts\u00e6ttes standardgr\u00e6nser for containere i en pod. Hvis du angiver disse v\u00e6rdier i limits-omr\u00e5det, vil alle containere, for hvilke disse v\u00e6rdier ikke er blevet angivet eksplicit, f\u00f8lge standardv\u00e6rdierne.<\/p>\n<p>I sektionen defaultRequest er der konfigureret standardanmodninger for containeren i pod'en. Igen, hvis du indstiller disse v\u00e6rdier til de maksimale gr\u00e6nser, vil enhver container, hvor disse parametre ikke er angivet, bruge disse v\u00e6rdier som standard.<\/p>\n<p>I sektionen max er de maksimale begr\u00e6nsninger angivet, som kan indstilles for containeren i pod'en. V\u00e6rdierne i sektionen default og begr\u00e6nsningerne for containeren kan ikke indstilles h\u00f8jere end denne gr\u00e6nse. Det er vigtigt at bem\u00e6rke, at hvis der er indstillet en max v\u00e6rdi, og sektionen default mangler, bliver den maksimale v\u00e6rdi standardv\u00e6rdien.<\/p>\n<p>I sektionen min er de minimale anmodninger angivet, som kan indstilles for containeren i pod'en. V\u00e6rdierne i sektionen default og anmodningerne for containeren kan ikke indstilles lavere end denne gr\u00e6nse.<\/p>\n<p>Igen er det vigtigt at bem\u00e6rke, at hvis denne v\u00e6rdi er indstillet, og default v\u00e6rdien ikke er det, s\u00e5 bliver minimumsv\u00e6rdien anmodningen som standard.<\/p>\n<p>Disse ressourceanmodninger bruges af Kubernetes-planl\u00e6ggeren til at udf\u00f8re dine arbejdsbelastninger. For at du kan konfigurere dine containere korrekt, er det meget vigtigt at forst\u00e5, hvordan dette fungerer. Antag, at du \u00f8nsker at k\u00f8re flere moduler i dit cluster. Givet at pod-specifikationerne er gyldige, vil Kubernetes-planl\u00e6ggeren bruge cyklisk belastningsbalancering til at v\u00e6lge en node til at k\u00f8re arbejdsbelastningen.<\/p>\n<p><img decoding=\"async\" alt=\"Bedste praksis for Kubernetes. Konfiguration af anmodninger og ressourcegr\u00e6nser\" src=\"\/wp-content\/uploads\/2020\/05\/29abd097fc0158dfbb585c4617036ccf.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKubernetes vil kontrollere, om der er tilstr\u00e6kkelige ressourcer p\u00e5 Node 1 til at h\u00e5ndtere containeranmodningerne fra pod'en, og hvis ikke, vil den g\u00e5 videre til den n\u00e6ste node. Hvis ingen af noderne i systemet kan opfylde anmodningerne, vil pod'erne g\u00e5 ind i en ventende tilstand. Med funktioner som automatisk skalering af noder i Google Kubernetes Engine kan GKE automatisk identificere ventetilstanden og oprette yderligere noder. <\/p>\n<p>Hvis der senere skulle opst\u00e5 overskydende kapacitet p\u00e5 noderne, vil den automatiske skaleringsfunktion reducere antallet af dem for at spare penge. Det er derfor, at Kubernetes planl\u00e6gger pod'er baseret p\u00e5 anmodninger. Dog kan gr\u00e6nsen v\u00e6re h\u00f8jere end anmodningerne, og i nogle tilf\u00e6lde kan en node faktisk l\u00f8be t\u00f8r for ressourcer. Vi kalder denne tilstand overcommitment state.<\/p>\n<p><img decoding=\"async\" alt=\"Bedste praksis for Kubernetes. Konfiguration af anmodninger og ressourcegr\u00e6nser\" src=\"\/wp-content\/uploads\/2020\/05\/995c906880f09734c4765519f1f2465d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSom jeg allerede har sagt, hvis det handler om processoren, vil Kubernetes begynde at begr\u00e6nse pods. Hver pod vil f\u00e5 det, den har anmodet om, men hvis den ikke n\u00e5r gr\u00e6nsen, vil throttling tr\u00e6de i kraft. <\/p>\n<p>N\u00e5r det kommer til hukommelsesressourcer, er Kubernetes tvunget til at tage beslutninger om, hvilke pods der skal slettes, og hvilke der skal beholdes, indtil du frigiver systemressourcer. Ellers vil hele systemet kollaps.<\/p>\n<p>Lad os forestille os et scenarie, hvor du har en maskine, der har n\u00e5et sin hukommelsesgr\u00e6nse \u2013 hvordan vil Kubernetes s\u00e5 reagere? <\/p>\n<p>Kubernetes vil lede efter pods, der bruger mere ressourcer, end de anmodede om. S\u00e5 hvis dine containere overhovedet ikke har anmodninger, betyder det, at de som standard bruger mere, end de bad om, simpelthen fordi de overhovedet ikke har bedt om noget! S\u00e5danne containere bliver de prim\u00e6re kandidater til at blive lukket ned. De n\u00e6ste kandidater er containere, der har opfyldt alle deres anmodninger, men stadig ligger under den maksimale gr\u00e6nse. <\/p>\n<p>S\u00e5 hvis Kubernetes finder flere pods, der har overskredet deres anmodningsparametre, vil det sortere dem efter prioritet og derefter fjerne de lavest prioriterede moduler. Hvis alle moduler har samme prioritet, vil Kubernetes stoppe de pods, der har overskredet deres anmodninger mere end de andre pods. <\/p>\n<p>I meget sj\u00e6ldne tilf\u00e6lde kan Kubernetes stoppe pods, der stadig er inden for deres anmodninger. Dette kan forekomme, n\u00e5r s\u00e5danne kritiske systemkomponenter som Kubelet-agenten eller Docker begynder at forbruge mere ressourcer, end der er blevet reserveret til dem. <br \/>\nS\u00e5 i de tidlige faser af sm\u00e5 virksomheders drift kan et Kubernetes-kluster fungere glimrende uden installation af ressourceanmodninger og -gr\u00e6nser, men efterh\u00e5nden som dine teams og projekter vokser, risikerer du at st\u00f8de p\u00e5 problemer p\u00e5 dette omr\u00e5de. At tilf\u00f8je anmodninger og gr\u00e6nser til dine moduler og navnerum kr\u00e6ver meget lidt ekstra indsats og kan spare dig for mange problemer.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/503488\/\"> Bedste praksis for Kubernetes. Korrekt afbrydelse 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=\"Afspil 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>Lidt reklame \ud83d\ude42<\/h3>\n<p>\nTak fordi du bliver hos os. Kan du lide vores artikler? \u00d8nsker du at se flere interessante materialer? St\u00f8t os ved at bestille eller anbefale os til dine bekendte, <noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/cloudvps\/nl\">cloud VPS til udviklere fra 4,99 $<\/a><\/noindex>, <b>en unik analog til entry-level servere, som vi har designet til dig:<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/347386\/\">Alt om VPS (KVM) E5-2697 v3 (6 kerner) 10 GB DDR4 480 GB SSD 1 Gbps fra 19 $ eller hvordan man deler serveren korrekt?<\/a><\/noindex> (tilg\u00e6ngelige muligheder med RAID1 og RAID10, op til 24 kerner og op til 40 GB DDR4).<\/p>\n<p><b>Dell R730xd til halv pris i datacenteret Equinix Tier IV i Amsterdam?<\/b> Kun hos os <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 fra 199 $<\/a><\/noindex> i Holland! <b>Dell R420 - 2x E5-2430 2.2GHz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - fra 99 $!<\/b><\/b> L\u00e6s om hvordan <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/329618\/\">man bygger enterprise-infrastruktur ved hj\u00e6lp af Dell R730xd E5-2650 v4 servere til 9000 euro for en br\u00f8kdel af prisen?<\/a><\/noindex><br \/>\n<br \/>Kilde: <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.3 - 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\/da\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\/da\/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\udd47Bedste praksis for Kubernetes. Konfiguration af ressourceanmodninger og -gr\u00e6nser | ProHoster","description":"Bedste praksis for Kubernetes.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\/da\/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\/da\/wp-json\/wp\/v2\/posts\/82920","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=82920"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/82920\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media\/82921"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=82920"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=82920"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=82920"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}