{"id":81888,"date":"2020-05-17T13:42:23","date_gmt":"2020-05-17T11:42:23","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/thanos-masshtabiruemyj-prometheus"},"modified":"2020-05-17T13:42:23","modified_gmt":"2020-05-17T11:42:23","slug":"thanos-masshtabiruemyj-prometheus","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/thanos-masshtabiruemyj-prometheus","title":{"rendered":"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><b><i>Az \u00edr\u00e1s ford\u00edt\u00e1sa kifejezetten a kurzus hallgat\u00f3i sz\u00e1m\u00e1ra k\u00e9sz\u00fclt <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/jYQP\/\">az \u00faj ford\u00edt\u00e1st osztjuk meg veletek. Induljunk.<\/a><\/noindex>.<\/i><\/b><\/p>\n<p>\n<i><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/fabxc\">Fabian Reinartz<\/a><\/noindex> \u2014 szoftverfejleszt\u0151, a Go fanatikusa, aki szereti a komplex probl\u00e9m\u00e1k megold\u00e1s\u00e1t. Jelenleg a Prometheus karbantart\u00f3ja \u00e9s a Kubernetes SIG instrumentation t\u00e1rsalap\u00edt\u00f3ja. Kor\u00e1bban a SoundCloud produkci\u00f3s m\u00e9rn\u00f6ke volt, \u00e9s a CoreOS monitoring csoportj\u00e1t ir\u00e1ny\u00edtotta. Jelenleg a Google-n\u00e1l dolgozik.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Bplotka\">Bartek Plotka<\/a><\/noindex> \u2014 infrastrukt\u00fara m\u00e9rn\u00f6k az Improbable-n\u00e9l. \u00c9rdekli az \u00faj technol\u00f3gi\u00e1k \u00e9s a elosztott rendszerek probl\u00e9m\u00e1i. Alacsony szint\u0171 programoz\u00e1si tapasztalattal rendelkezik az Intel-n\u00e9l, hozz\u00e1j\u00e1rult a Mesoshoz, \u00e9s glob\u00e1lis SRE tapasztalattal b\u00edr az Improbable-n\u00e9l. A mikroszolg\u00e1ltat\u00e1sok vil\u00e1g\u00e1nak jav\u00edt\u00e1s\u00e1n dolgozik. H\u00e1rom szenved\u00e9lye: Golang, open source \u00e9s r\u00f6plabda.<\/i><\/p>\n<p>A z\u00e1szl\u00f3shaj\u00f3nk, a SpatialOS l\u00e1tt\u00e1n megtudhatja, hogy az Improbable sz\u00e1m\u00e1ra a glob\u00e1lis m\u00e9ret\u0171, dinamikus felh\u0151infrastrukt\u00far\u00e1ra van sz\u00fcks\u00e9g, amely sok Kubernetes klasztert kezel. Mi voltunk az els\u0151k, akik elkezdt\u00e9k haszn\u00e1lni a monitoroz\u00f3 rendszert <noindex><a rel=\"nofollow\" href=\"https:\/\/prometheus.io\/\">Prometheus<\/a><\/noindex>. A Prometheus k\u00e9pes a val\u00f3s idej\u0171 milli\u00f3k metrik\u00e1j\u00e1nak nyomon k\u00f6vet\u00e9s\u00e9re, \u00e9s egy er\u0151teljes lek\u00e9rdez\u0151 nyelvet k\u00edn\u00e1l, amely lehet\u0151v\u00e9 teszi a sz\u00fcks\u00e9ges inform\u00e1ci\u00f3k kinyer\u00e9s\u00e9t.<\/p>\n<p>A Prometheus egyszer\u0171s\u00e9ge \u00e9s megb\u00edzhat\u00f3s\u00e1ga az egyik f\u0151 el\u0151nye. Ugyanakkor, amikor el\u00e9rt\u00fck a bizonyos m\u00e9retet, n\u00e9h\u00e1ny h\u00e1tr\u00e1nyba \u00fctk\u00f6zt\u00fcnk. E probl\u00e9m\u00e1k megold\u00e1s\u00e1hoz l\u00e9trehoztuk <noindex><a rel=\"nofollow\" href=\"https:\/\/thanos.io\/\">Thanos<\/a><\/noindex> \u2014 egy ny\u00edlt forr\u00e1sk\u00f3d\u00fa projektet, amelyet az Improbable fejlesztett ki, hogy z\u00f6kken\u0151mentesen \u00e1talak\u00edtsa a megl\u00e9v\u0151 Prometheus klasztereket egyetlen monitoroz\u00f3 rendszerre, korl\u00e1tlan t\u00f6rt\u00e9neti adataink t\u00e1rol\u00e1s\u00e1val. A Thanos el\u00e9rhet\u0151 a Githubon <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/improbable-eng\/thanos\">itt<\/a><\/noindex>.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/gdk.improbable.io\/l\/169082\/2020-01-10\/2j9yxq\">Tartsa szemmel az Improbable legfrissebb h\u00edreit.<\/a><\/noindex><\/p>\n<h2>C\u00e9ljaink a Thanos-szal<\/h2>\n<p>\nBizonyos m\u00e9ret eset\u00e9n olyan probl\u00e9m\u00e1k mer\u00fclnek fel, amelyek meghaladj\u00e1k a van\u00edlia Prometheus lehet\u0151s\u00e9geit. Hogyan t\u00e1roljunk petab\u00e1jt t\u00f6rt\u00e9neti adatokat megb\u00edzhat\u00f3an \u00e9s gazdas\u00e1gosan? Meg lehet ezt val\u00f3s\u00edtani an\u00e9lk\u00fcl, hogy k\u00e1ros\u00edtani kellene a lek\u00e9rdez\u00e9sek v\u00e1laszidej\u00e9t? Hozz\u00e1f\u00e9rhet\u00fcnk-e az \u00f6sszes metrik\u00e1hoz, amelyek k\u00fcl\u00f6nb\u00f6z\u0151 Prometheus szervereken tal\u00e1lhat\u00f3k, egyetlen API-lek\u00e9rdez\u00e9ssel? Van-e m\u00f3d a Prometheus HA \u00e1ltal gy\u0171jt\u00f6tt replik\u00e1lt adatok egyes\u00edt\u00e9s\u00e9re?<\/p>\n<p>E k\u00e9rd\u00e9sek megold\u00e1s\u00e1ra hoztuk l\u00e9tre a Thanost. A k\u00f6vetkez\u0151 szakaszokban bemutatjuk, hogyan k\u00f6zel\u00edtett\u00fck meg ezen probl\u00e9m\u00e1k megold\u00e1s\u00e1t, \u00e9s r\u00e9szletezz\u00fck azokat a c\u00e9lokat, amelyeket k\u00f6vetni k\u00edv\u00e1ntunk.<\/p>\n<h4>Adatok lek\u00e9r\u00e9se t\u00f6bb Prometheus p\u00e9ld\u00e1nyb\u00f3l (glob\u00e1lis lek\u00e9rdez\u00e9s)<\/h4>\n<p>\nA Prometheus funkcion\u00e1lis megk\u00f6zel\u00edt\u00e9st k\u00edn\u00e1l a shardinghoz. M\u00e9g egyetlen Prometheus-szerver is elegend\u0151 sk\u00e1l\u00e1zhat\u00f3s\u00e1got biztos\u00edt ahhoz, hogy a felhaszn\u00e1l\u00f3kat megszabad\u00edtsa a horizont\u00e1lis sharding bonyodalmait\u00f3l a felhaszn\u00e1l\u00e1s szinte minden form\u00e1j\u00e1ban.<\/p>\n<p>B\u00e1r ez egy kiv\u00e1l\u00f3 telep\u00edt\u00e9si modell, gyakran sz\u00fcks\u00e9ges hozz\u00e1f\u00e9rni az adatokhoz k\u00fcl\u00f6nb\u00f6z\u0151 Prometheus szervereken kereszt\u00fcl egyetlen API vagy UI \u2014 glob\u00e1lis n\u00e9zet \u2014 \u00e1ltal. Term\u00e9szetesen lehet\u0151s\u00e9g van arra, hogy t\u00f6bb k\u00e9r\u00e9st jelen\u00edts\u00fcnk meg egy Grafana panelen, de minden k\u00e9r\u00e9st csak egy Prometheus szerveren lehet v\u00e9grehajtani. M\u00e1sr\u00e9szr\u0151l, a Thanos seg\u00edts\u00e9g\u00e9vel k\u00e9rd\u00e9seket \u00e9s aggreg\u00e1lhatjuk az adatokat t\u00f6bb Prometheus szerverr\u0151l, mivel mindegyik\u00fck egy v\u00e9gpontb\u00f3l el\u00e9rhet\u0151.<\/p>\n<p>Kor\u00e1bban, a glob\u00e1lis n\u00e9zet el\u00e9r\u00e9s\u00e9hez az Improbable-n\u00e1l a Prometheus p\u00e9ld\u00e1nyainkat t\u00f6bb szint\u0171 strukt\u00far\u00e1ban szervezt\u00fck. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/prometheus\/prometheus\/blob\/master\/docs\/federation.md#hierarchical-federation\">Hierarchikus F\u00f6der\u00e1ci\u00f3<\/a><\/noindex>. Ez a Prometheus meta-szerver l\u00e9trehoz\u00e1s\u00e1t jelentette, amely minden \"lev\u00e9l\" szervert\u0151l gy\u0171jti a metrik\u00e1k egy r\u00e9sz\u00e9t.<\/p>\n<p><img decoding=\"async\" alt=\"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.\" src=\"\/wp-content\/uploads\/2020\/05\/82590f017734f5dc1038a0e13f772d2a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEz a megk\u00f6zel\u00edt\u00e9s probl\u00e9m\u00e1ss\u00e1 v\u00e1lt. Bonyolultabb konfigur\u00e1ci\u00f3t, egy potenci\u00e1lis hibapont hozz\u00e1ad\u00e1s\u00e1t \u00e9s bonyolult ir\u00e1nyelvek alkalmaz\u00e1s\u00e1t eredm\u00e9nyezte, hogy a sz\u00f6vets\u00e9ges v\u00e9gpontra csak a sz\u00fcks\u00e9ges adatokat biztos\u00edtsuk. Ezenk\u00edv\u00fcl az ilyen t\u00edpus\u00fa f\u00f6der\u00e1ci\u00f3 nem biztos\u00edt val\u00f3di glob\u00e1lis n\u00e9zetet, mivel nem minden adat \u00e9rhet\u0151 el egyetlen API-k\u00e9r\u00e9sb\u0151l.<\/p>\n<p>Ez szorosan \u00f6sszef\u00fcgg a magas rendelkez\u00e9sre \u00e1ll\u00e1s\u00fa (high-availability, HA) Prometheus szervereken gy\u0171jt\u00f6tt adatok egys\u00e9ges bemutat\u00e1s\u00e1val. A Prometheus HA-modell f\u00fcggetlen\u00fcl gy\u0171jti az adatokat k\u00e9tszer, ami annyira egyszer\u0171, hogy nem lehetne egyszer\u0171bb. Azonban sokkal k\u00e9nyelmesebb lenne egyes\u00edteni \u00e9s deduplik\u00e1lni a k\u00e9t \u00e1raml\u00e1s k\u00f6z\u00f6s bemutat\u00e1s\u00e1t.<\/p>\n<p>Term\u00e9szetesen sz\u00fcks\u00e9g van a magas rendelkez\u00e9sre \u00e1ll\u00e1s\u00fa Prometheus szerverekre. Az Improbable-n\u00e1l nagyon komolyan vessz\u00fck az adatok percenk\u00e9nti monitoroz\u00e1s\u00e1t, de egyetlen Prometheus p\u00e9ld\u00e1ny a klaszterben egyetlen hibapontot jelent. B\u00e1rmilyen konfigur\u00e1ci\u00f3s hiba vagy hardverhiba potenci\u00e1lisan fontos adatok elveszt\u00e9s\u00e9hez vezethet. M\u00e9g egy egyszer\u0171 telep\u00edt\u00e9s is kis megszak\u00edt\u00e1sokhoz vezethet a metrik\u00e1k gy\u0171jt\u00e9s\u00e9ben, mivel a \u00fajraind\u00edt\u00e1s jelent\u0151sen tov\u00e1bb tarthat, mint a leh\u00faz\u00e1si intervallum.<\/p>\n<h4>Megb\u00edzhat\u00f3 t\u00f6rt\u00e9nelmi adatok t\u00e1rol\u00e1sa<\/h4>\n<p>\nA megfizethet\u0151, gyors \u00e9s tart\u00f3s metrikat\u00e1rol\u00e1s az \u00e1lmunk (az \u00e1lmunk sok Prometheus felhaszn\u00e1l\u00f3val osztozik). Az Improbable-n\u00e1l arra k\u00e9nyszer\u00fclt\u00fcnk, hogy a metrik\u00e1k t\u00e1rol\u00e1si idej\u00e9t kilenc napra \u00e1ll\u00edtsuk be (Prometheus 1.8 eset\u00e9n). Ez nyilv\u00e1nval\u00f3 korl\u00e1toz\u00e1sokat jelent arra vonatkoz\u00f3an, hogy milyen messze n\u00e9zhet\u00fcnk vissza.<\/p>\n<p>A Prometheus 2.0 ebben a tekintetben javult, mivel a time series-ek sz\u00e1ma m\u00e1r nem befoly\u00e1solja a szerver \u00e1ltal\u00e1nos teljes\u00edtm\u00e9ny\u00e9t (l\u00e1sd: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=nDalewt4BOw\">KubeCon f\u0151el\u0151ad\u00e1s Prometheus 2-r\u0151l<\/a><\/noindex>). Ennek ellen\u00e9re a Prometheus az adatokat helyi lemezen t\u00e1rolja. B\u00e1r a nagy hat\u00e9konys\u00e1g\u00fa adatkompresszi\u00f3 jelent\u0151sen cs\u00f6kkentheti a helyi SSD haszn\u00e1lat\u00e1t, v\u00e9gs\u0151 soron m\u00e9g mindig van egy hat\u00e1r a meg\u0151rizhet\u0151 t\u00f6rt\u00e9neti adatok mennyis\u00e9g\u00e9re.<\/p>\n<p>Tov\u00e1bb\u00e1, az Improbable-n\u00e1l figyelmet ford\u00edtunk a megb\u00edzhat\u00f3s\u00e1gra, az egyszer\u0171s\u00e9gre \u00e9s a k\u00f6lts\u00e9gekre. A nagy helyi lemezek nehezebben kezelhet\u0151ek \u00e9s menthet\u0151ek. Dr\u00e1g\u00e1bbak, \u00e9s t\u00f6bb eszk\u00f6zt ig\u00e9nyelnek a biztons\u00e1gi ment\u00e9shez, ami t\u00falzott bonyolults\u00e1got eredm\u00e9nyez.<\/p>\n<h4>Leew\u00e9telez\u00e9s<\/h4>\n<p>\nAmint elkezdt\u00fcnk dolgozni a t\u00f6rt\u00e9neti adatokkal, r\u00e1j\u00f6tt\u00fcnk, hogy alapvet\u0151 neh\u00e9zs\u00e9gek mer\u00fclnek fel az O-nagyokkal, amelyek miatt a lek\u00e9rdez\u00e9sek egyre lassabb\u00e1 v\u00e1lnak, ha hetekkel, h\u00f3napokkal \u00e9s \u00e9vekkel dolgozunk.<\/p>\n<p>A probl\u00e9ma standard megold\u00e1sa a <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Decimation_(signal_processing)\">leew\u00e9telez\u00e9s<\/a><\/noindex> (downsampling) \u2014 a jel mintav\u00e9teli frekvenci\u00e1j\u00e1nak cs\u00f6kkent\u00e9se. A mintav\u00e9teli frekvencia cs\u00f6kkent\u00e9s\u00e9vel \"lekicsiny\u00edthetj\u00fck\" az id\u0151tartom\u00e1nyt, \u00e9s meg\u0151rizhetj\u00fck a r\u00e9gi mint\u00e1k sz\u00e1m\u00e1t, ami \u00e1ltal a lek\u00e9rdez\u00e9sek gyorsas\u00e1g\u00e1t meg\u0151rizhetj\u00fck.<\/p>\n<p>A r\u00e9gi adatok leew\u00e9telez\u00e9se elker\u00fclhetetlen k\u00f6vetelm\u00e9ny minden hossz\u00fa t\u00e1v\u00fa t\u00e1rol\u00e1si megold\u00e1s eset\u00e9n, \u00e9s t\u00falmutat a klasszikus Prometheus-on.<\/p>\n<h4>Tov\u00e1bbi c\u00e9lok<\/h4>\n<p>\nA Thanos projekt egyik els\u0151dleges c\u00e9lja a z\u00f6kken\u0151mentes integr\u00e1ci\u00f3 b\u00e1rmilyen megl\u00e9v\u0151 Prometheus telep\u00edt\u00e9ssel. A m\u00e1sodik c\u00e9l a k\u00f6nny\u0171 \u00fczemeltet\u00e9s volt minim\u00e1lis bel\u00e9p\u00e9si akad\u00e1lyokkal. B\u00e1rmilyen f\u00fcgg\u0151s\u00e9get k\u00f6nnyen ki kell tudni el\u00e9g\u00edteni, ak\u00e1r kis, ak\u00e1r nagy felhaszn\u00e1l\u00f3k sz\u00e1m\u00e1ra, ami minim\u00e1lis alapk\u00f6lts\u00e9get is jelent.<\/p>\n<h2>A Thanos architekt\u00far\u00e1ja<\/h2>\n<p>\nMiut\u00e1n az el\u0151z\u0151 r\u00e9szben felsoroltuk a c\u00e9ljainkat, n\u00e9zz\u00fck meg, hogyan oldja meg a Thanos ezeket a probl\u00e9m\u00e1kat.<\/p>\n<h4>Glob\u00e1lis n\u00e9zet<\/h4>\n<p>\nAhhoz, hogy global view-t kaphassunk a megl\u00e9v\u0151 Prometheus p\u00e9ld\u00e1nyok f\u00f6l\u00f6tt, egy olyan bel\u00e9p\u00e9si pontot kell l\u00e9trehoznunk, amely \u00f6sszek\u00f6ti az \u00f6sszes szervert. Ezt a Thanos komponens v\u00e9gzi. <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/blog\/2015\/06\/the-distributed-system-toolkit-patterns#example-1-sidecar-containers\">Sidecar<\/a><\/noindex>. Ez minden Prometheus szerver mellett telep\u00fcl, \u00e9s mint proxy m\u0171k\u00f6dik, szolg\u00e1ltatva a helyi Prometheus adatokat a gRPC Store API interf\u00e9szen kereszt\u00fcl, amely lehet\u0151v\u00e9 teszi az id\u0151sz\u00e1madatok lek\u00e9r\u00e9s\u00e9t c\u00edmk\u00e9k \u00e9s id\u0151intervallum alapj\u00e1n.<\/p>\n<p>A m\u00e1sik oldalon van egy horizont\u00e1lisan sk\u00e1l\u00e1zhat\u00f3, \u00e1llapotmentes Querier komponens, amely kicsivel t\u00f6bbet tesz, mint egyszer\u0171en v\u00e1laszolni a PromQL lek\u00e9rdez\u00e9sekre a standard Prometheus HTTP API-n kereszt\u00fcl. A Querier, Sidecar \u00e9s m\u00e1s Thanos komponensek k\u00f6z\u00f6tti kommunik\u00e1ci\u00f3 a <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Gossip_protocol\">gossip protokollon<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.\" src=\"\/wp-content\/uploads\/2020\/05\/fbcf1e756f5da4e8529f17abd4cedd00.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<ol>\n<li>A Querier, amikor lek\u00e9rdez\u00e9st kap, csatlakozik a megfelel\u0151 Store API szerverhez, azaz a Sidecar-okhoz, \u00e9s lek\u00e9ri az id\u0151sz\u00e1madatokat a megfelel\u0151 Prometheus szerverekr\u0151l.<\/li>\n<li>Ezut\u00e1n egyes\u00edti a v\u00e1laszokat, \u00e9s v\u00e9grehajtja a PromQL lek\u00e9rdez\u00e9st. A Querier k\u00e9pes egyes\u00edteni a nem \u00e1tfed\u0151 adatokat \u00e9s az HA Prometheus szerverekr\u0151l sz\u00e1rmaz\u00f3 duplik\u00e1lt adatokat is.<\/li>\n<\/ol>\n<p>\nEz megoldja a rejtv\u00e9ny\u00fcnk f\u0151 r\u00e9sz\u00e9t \u2013 az adatok egyes\u00edt\u00e9se a szigetelt Prometheus szerverekr\u0151l egy egys\u00e9ges n\u00e9zetbe. Val\u00f3j\u00e1ban a Thanos csak ez\u00e9rt a lehet\u0151s\u00e9g\u00e9rt haszn\u00e1lhat\u00f3. Nincs sz\u00fcks\u00e9g b\u00e1rmilyen m\u00f3dos\u00edt\u00e1sra a megl\u00e9v\u0151 Prometheus szervereken!<\/p>\n<h4>Korl\u00e1tlan t\u00e1rol\u00e1si id\u0151!<\/h4>\n<p>\nDe el\u0151bb-ut\u00f3bb szeretn\u00e9nk meg\u0151rizni azokat az adatokat, amelyek meghaladj\u00e1k a Prometheus szok\u00e1sos t\u00e1rol\u00e1si idej\u00e9t. A t\u00f6rt\u00e9neti adatok t\u00e1rol\u00e1s\u00e1ra objektumt\u00e1rol\u00f3t v\u00e1lasztottunk. Ez sz\u00e9les k\u00f6rben el\u00e9rhet\u0151 b\u00e1rmely felh\u0151ben, valamint a helyi adatk\u00f6zpontokban, \u00e9s nagyon k\u00f6lts\u00e9ghat\u00e9kony. Tov\u00e1bb\u00e1, szinte b\u00e1rmely objektumt\u00e1rol\u00f3 j\u00f3l ismert S3 API-n kereszt\u00fcl \u00e9rhet\u0151 el.<\/p>\n<p>A Prometheus k\u00f6r\u00fclbel\u00fcl k\u00e9t\u00f3r\u00e1nk\u00e9nt \u00edrja az adatokat a mem\u00f3ri\u00e1b\u00f3l lemezre. Az adatblokkok mindent tartalmaznak egy r\u00f6gz\u00edtett id\u0151intervallumra vonatkoz\u00f3an, \u00e9s megv\u00e1ltoztathatatlanok. Ez nagyon praktikus, mert a Thanos Sidecar egyszer\u0171en meg tudja n\u00e9zni a Prometheus adatainak k\u00f6nyvt\u00e1r\u00e1t, \u00e9s ahogy \u00faj blokkok jelennek meg, azokat bet\u00f6lti az objektumt\u00e1rol\u00f3 v\u00f6dr\u00f6kbe.<\/p>\n<p><img decoding=\"async\" alt=\"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.\" src=\"\/wp-content\/uploads\/2020\/05\/2be803d8d7e0ce9a5ffa441b7778a40b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA lemezre \u00edr\u00e1s ut\u00e1ni azonnali felt\u00f6lt\u00e9s az objektumt\u00e1rol\u00f3ba szint\u00e9n lehet\u0151v\u00e9 teszi a \u201escraper\u201d (Prometheus \u00e9s Thanos Sidecar) egyszer\u0171s\u00edt\u00e9s\u00e9t. Ez megk\u00f6nny\u00edti a rendszer karbantart\u00e1s\u00e1t, k\u00f6lts\u00e9geit \u00e9s tervez\u00e9s\u00e9t.<\/p>\n<p>Ahogy l\u00e1that\u00f3, az adatok biztons\u00e1gi ment\u00e9se rendk\u00edv\u00fcl egyszer\u0171en megval\u00f3s\u00edthat\u00f3. De mi a helyzet az objektumt\u00e1rol\u00f3 adataihoz val\u00f3 lek\u00e9rdez\u00e9ssel?<\/p>\n<p>A Thanos Store komponensk\u00e9nt m\u0171k\u00f6dik, mint proxy az objektumt\u00e1rol\u00f3b\u00f3l sz\u00e1rmaz\u00f3 adatok megszerz\u00e9s\u00e9hez. Hasonl\u00f3an a Thanos Sidecar-hoz, r\u00e9szt vesz a gossip klaszterben \u00e9s megval\u00f3s\u00edtja a Store API-t. \u00cdgy a megl\u00e9v\u0151 Querier-ek sz\u00e1m\u00e1ra Sidecark\u00e9nt m\u0171k\u00f6dik, mint egy tov\u00e1bbi forr\u00e1s a time series adatok sz\u00e1m\u00e1ra - semmilyen k\u00fcl\u00f6n be\u00e1ll\u00edt\u00e1sra nincs sz\u00fcks\u00e9g.<\/p>\n<p><img decoding=\"async\" alt=\"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.\" src=\"\/wp-content\/uploads\/2020\/05\/5a437ae1bf8a6f79b8d24aeb9dde2d17.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA time series adatok blokkjai t\u00f6bb nagy f\u00e1jlb\u00f3l \u00e1llnak. Az ig\u00e9ny szerinti bet\u00f6lt\u00e9s\u00fck meglehet\u0151sen hat\u00e9konytalan lenne, m\u00edg a helyi cache-el\u00e9s hatalmas mem\u00f3ri\u00e1t \u00e9s lemezter\u00fcletet ig\u00e9nyelne.<\/p>\n<p>Ehelyett a Store Gateway tudja, hogyan kezelje a Prometheus t\u00e1rol\u00e1si form\u00e1t. Az intelligens lek\u00e9rdez\u00e9stervez\u0151 \u00e9s csak a sz\u00fcks\u00e9ges index r\u00e9szek cache-el\u00e9s\u00e9vel lehet\u0151v\u00e9 v\u00e1lt a bonyolult lek\u00e9rdez\u00e9sek minimaliz\u00e1l\u00e1sa a minimum HTTP-k\u00e9r\u00e9sek sz\u00e1m\u00e1nak cs\u00f6kkent\u00e9s\u00e9vel az objektumt\u00e1rol\u00f3 f\u00e1jlokhoz. Ennek eredm\u00e9nyek\u00e9nt a k\u00e9r\u00e9sek sz\u00e1ma n\u00e9gy-hat nagys\u00e1grenddel cs\u00f6kkenthet\u0151, \u00e9s az \u00fagynevezett v\u00e1laszid\u0151 \u00e1ltal\u00e1ban nehezen megk\u00fcl\u00f6nb\u00f6ztethet\u0151 a helyi SSD adataihoz val\u00f3 k\u00e9r\u00e9sek v\u00e1laszidej\u00e9t\u0151l.<\/p>\n<p><img decoding=\"async\" alt=\"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.\" src=\"\/wp-content\/uploads\/2020\/05\/ebcbe1ee16dbac18daa474e7cb4b12b2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA fenti diagram szerint a Thanos Querier jelent\u0151sen cs\u00f6kkenti egy objektumt\u00e1rol\u00f3ba ir\u00e1nyul\u00f3 adatlek\u00e9rdez\u00e9s k\u00f6lts\u00e9geit a Prometheus t\u00e1rol\u00e1si form\u00e1tum\u00e1nak haszn\u00e1lat\u00e1val \u00e9s a kapcsol\u00f3d\u00f3 adatok k\u00f6zel elhelyez\u00e9s\u00e9vel. E megk\u00f6zel\u00edt\u00e9s alkalmaz\u00e1s\u00e1val sok egyedi lek\u00e9rdez\u00e9s egy minim\u00e1lis mennyis\u00e9g\u0171 bulk m\u0171veletbe egyes\u00edthet\u0151.<\/p>\n<h4>T\u00f6m\u00f6r\u00edt\u00e9s \u00e9s lecs\u00f6kkent\u00e9s<\/h4>\n<p>\nMiut\u00e1n egy \u00faj time series adatblokk sikeresen bet\u00f6lt\u0151d\u00f6tt az objektumt\u00e1rol\u00f3ba, t\u00f6rt\u00e9neti adatk\u00e9nt tekintj\u00fck, amelyek azonnal el\u00e9rhet\u0151k a Store Gateway-en kereszt\u00fcl.<\/p>\n<p>Azonban egy id\u0151 ut\u00e1n az egy forr\u00e1sb\u00f3l (Prometheus, Sidecar) sz\u00e1rmaz\u00f3 blokkok felhalmoz\u00f3dnak, \u00e9s m\u00e1r nem haszn\u00e1lj\u00e1k ki teljes m\u00e9rt\u00e9kben az indexel\u00e9s potenci\u00e1lj\u00e1t. Ennek a probl\u00e9m\u00e1nak a megold\u00e1s\u00e1ra bevezett\u00fcnk egy m\u00e1sik komponenst, amelyet Compactor-nak nevez\u00fcnk. Ez egyszer\u0171en alkalmazza a Prometheus helyi t\u00f6m\u00f6r\u00edt\u00e9si mechanizmus\u00e1t a t\u00f6rt\u00e9neti adatokra az objektumt\u00e1rol\u00f3ban, \u00e9s egyszer\u0171 id\u0151szakos batch feladatk\u00e9nt futtathat\u00f3.<\/p>\n<p><img decoding=\"async\" alt=\"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.\" src=\"\/wp-content\/uploads\/2020\/05\/c7dd83dab074a4c5f93069a4bc152342.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA hat\u00e9kony t\u00f6m\u00f6r\u00edt\u00e9snek k\u00f6sz\u00f6nhet\u0151en a t\u00e1rol\u00e1si lek\u00e9rdez\u00e9s hossz\u00fa id\u0151n kereszt\u00fcl nem jelent probl\u00e9m\u00e1t az adatok m\u00e9rete szempontj\u00e1b\u00f3l. Azonban a milli\u00e1rd \u00e9rt\u00e9k kib\u0151v\u00edt\u00e9s\u00e9nek \u00e9s a lek\u00e9rdez\u00e9si feldolgoz\u00f3 \u00e1tj\u00e1r\u00e1s\u00e1nak potenci\u00e1lis k\u00f6lts\u00e9ge elker\u00fclhetetlen\u00fcl a lek\u00e9rdez\u00e9s v\u00e9grehajt\u00e1si idej\u00e9nek dr\u00e1mai n\u00f6veked\u00e9s\u00e9hez vezet. M\u00e1sr\u00e9szt, mivel minden k\u00e9ppont eset\u00e9ben t\u00f6bb sz\u00e1z adatpont van, lehetetlenn\u00e9 v\u00e1lik az adatok teljes felbont\u00e1sban t\u00f6rt\u00e9n\u0151 vizualiz\u00e1l\u00e1sa. \u00cdgy a downsampling nemcsak lehets\u00e9ges, hanem nem vezet \u00e9szlelhet\u0151 pontoss\u00e1gveszt\u00e9shez. <\/p>\n<p><img decoding=\"async\" alt=\"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.\" src=\"\/wp-content\/uploads\/2020\/05\/5f36a05aba3fbffa905b6a8da482ab3d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA Compactor folyamatosan aggreg\u00e1lja az adatokat \u00f6t perc \u00e9s egy \u00f3ra felbont\u00e1sban a downsampling sor\u00e1n. Minden egyes nyers fragmentumhoz, amelyet TSDB XOR t\u00f6m\u00f6r\u00edt\u00e9ssel k\u00f3doltak, k\u00fcl\u00f6nb\u00f6z\u0151 t\u00edpus\u00fa aggreg\u00e1lt adatokat t\u00e1rolnak, mint p\u00e9ld\u00e1ul min, max vagy sum egy blokkra. Ez lehet\u0151v\u00e9 teszi a Querier sz\u00e1m\u00e1ra, hogy automatikusan v\u00e1lassza ki a megfelel\u0151 aggreg\u00e1tumot az adott PromQL lek\u00e9rdez\u00e9shez. <\/p>\n<p>A cs\u00f6kkentett pontoss\u00e1g\u00fa adatok haszn\u00e1lat\u00e1hoz a felhaszn\u00e1l\u00f3nak nincs sz\u00fcks\u00e9ge k\u00fcl\u00f6n konfigur\u00e1ci\u00f3ra. A Querier automatikusan v\u00e1lt a k\u00fcl\u00f6nb\u00f6z\u0151 felbont\u00e1sok \u00e9s nyers adatok k\u00f6z\u00f6tt, ahogy a felhaszn\u00e1l\u00f3 n\u00f6veli vagy cs\u00f6kkenti a m\u00e9retet. Opci\u00f3k\u00e9nt a felhaszn\u00e1l\u00f3 k\u00f6zvetlen\u00fcl is kezelheti ezt a \u201dstep\u201d param\u00e9teren kereszt\u00fcl a lek\u00e9rdez\u00e9sben. <\/p>\n<p>Mivel az egy GB t\u00e1rol\u00e1si k\u00f6lts\u00e9ge alacsony, a Thanos alap\u00e9rtelmez\u00e9s szerint meg\u0151rzi az eredeti adatokat, az \u00f6t perces \u00e9s egy \u00f3r\u00e1s felbont\u00e1s\u00fa adatokat. Nincs sz\u00fcks\u00e9g az eredeti adatok t\u00f6rl\u00e9s\u00e9re.<\/p>\n<h2>R\u00f6gz\u00edt\u00e9si szab\u00e1lyok<\/h2>\n<p>\nM\u00e9g a Thanos eset\u00e9ben is a r\u00f6gz\u00edt\u00e9si szab\u00e1lyok jelent\u0151s r\u00e9sz\u00e9t k\u00e9pezik a monitoring stacknek. Cs\u00f6kkentik a lek\u00e9rdez\u00e9sek bonyolults\u00e1g\u00e1t, k\u00e9sleked\u00e9s\u00e9t \u00e9s k\u00f6lts\u00e9g\u00e9t. Ezen k\u00edv\u00fcl a felhaszn\u00e1l\u00f3k sz\u00e1m\u00e1ra is k\u00e9nyelmesek, hogy aggreg\u00e1lt adatokat kapjanak a metrik\u00e1k alapj\u00e1n. A Thanos a van\u00edlia Prometheus p\u00e9ld\u00e1nyok alapj\u00e1n m\u0171k\u00f6dik, \u00edgy teljesen elfogadhat\u00f3 a r\u00f6gz\u00edt\u00e9si szab\u00e1lyok \u00e9s figyelmeztet\u00e9si szab\u00e1lyok t\u00e1rol\u00e1sa a megl\u00e9v\u0151 Prometheus szerveren. Azonban bizonyos esetekben ez nem elegend\u0151:<\/p>\n<ul>\n<li>Glob\u00e1lis figyelmeztet\u00e9s \u00e9s szab\u00e1ly (p\u00e9ld\u00e1ul \u00e9rtes\u00edt\u00e9s, amikor a szolg\u00e1ltat\u00e1s nem m\u0171k\u00f6dik t\u00f6bb mint k\u00e9t a h\u00e1rom klaszterb\u0151l).<\/li>\n<li>Szab\u00e1ly az adatokra a helyi t\u00e1rol\u00f3n k\u00edv\u00fcl.<\/li>\n<li>A c\u00e9l, hogy minden szab\u00e1lyt \u00e9s figyelmeztet\u00e9st egy helyen t\u00e1roljunk.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.\" src=\"\/wp-content\/uploads\/2020\/05\/ab48e044b952bd891932b99e248120fa.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMindezekre a Thanos tartalmaz egy k\u00fcl\u00f6n komponenst, amelyet Ruler-nek h\u00edvnak, \u00e9s amely a Thanos Queries seg\u00edts\u00e9g\u00e9vel sz\u00e1m\u00edtja ki a szab\u00e1lyokat \u00e9s riaszt\u00e1sokat. A j\u00f3l ismert StoreAPI biztos\u00edt\u00e1s\u00e1val a Query csom\u00f3pont hozz\u00e1f\u00e9rhet a legfrissebb, kisz\u00e1m\u00edtott metrik\u00e1khoz. K\u00e9s\u0151bb ezek az objektumt\u00e1rol\u00f3ban is elment\u00e9sre ker\u00fclnek, \u00e9s a Store Gateway-en kereszt\u00fcl el\u00e9rhet\u0151k lesznek.<\/p>\n<h2>A Thanos ereje<\/h2>\n<p>\nA Thanos el\u00e9gg\u00e9 rugalmas ahhoz, hogy az ig\u00e9nyeidhez igaz\u00edtsd. Ez k\u00fcl\u00f6n\u00f6sen hasznos a sima Prometheus-ra val\u00f3 migr\u00e1ci\u00f3kor. N\u00e9zz\u00fck gyorsan egy egyszer\u0171 p\u00e9ld\u00e1n kereszt\u00fcl, amit a Thanos komponensekr\u0151l megtanultunk. \u00cdgy lehet \u00e1tkonvert\u00e1lni a van\u00edlia Prometheust egy \u201ekorl\u00e1tlan metrik\u00e1k t\u00e1rol\u00e1s\u00e1nak\u201d vil\u00e1g\u00e1ba:<\/p>\n<p><img decoding=\"async\" alt=\"Megjelent a leg\u00fajabb XMPP kliens, a UWPX.\" src=\"\/wp-content\/uploads\/2020\/05\/f6ee4185af57d2a1869890014e6a0062.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<ol>\n<li>Add hozz\u00e1 a Thanos Sidecar-t a Prometheus szervereidhez \u2013 p\u00e9ld\u00e1ul k\u00f6zvetlen\u00fcl a Kubernetes pod mellett.<\/li>\n<li>Ind\u00edtson el t\u00f6bb Thanos Querier replik\u00e1t az adatok megtekint\u00e9s\u00e9nek lehet\u0151s\u00e9ge \u00e9rdek\u00e9ben. Ezen a ponton k\u00f6nnyen be\u00e1ll\u00edthat\u00f3 a gossip a Scraper \u00e9s a Querier k\u00f6z\u00f6tt. A komponensek k\u00f6z\u00f6tti interakci\u00f3 ellen\u0151rz\u00e9s\u00e9hez haszn\u00e1lja a 'thanos_cluster_members' metrik\u00e1t.<\/li>\n<\/ol>\n<p>\nE k\u00e9t l\u00e9p\u00e9s elegend\u0151 a glob\u00e1lis n\u00e9zet \u00e9s a sima deduplik\u00e1ci\u00f3 biztos\u00edt\u00e1s\u00e1hoz a potenci\u00e1lis HA-replik\u00e1kb\u00f3l sz\u00e1rmaz\u00f3 Prometheus adatokra! Csak csatlakoztasd a dashboardjaidat a Querier HTTP v\u00e9gpontj\u00e1hoz, vagy haszn\u00e1ld k\u00f6zvetlen\u00fcl a Thanos UI-t.<\/p>\n<p>Ha azonban metrik\u00e1k biztons\u00e1gi ment\u00e9s\u00e9re \u00e9s hossz\u00fa t\u00e1v\u00fa t\u00e1rol\u00e1s\u00e1ra van sz\u00fcks\u00e9ged, akkor h\u00e1rom tov\u00e1bbi l\u00e9p\u00e9st is meg kell tenned:<\/p>\n<ol>\n<li>Hozz l\u00e9tre egy AWS S3 vagy GCS t\u00e1rol\u00f3t. \u00c1ll\u00edtsd be a Sidecar-t, hogy m\u00e1solja az adatokat ezeken a t\u00e1rol\u00f3kon. Most minimaliz\u00e1lhatod a helyi adatgy\u0171jt\u00e9st.<\/li>\n<li>Telep\u00edtsd a Store Gateway-t, \u00e9s csatlakoztasd a megl\u00e9v\u0151 gossip klaszterhez. Most m\u00e1r k\u00fcldhetsz lek\u00e9rdez\u00e9seket a biztons\u00e1gi mentett adatokra!<\/li>\n<li>Telep\u00edtsd a Compactor-t, hogy jav\u00edtsd a lek\u00e9rdez\u00e9sek hat\u00e9konys\u00e1g\u00e1t hossz\u00fa id\u0151intervallumok eset\u00e9n, a t\u00f6m\u00f6r\u00edt\u00e9s \u00e9s lefel\u00e9 mintav\u00e9telez\u00e9s seg\u00edts\u00e9g\u00e9vel.<\/li>\n<\/ol>\n<p>\nHa t\u00f6bbet szeretn\u00e9l megtudni, ne habozz, n\u00e9zd meg a <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/improbable-eng\/thanos\/tree\/master\/kube\">kubernetes manifest p\u00e9ld\u00e1inkat<\/a><\/noindex> \u00e9s <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/improbable-eng\/thanos\/blob\/master\/docs\/getting-started.md\">kezd\u00e9shez<\/a><\/noindex>!<\/p>\n<p>\u00d6t l\u00e9p\u00e9s alatt megb\u00edzhat\u00f3 megfigyel\u00e9si rendszert alak\u00edtottunk ki Prometheusb\u00f3l glob\u00e1lis n\u00e9zettel, korl\u00e1tlan t\u00e1rol\u00e1si id\u0151vel \u00e9s potenci\u00e1lisan magas rendelkez\u00e9sre \u00e1ll\u00e1s\u00fa metrik\u00e1kkal.<\/p>\n<h3>Pull request: sz\u00fcks\u00e9g\u00fcnk van r\u00e1d!<\/h3>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/improbable-eng\/thanos\">Thanos<\/a><\/noindex> a kezdetekt\u0151l fogva ny\u00edlt forr\u00e1sk\u00f3d\u00fa projekt volt. A Prometheus-szal val\u00f3 z\u00f6kken\u0151mentes integr\u00e1ci\u00f3 \u00e9s a Thanos csak egy r\u00e9sz\u00e9nek haszn\u00e1lat\u00e1nak lehet\u0151s\u00e9ge nagyszer\u0171 v\u00e1laszt\u00e1ss\u00e1 teszi a megfigyel\u0151 rendszer sk\u00e1l\u00e1z\u00e1s\u00e1t an\u00e9lk\u00fcl, hogy t\u00fal sok er\u0151fesz\u00edt\u00e9st ig\u00e9nyelne.<\/p>\n<p>Mindig \u00f6r\u00f6mmel fogadjuk a GitHub Pull Requesteket \u00e9s a hibajelent\u00e9seket. Ugyanakkor ne habozzon kapcsolatba l\u00e9pni vel\u00fcnk a GitHub Issues-on vagy a Slack-en kereszt\u00fcl.<noindex><a rel=\"nofollow\" href=\"https:\/\/join.slack.com\/t\/improbable-eng\/shared_invite\/enQtMzQ1ODcyMzQ5MjM4LWY5ZWZmNGM2ODc5MmViNmQ3ZTA3ZTY3NzQwOTBlMTkzZmIxZTIxODk0OWU3YjZhNWVlNDU3MDlkZGViZjhkMjc\"> Improbable-eng #thanos<\/a><\/noindex>, ha van k\u00e9rd\u00e9se vagy visszajelz\u00e9se, vagy szeretn\u00e9 megosztani tapasztalatait! Ha tetszik, amit az Improbable-n\u00e9l csin\u00e1lunk, ne habozzon kapcsolatba l\u00e9pni vel\u00fcnk \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/improbable.io\/careers\/\">mindig vannak nyitott poz\u00edci\u00f3ink<\/a><\/noindex>!<\/p>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/jYQP\/\">Tov\u00e1bbi inform\u00e1ci\u00f3 a tanfolyamr\u00f3l.<br \/>\n<\/a><\/noindex><\/p>\n<p>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/502122\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u043a\u0443\u0440\u0441\u0430 \u00abDevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb. \u0424\u0430\u0431\u0438\u0430\u043d \u0420\u0435\u0439\u043d\u0430\u0440\u0446 (Fabian Reinartz) \u2014 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f, \u0444\u0430\u043d\u0430\u0442 Go \u0438 \u043b\u044e\u0431\u0438\u0442\u0435\u043b\u044c \u0440\u0435\u0448\u0430\u0442\u044c \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438. \u0422\u0430\u043a\u0436\u0435 \u043e\u043d \u043c\u044d\u0439\u043d\u0442\u0435\u0439\u043d\u0435\u0440 Prometheus \u0438 \u0441\u043e\u0443\u0447\u0440\u0435\u0434\u0438\u0442\u0435\u043b\u044c Kubernetes SIG instrumentation. \u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u043c \u043e\u043d \u0431\u044b\u043b production-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u043c \u0432 SoundCloud \u0438 \u0432\u043e\u0437\u0433\u043b\u0430\u0432\u043b\u044f\u043b \u0433\u0440\u0443\u043f\u043f\u0443 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0432 CoreOS. \u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 Google. \u0411\u0430\u0440\u0442\u0435\u043a [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":81889,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-81888","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=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u043a\u0443\u0440\u0441\u0430 \u00abDevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb.\" \/>\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\/thanos-masshtabiruemyj-prometheus\" \/>\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\udd47Thanos \u2014 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u044b\u0439 Prometheus | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u043a\u0443\u0440\u0441\u0430 \u00abDevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/thanos-masshtabiruemyj-prometheus\" \/>\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-17T11:42:23+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-17T11:42:23+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\udd47Thanos \u2014 sk\u00e1l\u00e1zhat\u00f3 Prometheus | ProHoster","description":"A cikk ford\u00edt\u00e1sa kifejezetten a \u201eDevOps gyakorlatok \u00e9s eszk\u00f6z\u00f6k\u201d kurzus hallgat\u00f3i sz\u00e1m\u00e1ra k\u00e9sz\u00fclt.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/thanos-masshtabiruemyj-prometheus","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\udd47Thanos \u2014 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u044b\u0439 Prometheus | ProHoster","og:description":"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u043a\u0443\u0440\u0441\u0430 \u00abDevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb.","og:url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/thanos-masshtabiruemyj-prometheus","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-17T11:42:23+00:00","article:modified_time":"2020-05-17T11:42:23+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"81888","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:48:24","updated":"2022-09-30 01:06:17","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\/81888","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=81888"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/81888\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media\/81889"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=81888"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=81888"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=81888"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}