{"id":89038,"date":"2020-07-17T19:42:30","date_gmt":"2020-07-17T17:42:30","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/logirovanie-v-kubernetes-efk-protiv-plg"},"modified":"2020-07-17T19:42:30","modified_gmt":"2020-07-17T17:42:30","slug":"logirovanie-v-kubernetes-efk-protiv-plg","status":"publish","type":"post","link":"https:\/\/prohoster.info\/lv\/blog\/administrirovanie\/logirovanie-v-kubernetes-efk-protiv-plg","title":{"rendered":"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/0b7076a32f4c9a830bf6b765055510cc.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Uzraudz\u012bba ir k\u013cuvusi par \u013coti svar\u012bgu komponenti pieaugo\u0161aj\u0101m m\u0101ko\u0146a risin\u0101jumiem, palielinoties sadal\u012bto sist\u0113mu sare\u017e\u0123\u012bt\u012bbai. T\u0101 ir nepiecie\u0161ama, lai izprastu to uzved\u012bbu. Ir vajadz\u012bgi skalojami r\u012bki, kas var sav\u0101kt datus no vis\u0101m pakalpojumu sniedz\u0113j\u0101m - un nodro\u0161in\u0101t speci\u0101listiem vienotu interfeisu ar veiktsp\u0113jas anal\u012bzi, k\u013c\u016bdu demonstr\u0113\u0161anu, pieejam\u012bbu un \u017eurn\u0101liem. <\/p>\n<p><\/p>\n<p>\u0160iem r\u012bkiem j\u0101b\u016bt efekt\u012bviem un produkt\u012bviem. \u0160aj\u0101 rakst\u0101 m\u0113s apskat\u012bsim divus popul\u0101rus tehnolo\u0123iju stekus: EFK (Elasticsearch) un PLG (Loki) un analiz\u0113sim to arhitekt\u016bru un at\u0161\u0137ir\u012bbas.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"stek-efk\">EFK steks<\/h2>\n<p><\/p>\n<p>Iesp\u0113jams, j\u016bs jau esat dzird\u0113ju\u0161i par \u013coti popul\u0101ro ELK vai EFK. Steks sast\u0101v no vair\u0101kiem atsevi\u0161\u0137iem komponentiem: Elasticsearch (objektu glab\u0101tuve), Logstash vai FluentD (\u017eurn\u0101lu v\u0101k\u0161ana un agreg\u0101cija) un Kibana vizualiz\u0101cijai.<\/p>\n<p><\/p>\n<p>Tipiska darb\u012bbas sh\u0113ma izskat\u0101s \u0161\u0101di:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/75a2b7d079064f7aa662d9e27f73c3f2.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><strong>Elasticsearch<\/strong> \u2014 sadal\u012bta objektu glab\u0101tuve ar re\u0101llaika mekl\u0113\u0161anu un anal\u012bzi. Lieliska risin\u0101jums da\u013c\u0113ji struktur\u0113tiem datiem, piem\u0113ram, \u017eurn\u0101liem. Inform\u0101cija tiek saglab\u0101ta JSON dokumentu veid\u0101, tiek indeks\u0113ta re\u0101llaik\u0101 un sadal\u012bta pa klastera mezgliem. Tiek izmantota apgriezta indeks\u0113\u0161ana, kas satur visus unik\u0101los v\u0101rdus un ar tiem saist\u012btos dokumentus pilnteksta mekl\u0113\u0161anai, kas, savuk\u0101rt, balst\u012bta uz Apache Lucene mekl\u0113\u0161anas dzin\u0113ju.<\/p>\n<p><\/p>\n<p><strong>FluentD<\/strong> \u2014 ir datu v\u0101c\u0113js, kas veic datu unifik\u0101ciju to v\u0101k\u0161anas un pat\u0113ri\u0146a proces\u0101. Tas cen\u0161as sak\u0101rtot datus JSON form\u0101t\u0101, cik vien iesp\u0113jams. T\u0101s arhitekt\u016bra ir papla\u0161in\u0101ma, un ir pieejami vair\u0101k nek\u0101 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.fluentd.org\/plugins\/all\">simti da\u017e\u0101du papla\u0161in\u0101jumu<\/a><\/noindex>, ko atbalsta kopiena, vis\u0101m vajadz\u012bb\u0101m.<\/p>\n<p><\/p>\n<p><strong>Kibana<\/strong> \u2014 datu vizualiz\u0101cijas r\u012bks Elasticsearch ar da\u017e\u0101d\u0101m papildu iesp\u0113j\u0101m, piem\u0113ram, laika rindu anal\u012bzi, grafiem, ma\u0161\u012bnm\u0101c\u012b\u0161anos un citiem.<\/p>\n<p><\/p>\n<h3 id=\"arhitektura-elasticsearch\">Elasticsearch arhitekt\u016bra<\/h3>\n<p><\/p>\n<p>Elasticsearch klastera dati tiek glab\u0101ti izklied\u0113ti visos t\u0101 mezglos. Klasteris sast\u0101v no vair\u0101kiem mezgliem, lai uzlabotu pieejam\u012bbu un iztur\u012bbu. Ikviens mezgls var veikt visas klastera lomas, ta\u010du lielos skalojamos izvietojumos mezgliem parasti pie\u0161\u0137ir atsevi\u0161\u0137as uzdevumu lomas.<\/p>\n<p><\/p>\n<p>Klastera mezglu tipi:<\/p>\n<p><\/p>\n<ul>\n<li>master node \u2014 p\u0101rvalda klasteri, nepiecie\u0161ami vismaz tr\u012bs, viena ir vienm\u0113r akt\u012bva;<\/li>\n<li>data node \u2014 glab\u0101 indeks\u0113tos datus un veic ar tiem da\u017e\u0101dus uzdevumus;<\/li>\n<li>ingest node \u2014 organiz\u0113 konveijerus datu transform\u0113\u0161anai pirms indeks\u0113\u0161anas;<\/li>\n<li>coordinating node \u2014 piepras\u012bjumu mar\u0161rut\u0113\u0161ana, mekl\u0113\u0161anas apstr\u0101des f\u0101zes sa\u012bsin\u0101\u0161ana, masveida indeks\u0113\u0161anas koordin\u0101cija;<\/li>\n<li>alerting node \u2014 uzs\u0101k uzdevumus br\u012bdin\u0101jumam;<\/li>\n<li>machine learning node \u2014 apstr\u0101d\u0101 ma\u0161\u012bnm\u0101c\u012b\u0161an\u0101s uzdevumus.<\/li>\n<\/ul>\n<p><\/p>\n<p>Zem\u0101k redzamaj\u0101 diagramm\u0101 par\u0101d\u012bts, k\u0101 dati tiek glab\u0101ti un replik\u0113ti starp mezgliem, lai nodro\u0161in\u0101tu liel\u0101ku datu pieejam\u012bbu.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/b476660dc60aca34fbe421b8eaf0ee31.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Katras replikas dati tiek glab\u0101ti apgrieztaj\u0101 indeks\u0101, diagramma zem\u0101k par\u0101da, k\u0101 tas notiek:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/0341c127742a5e8fe787f2076be0464f.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h3 id=\"ustanovka\">Uzst\u0101d\u012b\u0161ana<\/h3>\n<p><\/p>\n<p>Deta\u013cas var apskat\u012bt <noindex><a rel=\"nofollow\" href=\"https:\/\/www.digitalocean.com\/community\/tutorials\/how-to-set-up-an-elasticsearch-fluentd-and-kibana-efk-logging-stack-on-kubernetes\">\u0161eit<\/a><\/noindex>, es izmantosiu helm chart:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ helm install efk-stack stable\/elastic-stack --set logstash.enabled=false --set fluentd.enabled=true --set fluentd-elastics<\/code><\/pre>\n<p><\/p>\n<h2 id=\"stek-plg\">PLG steks<\/h2>\n<p><\/p>\n<p>Nav br\u012bnums, ja j\u016bs nevarat atrast \u0161o akron\u012bmu, jo to lab\u0101k zina k\u0101 Grafana Loki. Katr\u0101 zi\u0146\u0101, \u0161is steks k\u013c\u016bst popul\u0101rs, jo izmanto preciz\u0113tus tehniskos risin\u0101jumus. Iesp\u0113jams, ka j\u016bs jau esat dzird\u0113ju\u0161i par Grafana, popul\u0101ru vizualiz\u0101cijas r\u012bku. T\u0101s rad\u012bt\u0101ji, iedvesmojoties no Prometheus, izstr\u0101d\u0101ja Loki, horizont\u0101li skalojamu augstas veiktsp\u0113jas \u017eurn\u0101lu agreg\u0101cijas sist\u0113mu. Loki indeks\u0113 tikai metadatus, bet ne pa\u0161us \u017eurn\u0101lus, \u0161is tehniskais risin\u0101jums \u013c\u0101va tam k\u013c\u016bt par viegli lietojamu un ekonomiski izdev\u012bgu risin\u0101jumu.<\/p>\n<p><\/p>\n<p><strong>Promtail<\/strong> \u2014 a\u0123ents \u017eurn\u0101lu s\u016bt\u012b\u0161anai no oper\u0113t\u0101jsist\u0113mas uz Loki klasteri. <strong>Grafana<\/strong> \u2014 vizualiz\u0101cijas r\u012bks, kas balst\u012bts uz datiem no Loki.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/3cc613eacf013723d46e7d31ff166dac.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Loki ir veidots uz tiem pa\u0161iem principiem k\u0101 Prometheus, t\u0101p\u0113c tas ir labi piem\u0113rots Kubernetes \u017eurn\u0101lu glab\u0101\u0161anai un anal\u012bzei.<\/p>\n<p><\/p>\n<h3 id=\"arhitektura-loki\">Loki arhitekt\u016bra<\/h3>\n<p><\/p>\n<p>Loki var darboties gan viena procesa re\u017e\u012bm\u0101, gan vair\u0101kos procesos, kas nodro\u0161ina horizont\u0101lo m\u0113rogojam\u012bbu.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/82679c9a38f6115d0c8f3911533fb9f6.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Tas var darboties ar\u012b k\u0101 monol\u012bta lietojumprogramma, gan k\u0101 mikroserviss. Palaid\u012b\u0161ana k\u0101 viena procesa re\u017e\u012bm\u0101 var b\u016bt noder\u012bga viet\u0113jai izstr\u0101dei vai nelielai monitor\u0113\u0161anai. R\u016bpnieciskajai ievie\u0161anai un m\u0113rogojamiem slodzes apst\u0101k\u013ciem ieteicams izmantot mikroservisa variantu. Ce\u013ci datu ierakst\u012b\u0161anai un las\u012b\u0161anai ir no\u0161\u0137irti, lai tos var\u0113tu pietiekami smalki konfigur\u0113t un skalot p\u0113c vajadz\u012bbas.<\/p>\n<p><\/p>\n<p>Apskat\u012bsim \u017eurn\u0101lu v\u0101k\u0161anas sist\u0113mas arhitekt\u016bru bez detaliz\u0101cijas:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/f66b90693295acb723b01aecfd7381dd.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Un \u0161eit ir apraksts (mikroservisa arhitekt\u016bra):<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/a2d74e86e75c4fb3ef39823ed2170517.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Sast\u0101vda\u013cas:<\/p>\n<p><\/p>\n<p><strong>Promtail<\/strong> \u2014 a\u0123ents, kas tiek instal\u0113ts mezglos (k\u0101 pakalpojumu kopums), tas no\u0146em \u017eurn\u0101lus no uzdevumiem un izmanto Kubernetes API, lai ieg\u016btu metadatus, ar kuriem tiks mar\u0137\u0113ti \u017eurn\u0101li. P\u0113c tam tas nos\u016bta \u017eurn\u0101lu galvenajam pakalpojumam Loki. Metadatu sal\u012bdzin\u0101\u0161anai tiek izmantoti tie pa\u0161i mar\u0137\u0113\u0161anas noteikumi k\u0101 Prometheus.<\/p>\n<p><\/p>\n<p><strong>Izplat\u012bt\u0101js<\/strong> \u2014 pakalpojums-izplat\u012bt\u0101js, kas darbojas k\u0101 buferis. Lai apstr\u0101d\u0101tu milijonus ierakstu, tas veic ien\u0101ko\u0161o datu iepako\u0161anu, saspiest tos blokos to pieg\u0101des laik\u0101. Taj\u0101 pa\u0161\u0101 laik\u0101 str\u0101d\u0101 vair\u0101ki datu pie\u0146\u0113m\u0113ji, bet \u017eurn\u0101li, kas pieder vienai ien\u0101ko\u0161o datu straumei, nedr\u012bkst b\u016bt vair\u0101kos no tiem visiem t\u0101s blokiem. Tas ir organiz\u0113ts k\u0101 pie\u0146\u0113m\u0113ju gredzens un sec\u012bga hesh\u0113\u0161ana. Lai nodro\u0161in\u0101tu dro\u0161\u012bbu un liek\u0101s kapacit\u0101tes, tas tiek veikts n reizes (3, ja netiek konfigur\u0113ts).<\/p>\n<p><\/p>\n<p><strong>Ieg\u016bstot<\/strong> \u2014 pakalpojums-pie\u0146\u0113m\u0113js. Datu bloki ierodas saspiest\u0101 veid\u0101 ar pievienotiem \u017eurn\u0101liem. Tikl\u012bdz bloks ir pietiekami liels, tiek veikta blok\u0101 iek\u013caut\u0101 datu nos\u016bt\u012b\u0161ana uz datub\u0101zi. Metadati iet uz indeksu, bet \u017eurn\u0101la bloka dati non\u0101k Chunks (parasti tas ir objektu kr\u0101tuve). P\u0113c nos\u016bt\u012b\u0161anas pie\u0146\u0113m\u0113js izveido jaunu bloku, kur\u0101 tiks pievienoti jauni ieraksti.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/a277021b303ffa3eb924b4dfc617564a.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><strong>Index<\/strong> \u2014 datub\u0101ze, DynamoDB, Cassandra, Google BigTable un citi.<\/p>\n<p><\/p>\n<p><strong>Chunks<\/strong> \u2014 \u017eurn\u0101lu bloki saspiest\u0101 veid\u0101, parasti tiek glab\u0101ti objektu kr\u0101tuv\u0113, piem\u0113ram, S3.<\/p>\n<p><\/p>\n<p><strong>Vaic\u0101t\u0101js<\/strong> \u2014 las\u012b\u0161anas ce\u013c\u0161, kas veic visu melno darbu. Tas apskata laika diapazonu un mar\u0137\u0113jumu, p\u0113c tam skat\u0101s indeksu, lai mekl\u0113tu atbilst\u012bbas. Turkl\u0101t tas lasa datu blokus un filtr\u0113 tos, lai ieg\u016btu rezult\u0101tu.<\/p>\n<p><\/p>\n<p>Tagad apl\u016bkosim visu darb\u012bb\u0101.<\/p>\n<p><\/p>\n<h3 id=\"ustanovka-1\">Uzst\u0101d\u012b\u0161ana<\/h3>\n<p><\/p>\n<p>Lai instal\u0113tu Kubernetes, visviegl\u0101k ir izmantot helm. Pie\u0146emam, ka j\u016bs to jau esat uzst\u0101d\u012bjis un konfigur\u0113jis (<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/507656\/\">un tre\u0161ajai versijai!<\/a><\/noindex> <em>piez\u012bme tulkot\u0101jam<\/em>)<\/p>\n<p><\/p>\n<p>Pievienojam repozitoriju un uzst\u0101d\u0101m steku.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ helm repo add loki https:\/\/grafana.github.io\/loki\/charts\n$ helm repo update\n$ helm upgrade --install loki loki\/loki-stack --set grafana.enabled=true,prometheus.enabled=true,prometheus.alertmanager.persistentVolume.enabled=false,prometheus.server.persistentVolume.enabled=false<\/code><\/pre>\n<p><\/p>\n<p>T\u0101l\u0101k ir sniegts piem\u0113rs pane\u013ca, kur\u0101 redzami dati no Prometheus par Etcd metrik\u0101m un Loki par Etcd podu \u017eurn\u0101liem.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes ieejas \u017eurn\u0101lfaili: EFK pret PLG\" src=\"\/wp-content\/uploads\/2020\/07\/36efc5b7abe7ad3c3f8869bd09a9e3e7.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Tagad apskat\u012bsim abu sist\u0113mu arhitekt\u016bru un sal\u012bdzin\u0101sim to iesp\u0113jas.<\/p>\n<p><\/p>\n<h2 id=\"sravnenie\">Sal\u012bdzin\u0101jums<\/h2>\n<p><\/p>\n<h3 id=\"yazyk-zaprosov\">Vaic\u0101jumu valoda<\/h3>\n<p><\/p>\n<p>Elasticsearch izmanto Query DSL un Lucene vaic\u0101juma valodu, kas nodro\u0161ina iesp\u0113ju veikt pilnteksta mekl\u0113\u0161anu. Tas ir nostiprin\u0101jies sp\u0113c\u012bgs mekl\u0113\u0161anas dzin\u0113js ar pla\u0161u operatoru atbalstu. Ar t\u0101 pal\u012bdz\u012bbu var mekl\u0113t kontekst\u0101 un k\u0101rtot p\u0113c attiec\u012bguma. <\/p>\n<p><\/p>\n<p>Ring\u0101 ir LogQL, kas tiek izmantots Loki, kas ir PromQL (Prometheus vaic\u0101juma valodas) mantinieks. Tas izmanto \u017eurn\u0101lu atz\u012bmes datu filtr\u0113\u0161anai un atlasei. Ir iesp\u0113ja izmantot da\u017eus operatorus un aritm\u0113tiku, k\u0101 aprakst\u012bts, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/grafana\/loki\/blob\/master\/docs\/logql.md\">\u0161eit<\/a><\/noindex>, ta\u010du t\u0101 iesp\u0113jas atpaliek no Elastic valodas.<\/p>\n<p><\/p>\n<p>Kop\u0161 vaic\u0101jumi Loki ir saist\u012bti ar atz\u012bm\u0113m \u2014 tos ir viegli sal\u012bdzin\u0101t ar metriku, rezult\u0101t\u0101 ir viegl\u0101k organiz\u0113t operat\u012bvo uzraudz\u012bbu.<\/p>\n<p><\/p>\n<h3 id=\"masshtabiruemost\">M\u0113rogojam\u012bba<\/h3>\n<p><\/p>\n<p>Abi steki ir horizont\u0101li m\u0113rogojami, bet ar Loki tas ir vienk\u0101r\u0161\u0101k, jo tam ir atdal\u012bti las\u012b\u0161anas un rakst\u012b\u0161anas ce\u013ci, k\u0101 ar\u012b tam ir mikroservisu arhitekt\u016bra. Loki var konfigur\u0113t atbilsto\u0161i j\u016bsu \u012bpatn\u012bb\u0101m un var tikt izmantots \u013coti lieliem \u017eurn\u0101lu datu apjomiem.<\/p>\n<p><\/p>\n<h3 id=\"multiarendnost\">Multi-rentabilit\u0101te<\/h3>\n<p><\/p>\n<p>Klusteru multi-rentabilit\u0101te ir kop\u0113ja t\u0113ma OPEX samazin\u0101\u0161anai, abi steki nodro\u0161ina multi-rentabilit\u0101ti. Elasticsearch ir vair\u0101ki <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/blog\/found-multi-tenancy\">veidi<\/a><\/noindex> k\u0101 sadal\u012bt klientus: atsevi\u0161\u0137s indekss katram klientam, mar\u0161rut\u0113\u0161ana, pamatojoties uz klientu, unik\u0101las klienta lauki, mekl\u0113\u0161anas filtrus. Loki ir pieejami, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/grafana\/loki\/blob\/master\/docs\/operations\/multi-tenancy.md\">atbalsts<\/a><\/noindex> izmantojot HTTP galvene X-Scope-OrgID.<\/p>\n<p><\/p>\n<h3 id=\"stoimost\">Cena<\/h3>\n<p><\/p>\n<p>Loki ir \u013coti izmaksu efekt\u012bvs, jo tas neveic datu indeks\u0113\u0161anu, bet tikai metadatu indeks\u0113\u0161anu. T\u0101 rezult\u0101t\u0101 tiek pan\u0101kta <noindex><a rel=\"nofollow\" href=\"https:\/\/grafana.com\/blog\/2020\/02\/19\/how-loki-reduces-log-storage\/\">uzglab\u0101\u0161anas<\/a><\/noindex> un atmi\u0146as (ke\u0161atmi\u0146as) ekonomija, jo objektu uzglab\u0101\u0161ana ir l\u0113t\u0101ka nek\u0101 blokveida, kas tiek izmantota Elasticsearch klasteros.<\/p>\n<p><\/p>\n<h2 id=\"zaklyuchenie\">Secin\u0101jums<\/h2>\n<p><\/p>\n<p>EFK steku var izmantot da\u017e\u0101diem m\u0113r\u0137iem, nodro\u0161inot maksim\u0101lu elast\u012bbu un daudzfunkcion\u0101lu Kibana saskarni anal\u012btik\u0101, vizualiz\u0101cij\u0101 un vaic\u0101jumos. To papildus var uzlabot ar ma\u0161\u012bnm\u0101c\u012b\u0161an\u0101s iesp\u0113j\u0101m.<\/p>\n<p><\/p>\n<p>Loki steks ir noder\u012bgs Kubernetes ekosist\u0113m\u0101, \u0146emot v\u0113r\u0101 metadatu atkl\u0101\u0161anas meh\u0101nismu. Datus ir viegli saska\u0146ot uzraudz\u012bbai, pamatojoties uz laika rind\u0101m Grafana un \u017eurn\u0101liem.<\/p>\n<p><\/p>\n<p>Run\u0101jot par izmaks\u0101m un ilgu \u017eurn\u0101lu glab\u0101\u0161anu, Loki ir lielisks izv\u0113les variants, lai ien\u0101ktu m\u0101ko\u0146u risin\u0101jumos.<\/p>\n<p><\/p>\n<p>Tirg\u016b ir vair\u0101k alternat\u012bvu \u2014 da\u017eas no t\u0101m var b\u016bt lab\u0101kas tie\u0161i jums. Piem\u0113ram, GKE nodro\u0161ina Stackdriver integr\u0101ciju, kas ir lieliska risin\u0101jums uzraudz\u012bbai. M\u016bsu anal\u012bz\u0113 \u0161is risin\u0101jums nav iek\u013cauts.<\/p>\n<p><\/p>\n<p>Saites:<\/p>\n<p><\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/grafana\/loki\/blob\/master\/docs\/overview\/comparisons.md\">https:\/\/github.com\/grafana\/loki\/blob\/master\/docs\/overview\/comparisons.md<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/blog\/found-elasticsearch-from-the-bottom-up\">https:\/\/www.elastic.co\/blog\/found-elasticsearch-from-the-bottom-up<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/blog\/found-elasticsearch-in-production\/\">https:\/\/www.elastic.co\/blog\/found-elasticsearch-in-production\/<\/a><\/noindex><\/li>\n<\/ul>\n<p><\/p>\n<p><em>Raksts ir tulkots un sagatavots Habr\u0101 no <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/7x-vEQ\">Sloerm apm\u0101c\u012bbu centra darbiniekiem<\/a><\/noindex> \u2014 intens\u012bvie kursi, video kursi un korporat\u012bv\u0101s apm\u0101c\u012bbas no praktiz\u0113jo\u0161iem speci\u0101listiem (Kubernetes, DevOps, Docker, Ansible, Ceph, SRE, Agile)<\/em><\/p>\n<p>Avots: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/510822\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0441\u0442\u0430\u043b \u0432\u0435\u0441\u044c\u043c\u0430 \u0432\u0430\u0436\u043d\u044b\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u043c \u0440\u0430\u0441\u0442\u0443\u0449\u0438\u0445 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0441 \u0440\u043e\u0441\u0442\u043e\u043c \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c. \u041e\u043d \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0438\u0445 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f. \u041d\u0443\u0436\u043d\u044b \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043c\u043e\u0433\u0443\u0442 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u043e \u0432\u0441\u0435\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u2014 \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0441\u0442\u0430\u043c \u0435\u0434\u0438\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0441 \u0430\u043d\u0430\u043b\u0438\u0437\u043e\u043c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0435\u0439 \u043e\u0448\u0438\u0431\u043e\u043a, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c\u044e \u0438 \u0436\u0443\u0440\u043d\u0430\u043b\u0430\u043c\u0438. \u042d\u0442\u0438 \u0436\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u043c\u0438 \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":89039,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-89038","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.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0441\u0442\u0430\u043b \u0432\u0435\u0441\u044c\u043c\u0430 \u0432\u0430\u0436\u043d\u044b\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u043c.\" \/>\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\/lv\/blog\/administrirovanie\/logirovanie-v-kubernetes-efk-protiv-plg\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"lv_LV\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 Kubernetes: EFK \u043f\u0440\u043e\u0442\u0438\u0432 PLG | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0441\u0442\u0430\u043b \u0432\u0435\u0441\u044c\u043c\u0430 \u0432\u0430\u0436\u043d\u044b\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/lv\/blog\/administrirovanie\/logirovanie-v-kubernetes-efk-protiv-plg\" \/>\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-07-17T17:42:30+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-07-17T17:42:30+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\udd47Ierakst\u012b\u0161ana Kubernetes: EFK pret PLG | ProHoster","description":"Uzraudz\u012bba ir k\u013cuvusi par \u013coti svar\u012bgu komponentu.","canonical_url":"https:\/\/prohoster.info\/lv\/blog\/administrirovanie\/logirovanie-v-kubernetes-efk-protiv-plg","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"lv_LV","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 Kubernetes: EFK \u043f\u0440\u043e\u0442\u0438\u0432 PLG | ProHoster","og:description":"\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0441\u0442\u0430\u043b \u0432\u0435\u0441\u044c\u043c\u0430 \u0432\u0430\u0436\u043d\u044b\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u043c.","og:url":"https:\/\/prohoster.info\/lv\/blog\/administrirovanie\/logirovanie-v-kubernetes-efk-protiv-plg","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-07-17T17:42:30+00:00","article:modified_time":"2020-07-17T17:42:30+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"89038","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 13:17:22","updated":"2022-09-28 02:02:56","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/89038","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/comments?post=89038"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/89038\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media\/89039"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media?parent=89038"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/categories?post=89038"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/tags?post=89038"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}