{"id":91199,"date":"2020-08-10T01:42:03","date_gmt":"2020-08-09T23:42:03","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/kubernetes-v-domklik-kak-spat-spokojno-upravlyaya-klasterom-na-1000-mikroservisov"},"modified":"2020-08-10T01:42:03","modified_gmt":"2020-08-09T23:42:03","slug":"kubernetes-v-domklik-kak-spat-spokojno-upravlyaya-klasterom-na-1000-mikroservisov","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/kubernetes-v-domklik-kak-spat-spokojno-upravlyaya-klasterom-na-1000-mikroservisov","title":{"rendered":"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>A nevem Viktor Jagof\u00e1rov, \u00e9s a Kubernetes platformok fejleszt\u00e9s\u00e9vel foglalkozom a DomKlikn\u00e9l, mint a m\u0171szaki vezet\u0151 az Ops csapatban. Szeretn\u00e9m bemutatni a Dev  Ops folyamataikat, egy Oroszorsz\u00e1g legnagyobb k8s klaszter\u00e9nek \u00fczemeltet\u00e9si saj\u00e1toss\u00e1gait, valamint azokat a DevOps\/SRE gyakorlatokat, amelyeket a csapatunk haszn\u00e1l.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/6c908104c734b36cc7a960fbe4d65e3f.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>Ops csapat<\/h4>\n<p>\nJelenleg az Ops csapatban 15 ember dolgozik. H\u00e1roman az irod\u00e1\u00e9rt felel\u0151sek, ketten pedig m\u00e1s id\u0151z\u00f3n\u00e1ban dolgoznak, \u00edgy \u00e9jszaka is el\u00e9rhet\u0151k. Ennek k\u00f6sz\u00f6nhet\u0151en mindig van valaki az Ops csapatb\u00f3l a monitor el\u0151tt, aki k\u00e9sz reag\u00e1lni b\u00e1rmilyen bonyolults\u00e1g\u00fa incidensre. \u00c9jszakai \u00fcgyelet\u00fcnk nincs, ami meg\u0151rzi a ment\u00e1lis eg\u00e9szs\u00e9g\u00fcnket \u00e9s lehet\u0151s\u00e9get ad arra, hogy mindenki kipihenje mag\u00e1t \u00e9s ne csak a sz\u00e1m\u00edt\u00f3g\u00e9p el\u0151tt t\u00f6lts\u00f6n szabadid\u0151t.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/47051db273f116df376e64bad67c6f37.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMindenkinek k\u00fcl\u00f6nb\u00f6z\u0151 kompetenci\u00e1i vannak: h\u00e1l\u00f3zati szakemberek, DBA-k, ELK Stack szak\u00e9rt\u0151k, Kubernetes adminisztr\u00e1torok\/fejleszt\u0151k, monitoroz\u00e1si, virtualiz\u00e1ci\u00f3s \u00e9s hardver szakemberek stb. Az \u00f6sszek\u00f6t\u0151 von\u00e1sunk az, hogy mindenki valamennyire helyettes\u00edtheti a m\u00e1sikat: p\u00e9ld\u00e1ul \u00faj csom\u00f3pontokat vezethet be a k8s klaszterbe, friss\u00edtheti a PostgreSQL-t, \u00edrhat CI\/CD pipeline-t Ansible-lal, automatiz\u00e1lhat valamit Python\/Bash\/Go nyelveken, vagy csatlakoztathat hardvert a DC-hez. Az, hogy valaki er\u0151s kompetenci\u00e1val rendelkezik egy adott ter\u00fcleten, nem akad\u00e1lyozza meg, hogy m\u00e1s ir\u00e1nyba is elmozduljon, \u00e9s m\u00e1s ter\u00fcleten is fejleszthesse mag\u00e1t. P\u00e9ld\u00e1ul \u00e9n rendszergazdak\u00e9nt ker\u00fcltem a c\u00e9gn\u00e9l, \u00e9s most a Kubernetes klaszterek a f\u0151 felel\u0151ss\u00e9gi k\u00f6r\u00f6m. A csapatban minden n\u00f6veked\u00e9st \u00fcdv\u00f6zl\u00fcnk, \u00e9s nagyon fejlett a k\u00f6z\u00f6ss\u00e9gi \u00e9rz\u00e9s.<\/p>\n<p>Egy\u00e9bk\u00e9nt toborzunk. A jel\u00f6ltekkel szembeni k\u00f6vetelm\u00e9nyek meglehet\u0151sen standardak. Szem\u00e9ly szerint sz\u00e1momra fontos, hogy az illet\u0151 beilleszkedjen a csapatba, ne legyen konfliktusos, de ugyanakkor tudja k\u00e9pviselni a v\u00e9lem\u00e9ny\u00e9t, v\u00e1gyjon a fejl\u0151d\u00e9sre \u00e9s ne f\u00e9ljen \u00faj dolgokat kipr\u00f3b\u00e1lni, javasolni az \u00f6tleteit. A programoz\u00e1si k\u00e9szs\u00e9gek a script nyelveken k\u00f6telez\u0151ek, az alap Linux \u00e9s angol nyelvtud\u00e1s pedig szint\u00e9n elv\u00e1rt. Az angolra az\u00e9rt van sz\u00fcks\u00e9g, hogy az illet\u0151 egy esetleges hiba eset\u00e9n 10 m\u00e1sodperc alatt googlizhassa a megold\u00e1st, ne 10 perc alatt. Jelenleg nagyon neh\u00e9z olyan szakembereket tal\u00e1lni, akik m\u00e9ly Linux ismeretekkel rendelkeznek: vicces, de a h\u00e1rom jel\u00f6ltb\u0151l kett\u0151 nem tud v\u00e1laszolni a \u201eMi az a Load Average? Mib\u0151l \u00e1ll \u00f6ssze?\u201d k\u00e9rd\u00e9sre, m\u00edg a \u201eHogyan k\u00e9sz\u00edthet\u00fcnk core dump-ot egy C programb\u00f3l?\u201d k\u00e9rd\u00e9st valami k\u00fcl\u00f6nc vagy dinoszaurusz dolognak tartj\u00e1k... Ezt el kell fogadnunk, mivel az emberek \u00e1ltal\u00e1ban m\u00e1s kompetenci\u00e1kban magasan k\u00e9pzettek, \u00e9s a 'linuxra' mi megtan\u00edtjuk \u0151ket. A k\u00e9rd\u00e9sre, hogy \u201emi\u00e9rt sz\u00fcks\u00e9ges ez a DevOps m\u00e9rn\u00f6knek a felh\u0151k modern vil\u00e1g\u00e1ban\u201d nem t\u00e9rhet\u00fcnk ki az \u00edr\u00e1s keretein bel\u00fcl, de h\u00e1rom sz\u00f3val: mindez sz\u00fcks\u00e9ges.<\/p>\n<h4>Tools Csapat<\/h4>\n<p>\nA Tools csapat jelent\u0151s szerepet j\u00e1tszik az automatiz\u00e1l\u00e1sban. F\u0151 feladatuk k\u00e9nyelmes grafikus \u00e9s CLI eszk\u00f6z\u00f6k l\u00e9trehoz\u00e1sa fejleszt\u0151k sz\u00e1m\u00e1ra. P\u00e9ld\u00e1ul a bels\u0151 fejleszt\u00e9s\u00fcnk, a Confer lehet\u0151v\u00e9 teszi, hogy sz\u00f3 szerint n\u00e9h\u00e1ny kattint\u00e1ssal ind\u00edtsunk el egy alkalmaz\u00e1st Kubernetesben, be\u00e1ll\u00edtsuk a forr\u00e1st, kulcsokat a vault-b\u00f3l stb. Kor\u00e1bban Jenkins + Helm 2 volt, de a saj\u00e1t szersz\u00e1munkat kellett kifejleszten\u00fcnk, hogy elker\u00fclj\u00fck a m\u00e1sol\u00e1s-beilleszt\u00e9st \u00e9s egyenesebb\u00e9 tegy\u00fck a szoftver \u00e9letciklus\u00e1t.<\/p>\n<p>Az Ops csapat nem \u00edr pipelinet a fejleszt\u0151k helyett, de b\u00e1rmilyen k\u00e9rd\u00e9sben tud tan\u00e1csot adni a meg\u00edr\u00e1sukkal kapcsolatban (n\u00e9h\u00e1nyan m\u00e9g mindig haszn\u00e1lj\u00e1k a Helm 3-at).<\/p>\n<h4>DevOps<\/h4>\n<p>\nA DevOps-ra vonatkoz\u00f3an \u00edgy l\u00e1tjuk:<\/p>\n<p>A Dev csapatok k\u00f3dot \u00edrnak, amelyet a Confer seg\u00edts\u00e9g\u00e9vel a dev -&gt; qa\/stage -&gt; prod k\u00f6rnyezetbe telep\u00edtenek. A k\u00f3d teljes\u00edtm\u00e9ny\u00e9\u00e9rt \u00e9s hibamentess\u00e9g\u00e9\u00e9rt a Dev \u00e9s Ops csapatok felelnek. Napk\u00f6zben az Ops csapat \u00fcgyeletes\u00e9nek kell els\u0151k\u00e9nt reag\u00e1lnia az alkalmaz\u00e1sukkal kapcsolatos incidensekre, m\u00edg este \u00e9s \u00e9jjel az \u00fcgyeletes adminnak (Ops) fel kell \u00e9bresztenie az \u00fcgyeletes fejleszt\u0151t, ha biztos benne, hogy a probl\u00e9ma nem az infrastrukt\u00far\u00e1ban van. Minden metrika \u00e9s riaszt\u00e1s a monitoroz\u00e1sban automatikusan vagy f\u00e9lautomatikusan jelenik meg.<\/p>\n<p>Az Ops felel\u0151ss\u00e9gi k\u00f6re az alkalmaz\u00e1s \u00e9les\u00edt\u00e9s\u00e9vel kezd\u0151dik, de a Dev felel\u0151ss\u00e9ge ezzel nem \u00e9r v\u00e9get - egy csapatban dolgozunk, \u00e9s egy haj\u00f3ban evez\u00fcnk.<\/p>\n<p>A fejleszt\u0151k tan\u00e1csot adnak az adminisztr\u00e1toroknak, ha seg\u00edts\u00e9gre van sz\u00fcks\u00e9g\u00fck egy admin mikroszolg\u00e1ltat\u00e1s (p\u00e9ld\u00e1ul Go backend + HTML5) \u00edr\u00e1s\u00e1hoz, m\u00edg az adminisztr\u00e1torok b\u00e1rmilyen infrastruktur\u00e1lis k\u00e9rd\u00e9sben tan\u00e1csot adnak a fejleszt\u0151knek, vagy a k8s-zel kapcsolatos k\u00e9rd\u00e9sekben.<\/p>\n<p>Egy\u00e9bk\u00e9nt n\u00e1lunk egy\u00e1ltal\u00e1n nincs monolit, csak mikroszolg\u00e1ltat\u00e1sok. A termel\u00e9si k8s klaszterben a sz\u00e1muk k\u00f6r\u00fclbel\u00fcl 900 \u00e9s 1000 k\u00f6z\u00f6tt mozog, ha a sz\u00e1muk alapj\u00e1n m\u00e9r\u00fcnk. <i>telep\u00edt\u00e9sek<\/i>. A podok sz\u00e1ma 1700 \u00e9s 2000 k\u00f6z\u00f6tt v\u00e1ltozik. A termel\u00e9si klaszterben jelenleg k\u00f6r\u00fclbel\u00fcl 2000 pod van.<\/p>\n<p>Pontosan sz\u00e1mokat nem tudok mondani, mivel figyelemmel k\u00eds\u00e9rj\u00fck a felesleges mikroszolg\u00e1ltat\u00e1sokat, \u00e9s f\u00e9lautomatikusan elt\u00e1vol\u00edtjuk \u0151ket. A felesleges entit\u00e1sok figyel\u00e9s\u00e9ben a k8s-ben seg\u00edt nek\u00fcnk a <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Nastradamus\/useless-operator\">useless-operator<\/a><\/noindex>, ami nagym\u00e9rt\u00e9kben sp\u00f3rol a forr\u00e1sokkal \u00e9s a p\u00e9nzzel.<\/p>\n<h2> Er\u0151forr\u00e1s-gazd\u00e1lkod\u00e1s <\/h2>\n<p><\/p>\n<h4> Monitoroz\u00e1s <\/h4>\n<p>\nA j\u00f3l fel\u00e9p\u00edtett \u00e9s informat\u00edv monitoroz\u00e1s kulcsszerepet j\u00e1tszik egy nagy klaszter \u00fczemeltet\u00e9s\u00e9ben. M\u00e9g nem tal\u00e1ltunk univerz\u00e1lis megold\u00e1st, amely 100%-ban lefedn\u00e9 az \u00f6sszes monitoring ig\u00e9nyt, ez\u00e9rt id\u0151nk\u00e9nt k\u00fcl\u00f6nb\u00f6z\u0151 egyedi megold\u00e1sokat k\u00e9sz\u00edt\u00fcnk ebben a k\u00f6rnyezetben.<\/p>\n<ul>\n<li><b>Zabbix<\/b>. A r\u00e9gi klasszikus monitoroz\u00e1s, amely els\u0151sorban az infrastrukt\u00fara \u00e1ltal\u00e1nos \u00e1llapot\u00e1nak nyomon k\u00f6vet\u00e9s\u00e9re szolg\u00e1l. Megmondja nek\u00fcnk, mikor hal meg egy n\u00f3da a CPU, mem\u00f3ria, lemez, h\u00e1l\u00f3zat stb. miatt. Semmi k\u00fcl\u00f6n\u00f6s, de van k\u00fcl\u00f6n DaemonSet az \u00fcgyn\u00f6k\u00f6kb\u0151l, amelyek p\u00e9ld\u00e1ul a klaszter DNS \u00e1llapot\u00e1t monitorozz\u00e1k: keresik a s\u00e1vsz\u00e9less\u00e9get elhaszn\u00e1l\u00f3 coredns podokat, ellen\u0151rzik a k\u00fcls\u0151 hosztok el\u00e9rhet\u0151s\u00e9g\u00e9t. \u00dagy t\u0171nhet, hogy mi\u00e9rt foglalkozn\u00e1nk ezzel, de nagy s\u00e1vsz\u00e9less\u00e9g mellett ez az \u00f6sszetev\u0151 komoly hibapont lehet. Kor\u00e1bban m\u00e1r <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/domclick\/blog\/495450\/\">le\u00edrtam<\/a><\/noindex>, hogyan k\u00fczd\u00f6ttem a klaszter DNS teljes\u00edtm\u00e9ny\u00e9vel.<\/li>\n<li><b>Prometheus Operator<\/b>. A k\u00fcl\u00f6nb\u00f6z\u0151 export\u0151r\u00f6k k\u00e9szlete sz\u00e9lesk\u00f6r\u0171 \u00e1ttekint\u00e9st ny\u00fajt a klaszter \u00f6sszes \u00f6sszetev\u0151j\u00e9r\u0151l. Ezt k\u00f6vet\u0151en mindezt nagym\u00e9ret\u0171 dashboardokon vizualiz\u00e1ljuk a Grafan\u00e1ban, \u00e9s az \u00e9rtes\u00edt\u00e9sekhez alertmanagert haszn\u00e1lunk.\n<\/li>\n<\/ul>\n<p>\nEgy m\u00e1sik hasznos eszk\u00f6z sz\u00e1munkra a <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Nastradamus\/list-ingress\">list-ingress<\/a><\/noindex>. \u00cdrtuk ezt, miut\u00e1n t\u00f6bbsz\u00f6r is szembes\u00fclt\u00fcnk azzal a helyzettel, amikor az egyik csapat \u00fatjai \u00e1tfedik a m\u00e1sik csapat Ingress-\u00e9t, ami 50x-es hib\u00e1kat okozott. Jelenleg a fejleszt\u0151k \u00e9les\u00edt\u00e9s el\u0151tt ellen\u0151rzik, hogy senkit ne \u00e9rjenek h\u00e1tr\u00e1ny, \u00e9s a csapatom sz\u00e1m\u00e1ra ez egy j\u00f3 eszk\u00f6z az Ingress-probl\u00e9m\u00e1k els\u0151dleges diagnosztiz\u00e1l\u00e1s\u00e1ra. Vicces, hogy kezdetben adminisztr\u00e1torok sz\u00e1m\u00e1ra k\u00e9sz\u00fclt, \u00e9s meglehet\u0151sen \u201eprimit\u00edvnek\u201d t\u0171nt, de miut\u00e1n a fejleszt\u0151i csapatok megszerett\u00e9k az eszk\u00f6zt, jelent\u0151sen \u00e1talakult, \u00e9s m\u00e1r nem \u00fagy n\u00e9z ki, mint \u201eadmin k\u00e9sz\u00edtett egy webes fel\u00fcletet az adminoknak\u201d. Hamarosan lemondunk err\u0151l az eszk\u00f6zr\u0151l, \u00e9s az ilyen helyzeteket m\u00e9g a pipeline kihelyez\u00e9se el\u0151tt valid\u00e1lni fogjuk.<\/p>\n<h4>A csapatok er\u0151forr\u00e1sai a \u201eKubernetes\u201d-ben<\/h4>\n<p>\nMiel\u0151tt p\u00e9ld\u00e1kba v\u00e1gn\u00e1nk, \u00e9rdemes elmagyar\u00e1zni, hogyan m\u0171k\u00f6dik n\u00e1lunk az er\u0151forr\u00e1sok kiad\u00e1sa <i>mikroszolg\u00e1ltat\u00e1sokhoz<\/i>.<\/p>\n<p>Ahhoz, hogy meg\u00e9rts\u00fck, milyen csapatok \u00e9s mennyi er\u0151forr\u00e1st haszn\u00e1lnak fel, <i>er\u0151forr\u00e1sok<\/i> (processzor, mem\u00f3ria, helyi SSD), minden csapat sz\u00e1m\u00e1ra k\u00fcl\u00f6n er\u0151forr\u00e1st biztos\u00edtunk a \u201eKubernetes\u201d-ben, \u00e9s korl\u00e1tozzuk a maxim\u00e1lis kapacit\u00e1saikat processzorban, mem\u00f3ri\u00e1ban \u00e9s lemezen, el\u0151zetesen egyeztetve a csapatok ig\u00e9nyeit. Ennek megfelel\u0151en egy csapat \u00e1ltal\u00e1ban nem blokkolja az eg\u00e9sz klasztert azzal, hogy ezer magot \u00e9s terab\u00e1jtnyi mem\u00f3ri\u00e1t foglal el. A hozz\u00e1f\u00e9r\u00e9sek a n\u00e9vt\u00e9rhez az AD-n kereszt\u00fcl ker\u00fclnek kiad\u00e1sra (RBAC-ot haszn\u00e1lunk). A n\u00e9vterek \u00e9s hat\u00e1raik a GIT-t\u00e1rol\u00f3ba egy pull requesten kereszt\u00fcl ad\u00f3dnak hozz\u00e1, \u00e9s ezt k\u00f6vet\u0151en az Ansible pipeline automatikusan kib\u0151v\u00edti. <i>namespace<\/i> a \u201eKubernetes\u201d-ben, \u00e9s korl\u00e1tozzuk a maxim\u00e1lis lehet\u0151s\u00e9geit CPU, mem\u00f3ria \u00e9s lemez ter\u00e9n, el\u0151zetesen egyeztetve a csapatok ig\u00e9nyeit. Ennek megfelel\u0151en egy csapat \u00e1ltal\u00e1ban nem z\u00e1rja le az eg\u00e9sz klasztert azzal, hogy ezreket foglal mag\u00e1nak CPU-b\u00f3l \u00e9s terab\u00e1jtnyi mem\u00f3ri\u00e1b\u00f3l. Hozz\u00e1f\u00e9r\u00e9sek a namespace-hez az AD-n kereszt\u00fcl t\u00f6rt\u00e9nnek (RBAC-t haszn\u00e1lunk). A namespace-ek \u00e9s azok hat\u00e1rai pull request-en kereszt\u00fcl ker\u00fclnek hozz\u00e1ad\u00e1sra a GIT-repozit\u00f3riumba, majd az Ansible-pipeline automatikusan ki\u00e9p\u00edti azokat.<\/p>\n<p>A csapat sz\u00e1m\u00e1ra t\u00f6rt\u00e9n\u0151 er\u0151forr\u00e1s-kiad\u00e1s p\u00e9ld\u00e1ja:<\/p>\n<pre><code class=\"go\">n\u00e9vterek:\n\n  chat-csapat:\n    podok: 23\n    hat\u00e1rok:\n      cpu: 11\n      mem\u00f3ria: 20Gi\n    k\u00e9rd\u00e9sek:\n      cpu: 11\n      mem\u00f3ria: 20Gi\n<\/code><\/pre>\n<p><\/p>\n<h4>K\u00e9r\u00e9sek \u00e9s hat\u00e1rok<\/h4>\n<p>\nA \u201eKubernetes\u201d-ben <i>K\u00e9r\u00e9s<\/i> \u2014 ez a garant\u00e1ltan fenntartott er\u0151forr\u00e1sok mennyis\u00e9ge <i>deployment<\/i> (egy vagy t\u00f6bb Docker-kont\u00e9ner) a klaszterben. A limit egy nem garant\u00e1lt maximum. Gyakran l\u00e1that\u00f3 a grafikonokon, hogy egy csapat t\u00fal sok k\u00e9r\u00e9st \u00e1ll\u00edtott be az \u00f6sszes alkalmaz\u00e1s\u00e1hoz, \u00e9s nem tudja telep\u00edteni az alkalmaz\u00e1st a \u201eKubernetes\u201d-be, mivel az \u0151 namespace-e alatt az \u00f6sszes k\u00e9r\u00e9s m\u00e1r \u201eelfogyott\u201d.<\/p>\n<p>A helyes megold\u00e1s ilyen helyzetben: a val\u00f3s er\u0151forr\u00e1s-felhaszn\u00e1l\u00e1st n\u00e9zni \u00e9s \u00f6sszehasonl\u00edtani a k\u00e9rt mennyis\u00e9ggel (Request).<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/417373d4421064f28d57a03b6bb5bf94.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/3168ad6dc8b159059b21e1177e145376.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA fenti k\u00e9perny\u0151k\u00e9peken l\u00e1that\u00f3, hogy a \u201ek\u00e9rt\u201d (Requested) CPU-k a val\u00f3s sz\u00e1lak sz\u00e1m\u00e1hoz k\u00f6zel\u00edtenek, m\u00edg a Hat\u00e1rok meghaladhatj\u00e1k a k\u00f6zponti processzorok val\u00f3s sz\u00e1lainak sz\u00e1m\u00e1t =)<\/p>\n<p>Most n\u00e9zz\u00fck meg r\u00e9szletesen egy namespace-t (\u00e9n a kube-system namespace-t v\u00e1lasztottam \u2014 ez a Kubernetes saj\u00e1t komponenseinek rendszernamespace-a), \u00e9s n\u00e9zz\u00fck meg, hogy az ig\u00e9nyelt CPU-id\u0151 \u00e9s mem\u00f3ria hogyan viszonyul a val\u00f3s felhaszn\u00e1l\u00e1shoz:<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/ed6160de5397b8cd39cbae172d4bb872.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNyilv\u00e1nval\u00f3, hogy a rendszer szolg\u00e1ltat\u00e1sok sz\u00e1m\u00e1ra fenntartott mem\u00f3ria \u00e9s CPU j\u00f3val meghaladja a val\u00f3s haszn\u00e1latot. A kube-system eset\u00e9ben ennek van joga: voltak olyan esetek, amikor az nginx ingress controller vagy a nodelocaldns cs\u00facsid\u0151ben m\u00e9rhet\u0151 CPU-t haszn\u00e1ltak \u00e9s sok RAM-ot fogyasztottak, ez\u00e9rt itt az ilyen tartal\u00e9k indokolt. Ezen k\u00edv\u00fcl nem t\u00e1maszkodhatunk az utols\u00f3 3 \u00f3ra grafikonjaira: k\u00edv\u00e1natos, hogy hossz\u00fa t\u00e1v\u00fa historikus metrik\u00e1kat l\u00e1ssunk.<\/p>\n<p>Fejlesztettek ki egy \"aj\u00e1nl\u00e1si\" rendszert. P\u00e9ld\u00e1ul itt l\u00e1that\u00f3, hogy mely er\u0151forr\u00e1sokat lenne \u00e9rdemes \"limit\u00e1lni\" (fels\u0151 enged\u00e9lyezett hat\u00e1r), hogy ne t\u00f6rt\u00e9nhessen \"throttling\": az a pillanat, amikor a m\u00e1r felhaszn\u00e1lt CPU vagy mem\u00f3ria kimer\u00edtette az adott id\u0151intervallumban rendelkez\u00e9sre \u00e1ll\u00f3 kv\u00f3t\u00e1t, \u00e9s v\u00e1rakozik, m\u00edg \"felengedik\":<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/f23aece10a585e6847bcacfe947031d1.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00cdme azok a podok, amelyeknek m\u00e9rs\u00e9kelni\u00fck kellene az ig\u00e9nyeiket:<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/1ec9996ce6355aeba603008d51aac209.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA <i>throttling<\/i> + Az er\u0151forr\u00e1sok monitoroz\u00e1s\u00e1r\u00f3l t\u00f6bb cikket is lehetne \u00edrni, ez\u00e9rt k\u00e9rlek, tedd fel a k\u00e9rd\u00e9seidet a megjegyz\u00e9sekben. R\u00e9szletekben elmondhat\u00f3, hogy az ilyen metrik\u00e1k automatiz\u00e1l\u00e1s\u00e1nak feladata meglehet\u0151sen \u00f6sszetett \u00e9s sok id\u0151t ig\u00e9nyel, valamint \u00fcgyes man\u0151verez\u00e9st ig\u00e9nyel \"ablakos\" funkci\u00f3kkal \u00e9s \"CTE\" Prometheus \/ VictoriaMetrics (ezek a kifejez\u00e9sek id\u00e9z\u0151jelben vannak, mivel a PromQL-ben szinte nincs hasonl\u00f3, ez\u00e9rt r\u00e9m\u00fclt lek\u00e9rdez\u00e9seket kell k\u00e9sz\u00edteni, amelyek t\u00f6bb k\u00e9perny\u0151nyi sz\u00f6veget tartalmaznak, \u00e9s azokat optimaliz\u00e1lni kell).<\/p>\n<p>V\u00e9g\u00fcl a fejleszt\u0151k rendelkeznek eszk\u00f6z\u00f6kkel a saj\u00e1t namespace-jeik monitoroz\u00e1s\u00e1ra a \"Kubernetes\" alatt, \u00e9s k\u00e9pesek v\u00e1lasztani, hol \u00e9s mikor mely alkalmaz\u00e1sok eset\u00e9ben lehet \"kiv\u00e1gni\" az er\u0151forr\u00e1sokat, \u00e9s mely podoknak lehet teljes \u00e9jszak\u00e1ra \u00e1tadni az \u00f6sszes CPU-t.<\/p>\n<h4>M\u00f3dszertanok<\/h4>\n<p>\nA c\u00e9gn\u00e9l, ahogy most <i>divatos<\/i>, mi k\u00f6vetj\u00fck a DevOps- \u00e9s <i>SRE<\/i>-gyakorlatokat. Amikor a c\u00e9gnek 1000 mikroszolg\u00e1ltat\u00e1sa, k\u00f6r\u00fclbel\u00fcl 350 fejleszt\u0151je \u00e9s 15 adminisztr\u00e1tora van az eg\u00e9sz infrastrukt\u00far\u00e1ra, \"divatosnak\" kell lenni: mindezek a \"buzzword-ek\" m\u00f6g\u00f6tt komoly sz\u00fcks\u00e9g van mindennek az automatiz\u00e1l\u00e1s\u00e1ra, \u00e9s az adminisztr\u00e1toroknak nem lehetnek sz\u0171k keresztmetszetek a folyamatokban.<\/p>\n<p>Ops-k\u00e9nt k\u00fcl\u00f6nb\u00f6z\u0151 metrik\u00e1kat \u00e9s m\u0171szerfalakat biztos\u00edtunk a fejleszt\u0151k sz\u00e1m\u00e1ra, amelyek a szolg\u00e1ltat\u00e1sok v\u00e1laszidej\u00e9vel \u00e9s hib\u00e1ival kapcsolatosak.<\/p>\n<p>Olyan m\u00f3dszertanokat alkalmazunk, mint p\u00e9ld\u00e1ul: <noindex><a rel=\"nofollow\" href=\"https:\/\/thenewstack.io\/monitoring-microservices-red-method\/\">RED<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"http:\/\/www.brendangregg.com\/usemethod.html\">USE<\/a><\/noindex> \u00e9s <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/forepaas\/distributed-monitoring-101-the-four-golden-signals-305bbbc33d35\">Golden Signals<\/a><\/noindex>, kombin\u00e1lva \u0151ket. Arra t\u00f6reksz\u00fcnk, hogy minimaliz\u00e1ljuk a dashboardok sz\u00e1m\u00e1t, \u00edgy egy pillant\u00e1ssal meg\u00e9rthet\u0151, hogy melyik szolg\u00e1ltat\u00e1s degrad\u00e1l\u00f3dik (p\u00e9ld\u00e1ul m\u00e1sodpercenk\u00e9nti v\u00e1laszk\u00f3dok, a 99. percentilis v\u00e1laszid\u0151), \u00e9s \u00edgy tov\u00e1bb. Ahogy \u00faj metrik\u00e1kra van sz\u00fcks\u00e9g a k\u00f6z\u00f6s dashboardokhoz, azonnal megrajzoljuk \u00e9s hozz\u00e1adjuk \u0151ket.<\/p>\n<p><i>M\u00e1r egy h\u00f3napja nem rajzoltam grafikonokat. Val\u00f3sz\u00edn\u0171leg ez j\u00f3 jel: azt jelenti, hogy a legt\u00f6bb 'k\u00edv\u00e1ns\u00e1g' m\u00e1r megval\u00f3sult. Volt, hogy hetente legal\u00e1bb egyszer rajzoltam \u00faj grafikont.<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/574f1b4d2be78fb779f1771bffac51dd.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/6ab2aa05f912839b14bdbcf84faaeb3a.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA v\u00e9geredm\u00e9ny \u00e9rt\u00e9kes abban, hogy most a fejleszt\u0151k el\u00e9gg\u00e9 ritk\u00e1n keresnek meg az adminokt\u00f3l azzal a k\u00e9rd\u00e9ssel, hogy 'hol n\u00e9zhetik meg valamelyik metrik\u00e1t'.<\/p>\n<p>Bevezet\u00e9s <i>Szolg\u00e1ltat\u00e1s Mesh<\/i> nem t\u00fal messze \u00e9s jelent\u0151sen megk\u00f6nny\u00edti az \u00e9letet mindenkinek, a Tools csapat munkat\u00e1rsai m\u00e1r k\u00f6zel vannak a 'az Istio eg\u00e9szs\u00e9ges ember' bevezet\u00e9s\u00e9hez: minden egyes HTTP(s) k\u00e9r\u00e9s \u00e9letciklusa l\u00e1that\u00f3 lesz a monitoroz\u00e1s sor\u00e1n, \u00e9s mindig meg\u00e9rthetj\u00fck, hogy 'melyik f\u00e1zisban romlott el' az interszolg\u00e1ltat\u00e1sok (\u00e9s nem csak) interakci\u00f3ja. Iratkozzon fel a \u0414\u043e\u043c\u041a\u043b\u0438\u043a c\u00e9g k\u00f6zponti h\u00edreire. =)<\/p>\n<h2>A Kubernetes infrastrukt\u00fara t\u00e1mogat\u00e1sa<\/h2>\n<p>\nT\u00f6rt\u00e9netileg \u00fagy alakult, hogy jav\u00edtott verzi\u00f3t haszn\u00e1lunk <i>Kubespray<\/i> \u2014 Ansible szerep a Kubernetes telep\u00edt\u00e9s\u00e9hez, kib\u0151v\u00edt\u00e9s\u00e9hez \u00e9s friss\u00edt\u00e9s\u00e9hez. Egy szakaszban a f\u0151 \u00e1gb\u00f3l ki lett v\u00e1gva a non-kubeadm telep\u00edt\u00e9sek t\u00e1mogat\u00e1sa, \u00e9s a kubeadm-ra val\u00f3 \u00e1t\u00e1ll\u00e1s folyamat\u00e1t nem aj\u00e1nlott\u00e1k fel. Ennek k\u00f6vetkezt\u00e9ben a Southbridge c\u00e9g elk\u00e9sz\u00edtette a saj\u00e1t fork-j\u00e1t (kubeadm t\u00e1mogat\u00e1ssal \u00e9s kritikus probl\u00e9m\u00e1k gyors megold\u00e1s\u00e1val). <\/p>\n<p>A k8s klaszterek friss\u00edt\u00e9si folyamata a k\u00f6vetkez\u0151k\u00e9ppen n\u00e9z ki:<\/p>\n<ul>\n<li>Felvessz\u00fck <i>Kubespray<\/i> a Southbridge-t\u0151l, \u00f6sszehasonl\u00edtjuk a mi \u00e1ggal, \u00f6sszevonjuk.<\/li>\n<li>Kibocs\u00e1tjuk a friss\u00edt\u00e9st a <i>Stressz<\/i>-'Kocka'.<\/li>\n<li>Friss\u00edt\u00e9st egy node-on (az Ansible-ben ez 'serial: 1') v\u00e9gezve <i>Dev<\/i>-'Kocka'.<\/li>\n<li>Friss\u00edt\u00fcnk <i>Prod<\/i> szombat este egy node-on.<\/li>\n<\/ul>\n<p>\nA j\u00f6v\u0151ben tervezz\u00fck, hogy lecser\u00e9lj\u00fck <i>Kubespray<\/i> valami gyorsabbra, \u00e9s \u00e1tt\u00e9r\u00fcnk a <i>kubeadm<\/i>.<\/p>\n<p>\u00d6sszesen h\u00e1rom 'Kock\u00e1nk' van: Stressz, Dev \u00e9s Prod. Tervezz\u00fck, hogy elind\u00edtunk egy m\u00e1sikat (<i>forr\u00f3 standby<\/i>) a m\u00e1sodik adatk\u00f6zpontban l\u00e9v\u0151 Prod-'Kocka'-t. <i>Stressz<\/i> \u00e9s <i>Dev<\/i> 'Virtu\u00e1lis g\u00e9pekben' \u00e9lnek (oVirt a Stresszhez \u00e9s VMWare cloud a Dev-hez). <i>Prod<\/i>-'Kocka' 'csupasz hardveren' m\u0171k\u00f6dik: ezek azonos node-ok 32 CPU sz\u00e1lakkal, 64-128 GB mem\u00f3ri\u00e1val \u00e9s 300 GB SSD RAID 10 - \u00f6sszesen 50 darab. H\u00e1rom 'v\u00e9kony' node-ot a 'mester' al\u00e1 sz\u00e1nunk <i>Prod<\/i>-'Kock\u00e1k': 16 GB mem\u00f3ria, 12 CPU sz\u00e1l.<\/p>\n<p>A termel\u00e9shez ink\u00e1bb a 'csupasz hardver' haszn\u00e1lat\u00e1t r\u00e9szes\u00edtj\u00fck el\u0151nyben, \u00e9s ker\u00fclj\u00fck a felesleges r\u00e9tegeket, mint p\u00e9ld\u00e1ul <i>OpenStack<\/i>: nem szeretn\u00e9nk 'zajos szomsz\u00e9dokat' \u00e9s CPU <i>ellopott id\u0151t<\/i>A h\u00e1zon bel\u00fcli OpenStack eset\u00e9n k\u00f6r\u00fclbel\u00fcl k\u00e9tszeres\u00e9re n\u0151 a rendszergazd\u00e1lkod\u00e1s \u00f6sszetetts\u00e9ge.<\/p>\n<p>A CI\/CD \u201eKubernetes\u201d \u00e9s m\u00e1s infrastrukt\u00fara komponensekhez k\u00fcl\u00f6n GIT szervert, Helm 3-at haszn\u00e1lunk (sok neh\u00e9zs\u00e9g \u00e1r\u00e1n v\u00e1ltottunk a Helm 2-r\u0151l, de nagyon \u00f6r\u00fcl\u00fcnk a lehet\u0151s\u00e9gnek <i>atomic<\/i>), Jenkins, Ansible \u00e9s Docker. Szeretj\u00fck a feature-brancheket \u00e9s egy repozit\u00f3riumb\u00f3l t\u00f6bb k\u00f6rnyezetbe t\u00f6rt\u00e9n\u0151 telep\u00edt\u00e9st.<\/p>\n<h3>Z\u00e1r\u00e1s<\/h3>\n<p><img decoding=\"async\" alt=\"Kubernetes a DomClick-ben: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszervizes klasztert ir\u00e1ny\u00edtunk\" src=\"\/wp-content\/uploads\/2020\/08\/34ddcd1f275c63c1ad821218d16b5abb.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n\u00cdgy n\u00e9z ki nagyj\u00e1b\u00f3l a DevOps folyamat a DomClick-n\u00e9l a m\u0171k\u00f6d\u00e9si m\u00e9rn\u00f6k szemsz\u00f6g\u00e9b\u0151l. A cikk kev\u00e9sb\u00e9 technikai lett, mint v\u00e1rtam, ez\u00e9rt k\u00f6vess\u00e9tek a DomClick h\u00edreit a Habr-on: lesznek komolyabb cikkek a Kubernetes-r\u0151l \u00e9s m\u00e9g sok m\u00e1sr\u00f3l.<br \/>\n<br \/>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/domclick\/blog\/501122\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0412\u0438\u043a\u0442\u043e\u0440 \u042f\u0433\u043e\u0444\u0430\u0440\u043e\u0432, \u0438 \u044f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435\u043c Kubernetes-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0414\u043e\u043c\u041a\u043b\u0438\u043a \u0432 \u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u0438 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 Ops (\u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f). \u042f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043e\u0431 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435 \u043d\u0430\u0448\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432 Dev &lt;-&gt; Ops, \u043e\u0431 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u0445 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 k8s-\u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 \u0432 \u0420\u043e\u0441\u0441\u0438\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e DevOps\/SRE-\u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442 \u043d\u0430\u0448\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 Ops \u0412 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 Ops [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":91200,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-91199","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=\"\u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0412\u0438\u043a\u0442\u043e\u0440 \u042f\u0433\u043e\u0444\u0430\u0440\u043e\u0432, \u0438 \u044f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435\u043c Kubernetes-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0414\u043e\u043c\u041a\u043b\u0438\u043a \u0432 \u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u0438 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 Ops (\u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f).\" \/>\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\/hu\/blog\/administrirovanie\/kubernetes-v-domklik-kak-spat-spokojno-upravlyaya-klasterom-na-1000-mikroservisov\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\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\udd47Kubernetes \u0432 \u0414\u043e\u043c\u041a\u043b\u0438\u043a: \u043a\u0430\u043a \u0441\u043f\u0430\u0442\u044c \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u043c \u043d\u0430 1000 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0412\u0438\u043a\u0442\u043e\u0440 \u042f\u0433\u043e\u0444\u0430\u0440\u043e\u0432, \u0438 \u044f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435\u043c Kubernetes-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0414\u043e\u043c\u041a\u043b\u0438\u043a \u0432 \u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u0438 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 Ops (\u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f).\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/kubernetes-v-domklik-kak-spat-spokojno-upravlyaya-klasterom-na-1000-mikroservisov\" \/>\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-08-09T23:42:03+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-08-09T23:42:03+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\udd47Kubernetes a DomClick-n\u00e9l: hogyan aludjunk nyugodtan, mik\u00f6zben egy 1000 mikroszolg\u00e1ltat\u00e1sb\u00f3l \u00e1ll\u00f3 klasztert ir\u00e1ny\u00edtunk | ProHoster","description":"Az vagyok, Viktor Jagofarov, \u00e9s a DomClick-n\u00e9l a Kubernetes-platform fejleszt\u00e9s\u00e9vel foglalkozom mint a m\u0171veleti csapat m\u0171szaki vezet\u0151je.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/kubernetes-v-domklik-kak-spat-spokojno-upravlyaya-klasterom-na-1000-mikroservisov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","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\udd47Kubernetes \u0432 \u0414\u043e\u043c\u041a\u043b\u0438\u043a: \u043a\u0430\u043a \u0441\u043f\u0430\u0442\u044c \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u043c \u043d\u0430 1000 \u043c\u0438\u043a\u0440\u043e\u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 | ProHoster","og:description":"\u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0412\u0438\u043a\u0442\u043e\u0440 \u042f\u0433\u043e\u0444\u0430\u0440\u043e\u0432, \u0438 \u044f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435\u043c Kubernetes-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0414\u043e\u043c\u041a\u043b\u0438\u043a \u0432 \u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u0438 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 Ops (\u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f).","og:url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/kubernetes-v-domklik-kak-spat-spokojno-upravlyaya-klasterom-na-1000-mikroservisov","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-08-09T23:42:03+00:00","article:modified_time":"2020-08-09T23:42:03+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"91199","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 12:32:23","updated":"2022-09-28 06:43:59","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/91199","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=91199"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/91199\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media\/91200"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=91199"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=91199"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=91199"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}