{"id":55712,"date":"2020-01-27T00:00:00","date_gmt":"2020-01-26T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat"},"modified":"2020-02-18T14:03:51","modified_gmt":"2020-02-18T11:03:51","slug":"tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat","title":{"rendered":"Tre niveauer af automatisk skalering i Kubernetes: hvordan man effektivt bruger dem","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Tre niveauer af automatisk skalering i Kubernetes: hvordan man effektivt bruger dem\" src=\"\/wp-content\/uploads\/2020\/01\/0b076d65db116cabdd1b4ae380d3777d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nFor a complete understanding of Kubernetes, one must know various ways to scale cluster resources: according to <noindex><a rel=\"nofollow\" href=\"https:\/\/speakerdeck.com\/thockin\/everything-you-ever-wanted-to-know-about-resource-scheduling-dot-dot-dot-almost\">the words of the system developers<\/a><\/noindex>, this is one of the main tasks of Kubernetes. We have prepared a high-level overview of horizontal and vertical autoscaling mechanisms and resizing clusters, as well as recommendations on how to use them effectively.<\/p>\n<p>The article <noindex><a rel=\"nofollow\" href=\"https:\/\/www.magalix.com\/blog\/kubernetes-autoscaling-101\">Kubernetes Autoscaling 101: Cluster Autoscaler, Horizontal Autoscaler, and Vertical Pod Autoscaler<\/a><\/noindex> was translated by the team that implemented autoscaling in <noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/containers\/\">Kubernetes aaS fra Mail.ru<\/a><\/noindex>.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Why it is important to think about scaling <\/h2>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/blog\/kubernetes-for-much-stuff\">Kubernetes<\/a><\/noindex> \u2014 a tool for managing resources and orchestration. Of course, it is nice to dabble with cool features of deployment, monitoring, and pod management (a pod is a group of containers launched in response to a request). <\/p>\n<p>However, one should also consider the following questions:<\/p>\n<ol>\n<li>How to scale modules and applications?\n<\/li>\n<li>How to keep containers running and efficient?\n<\/li>\n<li>How to respond to constant changes in code and user workloads?\n<\/li>\n<\/ol>\n<p>\nConfiguring Kubernetes clusters for resource and performance balancing can be a complex task; it requires expert knowledge of how Kubernetes works internally. The workload on your application or services can fluctuate throughout the day or even within the hour, so it\u2019s best to view balancing as an ongoing process.<\/p>\n<h2>Kubernetes Autoscaling Levels<\/h2>\n<p>\nEffective autoscaling requires coordination between two levels: <\/p>\n<ol>\n<li>Niveau af pods, der inkluderer vandret (Horizontal Pod Autoscaler, HPA) og vertikal autoskalering (Vertical Pod Autoscaler, VPA). Dette er skalering af de eksisterende ressourcer til dine containere.\n<\/li>\n<li>The cluster level, managed by the cluster autoscaling system (Cluster Autoscaler, CA), which increases or decreases the number of nodes within the cluster.\n<\/li>\n<\/ol>\n<p><\/p>\n<h2>Horizontal Autoscaler (HPA)<\/h2>\n<p>\nSom navnet antyder, skalerer HPA antallet af repliker af pods. De fleste devops-brugere anvender CPU- og hukommelsessbelastning som triggere for at \u00e6ndre antallet af repliker. Dog kan systemet skaleres baseret p\u00e5 <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/run-application\/horizontal-pod-autoscale\/#support-for-custom-metrics\">custom metrics<\/a><\/noindex>, their <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/run-application\/horizontal-pod-autoscale\/#support-for-multiple-metrics\">combination<\/a><\/noindex> eller endda <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/tutorials\/external-metrics-autoscaling\">external metrics<\/a><\/noindex>.<\/p>\n<p>High-level scheme of how HPA works:<\/p>\n<ol>\n<li>HPA overv\u00e5ger kontinuerligt de metrikv\u00e6rdier, der er angivet ved installationen, med en standardinterval p\u00e5 30 sekunder.\n<\/li>\n<li>HPA fors\u00f8ger at \u00f8ge antallet af moduler, hvis den angivne gr\u00e6nse er n\u00e5et.\n<\/li>\n<li>HPA opdaterer antallet af repliker inden for deployments-\/replikationskontrolleren.\n<\/li>\n<li>Deployment-\/replikationskontrolleren deployer derefter alle n\u00f8dvendige ekstra moduler.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Tre niveauer af automatisk skalering i Kubernetes: hvordan man effektivt bruger dem\" src=\"\/wp-content\/uploads\/2020\/01\/e98534431712eb3303668446b0fe567b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>HPA starter udrulningsprocessen for moduler, n\u00e5r metrikgr\u00e6nsen er n\u00e5et.<\/i><\/p>\n<p>Ved brug af HPA, overvej f\u00f8lgende:<\/p>\n<ul>\n<li>Den standard HPA-tjekinterval er 30 sekunder. Det er indstillet af flaget <i>horizontal-pod-autoscaler-sync-period<\/i> i controller manager.\n<\/li>\n<li>Den relative fejlmargin er som standard 10%.\n<\/li>\n<li>Efter den sidste stigning i antallet af moduler venter HPA p\u00e5 stabilisering af metrikkerne i tre minutter. Dette interval er indstillet af flaget <i>horizontal-pod-autoscaler-upscale-delay<\/i>.\n<\/li>\n<li>Efter den sidste reduktion i antallet af moduler venter HPA p\u00e5 stabilisering i fem minutter. Dette interval er indstillet af flaget <i>horizontal-pod-autoscaler-downscale-delay<\/i>.\n<\/li>\n<li>HPA fungerer bedst med deploymentsobjekter, ikke med replikationskontrollere. Horisontal skalering er ikke kompatibel med rullende opdateringer (rolling updates), som direkte manipulerer replikationskontrollere. Ved deployment afh\u00e6nger antallet af repliker direkte af deploymentsobjekterne.\n<\/li>\n<\/ul>\n<p><\/p>\n<h2>Vertikal autoskalering af pods<\/h2>\n<p>\nVertikal autoskalering (VPA) tildeler mere (eller mindre) CPU- eller hukommelsestid til eksisterende pods. Det er velegnet til b\u00e5de stateful- og stateless-pods, men er hovedsageligt designet til stateful-tjenester. Alligevel kan du anvende VPA p\u00e5 stateless-moduler, hvis det er n\u00f8dvendigt at justere m\u00e6ngden af oprindeligt tildelte ressourcer automatisk. <\/p>\n<p>VPA reagerer ogs\u00e5 p\u00e5 OOM-begivenheder (out of memory, utilstr\u00e6kkelig hukommelse). For at \u00e6ndre CPU-tid og hukommelsesvolumen kr\u00e6ves en genstart af poddene. Ved genstart overholder VPA fordelingsbudgettet (<noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/workloads\/pods\/disruptions\/\">pods distribution budget, PDB<\/a><\/noindex>), for at sikre det minimumsbehovte antal moduler. <\/p>\n<p>Du kan angive et minimum og maksimum for ressourcerne for hver modul. For eksempel kan du begr\u00e6nse den maksimale tildeling af hukommelse til 8 GB. Dette er nyttigt, hvis de nuv\u00e6rende noder ikke kan tildele mere end 8 GB hukommelse til containeren. Detaljerede specifikationer og arbejdsmetoder er beskrevet i <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/community\/blob\/master\/contributors\/design-proposals\/autoscaling\/vertical-pod-autoscaler.md\">den officielle VPA wiki<\/a><\/noindex>.<\/p>\n<p>Desuden har VPA en interessant anbefalingsfunktion (VPA Recommender). Den overv\u00e5ger ressourceforbruget og OOM-h\u00e6ndelserne for alle moduler for at foresl\u00e5 nye v\u00e6rdier for hukommelse og CPU-tid baseret p\u00e5 en intelligent algoritme, der tager h\u00f8jde for historiske m\u00e5linger. Der er ogs\u00e5 et API, der accepterer en pod-deskriptor og returnerer de foresl\u00e5ede ressourcev\u00e6rdier.<\/p>\n<p>Det er v\u00e6rd at bem\u00e6rke, at VPA Recommender ikke overv\u00e5ger \"gr\u00e6nsen\" for ressourcer. Dette kan f\u00f8re til, at et modul monopoliserer ressourcerne inden for noderne. Det er bedre at s\u00e6tte en gr\u00e6nse i namespace-niveauet for at undg\u00e5 enorme forbrug af hukommelse eller CPU-tid.<\/p>\n<p>H\u00f8jniveau diagram over VPA's drift:<\/p>\n<ol>\n<li>VPA kontrollerer l\u00f8bende de metrikv\u00e6rdier, der er angivet ved installationen, med en standardinterval p\u00e5 10 sekunder.\n<\/li>\n<li>Hvis den angivne t\u00e6rskel er n\u00e5et, fors\u00f8ger VPA at \u00e6ndre det tildelte antal ressourcer.\n<\/li>\n<li>VPA opdaterer antallet af ressourcer i deployment-\/replication-controlleren.\n<\/li>\n<li>N\u00e5r modulerne genstartes, anvendes alle nye ressourcer p\u00e5 de oprettede instanser.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Tre niveauer af automatisk skalering i Kubernetes: hvordan man effektivt bruger dem\" src=\"\/wp-content\/uploads\/2020\/01\/324702d5e36e9fcf45ced8b3f276db52.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>VPA tilf\u00f8jer det n\u00f8dvendige antal ressourcer <\/i><\/p>\n<p>Overvej f\u00f8lgende punkter, n\u00e5r du bruger VPA:<\/p>\n<ul>\n<li>Skalering kr\u00e6ver, at podden genstartes. Dette er n\u00f8dvendigt for at undg\u00e5 ustabil drift efter \u00e6ndringer. For p\u00e5lidelighed genstarter moduler og distribuerer dem p\u00e5 noder baseret p\u00e5 de nye tildelte ressourcer.\n<\/li>\n<li>VPA og HPA er i \u00f8jeblikket ikke kompatible med hinanden og kan ikke k\u00f8re p\u00e5 de samme pods. Hvis du anvender begge skaleringsmekanismer i samme klynge, skal du sikre dig, at indstillingerne ikke tillader, at de aktiveres p\u00e5 de samme objekter.\n<\/li>\n<li>VPA justerer containeranmodninger om ressourcer baseret udelukkende p\u00e5 tidligere og nuv\u00e6rende brug. Den fasts\u00e6tter ikke brugslimitter. Der kan opst\u00e5 problemer med, at applikationer uregelm\u00e6ssigt begynder at optage flere ressourcer, hvilket vil medf\u00f8re, at Kubernetes lukker denne pod.\n<\/li>\n<li>VPA er stadig i en tidlig udviklingsfase. V\u00e6r forberedt p\u00e5, at systemet kan \u00e6ndre sig i den n\u00e6rmeste fremtid. Du kan l\u00e6se om <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/autoscaler\/tree\/master\/vertical-pod-autoscaler#known-limitations-of-the-alpha-version\">kendte begr\u00e6nsninger<\/a><\/noindex> og <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/community\/blob\/master\/contributors\/design-proposals\/autoscaling\/vertical-pod-autoscaler.md#future-work\">udviklingsplaner<\/a><\/noindex>. S\u00e5ledes er der planer om at implementere samarbejde mellem VPA og HPA samt implementering af moduler sammen med en politik for vertikal autoskalering for dem (f.eks. en speciel etikette 'requires VPA').\n<\/li>\n<\/ul>\n<p><\/p>\n<h2>Autoskalering af Kubernetes-klynger<\/h2>\n<p>\nAutoskalering af klynger (Cluster Autoscaler, CA) justerer antallet af noder baseret p\u00e5 antallet af ventende pod-moduler. Systemet kontrollerer regelm\u00e6ssigt for ventende moduler og \u00f8ger st\u00f8rrelsen p\u00e5 klyngen, hvis der kr\u00e6ves flere ressourcer, og hvis klyngen ikke overstiger de fastsatte gr\u00e6nser. CA interagerer med cloud-udbyderen for at anmode om yderligere noder eller frigive inaktive. Den f\u00f8rste offentlige version af CA blev pr\u00e6senteret i Kubernetes 1.8.<\/p>\n<p>Overordnet arbejdsschema for CA:<\/p>\n<ol>\n<li>CA tjekker for moduler i ventende tilstand med en standardinterval p\u00e5 10 sekunder.\n<\/li>\n<li>Hvis en eller flere moduler er i ventende tilstand, fordi der ikke er tilstr\u00e6kkelige tilg\u00e6ngelige ressourcer i klyngen til at fordele dem, fors\u00f8ger den at forberede en eller flere ekstra noder.\n<\/li>\n<li>N\u00e5r cloud-udbyderen tildeler den n\u00f8dvendige node, tilsluttes den klyngen og er klar til at betjene pod-moduler.\n<\/li>\n<li>Kubernetes-planl\u00e6ggeren fordeler de ventende moduler til den nye node. Hvis nogle moduler stadig forbliver i ventende tilstand, gentages processen, og der tilf\u00f8jes nye noder til klyngen.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Tre niveauer af automatisk skalering i Kubernetes: hvordan man effektivt bruger dem\" src=\"\/wp-content\/uploads\/2020\/01\/2cd3c97f5d1b040b813940a4e804365e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Automatisk tildeling af klynge noder i skyen<\/i><\/p>\n<p>Tag hensyn til f\u00f8lgende, n\u00e5r du bruger CA:<\/p>\n<ul>\n<li>CA sikrer, at alle moduler i klyngen har plads til at k\u00f8re, uanset belastningsniveauet p\u00e5 processoren. Derudover fors\u00f8ger det at sikre, at der ikke er un\u00f8dvendige noder i klyngen.\n<\/li>\n<li>CA registrerer behovet for skalering efter cirka 30 sekunder.\n<\/li>\n<li>N\u00e5r en node bliver overfl\u00f8dig, venter CA som standard 10 minutter, f\u00f8r den skalerer systemet.\n<\/li>\n<li>I autoskaleringen er der begrebet expanders. Det er forskellige strategier til at v\u00e6lge en gruppe noder, hvor nye vil blive tilf\u00f8jet.\n<\/li>\n<li>Anvend indstillingen ansvarligt <i>cluster-autoscaler.kubernetes.io\/safe-to-evict (true)<\/i>. Hvis du installerer mange pods, eller hvis mange af dem er fordelt p\u00e5 tv\u00e6rs af alle noder, vil du i h\u00f8j grad miste muligheden for at reducere st\u00f8rrelsen af klyngen.\n<\/li>\n<li>Brug <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/workloads\/pods\/disruptions\/\">PodDisruptionBudgets<\/a><\/noindex>, for at forhindre sletning af pods, hvilket kan g\u00f8re en del af din applikation fuldst\u00e6ndig ude af drift.\n<\/li>\n<\/ul>\n<p><\/p>\n<h2>Hvordan Kubernetes-autoskaleringssystemer interagerer med hinanden<\/h2>\n<p>\nFor perfekt harmoni b\u00f8r autoskalering anvendes b\u00e5de p\u00e5 niveauet for pods (HPA\/VPA) og p\u00e5 niveauet for klyngen. De interagerer relativt nemt med hinanden:<\/p>\n<ol>\n<li>HPA eller VPA opdaterer replikaer af pod&#8217;er eller ressourcer, der er tildelt eksisterende pod&#8217;er.\n<\/li>\n<li>Hvis der ikke er nok noder til den planlagte skalering, bem\u00e6rker CA, at der er pod&#8217;er i ventende tilstand.\n<\/li>\n<li>CA tildeler nye noder.\n<\/li>\n<li>Modulerne fordeles over de nye noder.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Tre niveauer af automatisk skalering i Kubernetes: hvordan man effektivt bruger dem\" src=\"\/wp-content\/uploads\/2020\/01\/09379f30f349a235bb26a670ad0d0bfd.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Det f\u00e6lles system for Kubernetes-skalering<\/i><\/p>\n<h2>Typiske fejl i Kubernetes-autoskaleringsprocessen<\/h2>\n<p>\nDer er flere typiske problemer, som devops st\u00e5r overfor, n\u00e5r de fors\u00f8ger at implementere autoskalering.<\/p>\n<p>HPA og VPA er afh\u00e6ngige af metrics og nogle historiske data. Hvis der er tildelt for f\u00e5 ressourcer, vil modulerne blive lukket ned og ikke kunne generere metrics. I dette tilf\u00e6lde vil autoskaleringsprocessen aldrig finde sted.<\/p>\n<p>Selve skaleringens operation er tidssensitiv. Vi \u00f8nsker, at moduler og klynger skal skalere hurtigt \u2014 inden brugerne bem\u00e6rker nogen problemer eller nedbrud. Derfor skal man tage hensyn til den gennemsnitlige tid for skalering af pod&#8217;er og klyngen.<\/p>\n<p>Det ideelle scenario er 4 minutter:<\/p>\n<ol>\n<li>30 sekunder. Opdatering af m\u00e5lmetrics: 30-60 sekunder.\n<\/li>\n<li>30 sekunder. HPA kontrollerer metricsv\u00e6rdier: 30 sekunder.\n<\/li>\n<li>Mindre end 2 sekunder. Pods oprettes og g\u00e5r ind i ventende tilstand: 1 sekund.\n<\/li>\n<li>Mindre end 2 sekunder. CA ser de ventende pods og sender anmodninger om at forberede noderne: 1 sekund.\n<\/li>\n<li>3 minutter. Cloud-udbyderen tildeler noder. K8s venter p\u00e5, at de er klar: op til 10 minutter (afh\u00e6ngig af flere faktorer).\n<\/li>\n<\/ol>\n<p>\nDet v\u00e6rste (mere realistiske) scenarie \u2014 12 minutter:<\/p>\n<ol>\n<li>30 sekunder. Opdatering af m\u00e5lmetrics.\n<\/li>\n<li>30 sekunder. HPA tjekker metrikv\u00e6rdier.\n<\/li>\n<li>Mindre end 2 sekunder. Pod-modulerne er oprettet og g\u00e5r ind i ventetilstand.\n<\/li>\n<li>Mindre end 2 sekunder. CA ser ventende moduler og sender anmodninger om at klarg\u00f8re noder.\n<\/li>\n<li>10 minutter. Cloud-udbyderen tildeler noder. K8s venter, indtil de er klar. Ventetiden afh\u00e6nger af flere faktorer, s\u00e5som leverand\u00f8rens latenstid, OS-latenstid og drift af hj\u00e6lpev\u00e6rkt\u00f8jer.\n<\/li>\n<\/ol>\n<p>\nForveksl ikke cloud-udbydernes skalering mekanismer med vores CA. Den sidste arbejder inden for Kubernetes-klyngen, mens cloud-udbyderens mekanisme fungerer p\u00e5 basis af noder. Den ved ikke, hvad der sker med dine pod&#8217;er eller applikationen. Disse systemer arbejder parallelt. <\/p>\n<h2>Hvordan man styrer skaleringsprocessen i Kubernetes<\/h2>\n<p><\/p>\n<ol>\n<li>Kubernetes er et v\u00e6rkt\u00f8j til ressourceforvaltning og orkestrering. Operationer til forvaltning af pod&#8217;er og ressourcer i klyngen er en central milep\u00e6l i at mestre Kubernetes.\n<\/li>\n<li>L\u00e6r logikken bag skal\u00e9rbarheden af pod&#8217;er med hensyn til HPA og VPA.\n<\/li>\n<li>CA b\u00f8r kun anvendes, hvis du godt forst\u00e5r behovene for dine pod&#8217;er og containere.\n<\/li>\n<li>For optimal konfiguration af klyngen er det n\u00f8dvendigt at forst\u00e5, hvordan de forskellige skaleringssystemer arbejder sammen.\n<\/li>\n<li>N\u00e5r du vurderer tid til skaleringsprocessen, skal du tage h\u00f8jde for det v\u00e6rste og bedste scenarie.\n<\/li>\n<\/ol>\n<p>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mailru\/blog\/484344\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043e\u0441\u0432\u043e\u0435\u043d\u0438\u044f Kubernetes \u043d\u0443\u0436\u043d\u043e \u0437\u043d\u0430\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432: \u043f\u043e \u0441\u043b\u043e\u0432\u0430\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u044d\u0442\u043e \u043e\u0434\u043d\u0430 \u0438\u0437 \u0433\u043b\u0430\u0432\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 Kubernetes. \u041c\u044b \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0432\u044b\u0441\u043e\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 \u043e\u0431\u0437\u043e\u0440 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u043e\u0432 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0438 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438, \u043a\u0430\u043a \u0438\u0445 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c. \u0421\u0442\u0430\u0442\u044c\u044e Kubernetes Autoscaling 101: Cluster Autoscaler, Horizontal Autoscaler, and Vertical Pod Autoscaler \u043f\u0435\u0440\u0435\u0432\u0435\u043b\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-55712","post","type-post","status-publish","format-standard","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=\"\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e.\" \/>\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\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat\" \/>\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\u0422\u0440\u0438 \u0443\u0440\u043e\u0432\u043d\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 Kubernetes: \u043a\u0430\u043a \u0438\u0445 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat\" \/>\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-01-26T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:51+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\udd47Tre niveauer af automatisk skalering i Kubernetes: hvordan man bruger dem effektivt | ProHoster","description":"For fuldst\u00e6ndighed.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat","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\u0422\u0440\u0438 \u0443\u0440\u043e\u0432\u043d\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 Kubernetes: \u043a\u0430\u043a \u0438\u0445 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c | ProHoster","og:description":"\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e.","og:url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat","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-01-26T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:51+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55712","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 19:38:31","updated":"2022-09-29 14:33:55","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\/55712","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=55712"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/55712\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=55712"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=55712"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=55712"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}