{"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\/ro\/blog\/administrirovanie\/logirovanie-v-kubernetes-efk-protiv-plg","title":{"rendered":"Jurnalizarea \u00een Kubernetes: EFK vs PLG","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs PLG\" src=\"\/wp-content\/uploads\/2020\/07\/0b7076a32f4c9a830bf6b765055510cc.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Monitorizarea a devenit o component\u0103 esen\u021bial\u0103 a solu\u021biilor cloud \u00een cre\u0219tere, pe m\u0103sur\u0103 ce se complic\u0103 sistemele distribuite. Este necesar\u0103 pentru a \u00een\u021belege comportamentul acestora. Sunt necesare instrumente scalabile care s\u0103 poat\u0103 colecta date din toate servicii - \u0219i s\u0103 ofere speciali\u0219tilor o interfa\u021b\u0103 unificat\u0103 cu analiza performan\u021bei, demonstrarea erorilor, disponibilitatea \u0219i jurnalele. <\/p>\n<p><\/p>\n<p>Aceste instrumente trebuie s\u0103 fie eficiente \u0219i performante. \u00cen acest articol, vom analiza dou\u0103 stive tehnologice populare: EFK (Elasticsearch) \u0219i PLG (Loki) \u0219i vom discuta arhitecturile \u0219i diferen\u021bele acestora.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"stek-efk\">Stiva EFK<\/h2>\n<p><\/p>\n<p>Probabil c\u0103 a\u021bi auzit deja despre foarte cunoscutul ELK sau EFK. Stiva este compus\u0103 din mai multe p\u0103r\u021bi separate: Elasticsearch (stocare de obiecte), Logstash sau FluentD (colectarea \u0219i agregarea jurnalelor) \u0219i Kibana pentru vizualizare.<\/p>\n<p><\/p>\n<p>Schema tipic\u0103 de func\u021bionare arat\u0103 astfel:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs 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 o stocare distribuit\u0103 de obiecte cu c\u0103utare \u0219i analiz\u0103 \u00een timp real. O solu\u021bie excelent\u0103 pentru datele par\u021bial structurate, cum ar fi jurnalele. Informa\u021biile sunt p\u0103strate sub form\u0103 de documente JSON, sunt indexate \u00een timp real \u0219i distribuite \u00eentre nodurile clusterei. Se utilizeaz\u0103 un index inversat, care con\u021bine toate cuvintele unice \u0219i documentele asociate pentru c\u0103utarea complet\u0103 \u00een text, bazat\u0103 pe motorul de c\u0103utare Apache Lucene.<\/p>\n<p><\/p>\n<p><strong>FluentD<\/strong> \u2014 este un colector de date care realizeaz\u0103 unificarea datelor \u00een timpul colect\u0103rii \u0219i consumului. \u00ce\u0219i propune s\u0103 structureze datele \u00een JSON c\u00e2t mai mult posibil. Arhitectura sa este extensibil\u0103, exist\u00e2nd mai mult de <noindex><a rel=\"nofollow\" href=\"https:\/\/www.fluentd.org\/plugins\/all\">sute de extensii diferite<\/a><\/noindex>, acceptate de comunitate, pentru toate ocaziile.<\/p>\n<p><\/p>\n<p><strong>Kibana<\/strong> \u2014 un instrument de vizualizare a datelor pentru Elasticsearch cu diverse func\u021bionalit\u0103\u021bi suplimentare, cum ar fi analiza seriilor temporale, grafuri, \u00eenv\u0103\u021bare automat\u0103 \u0219i alte caracteristici.<\/p>\n<p><\/p>\n<h3 id=\"arhitektura-elasticsearch\">Arhitectura Elasticsearch<\/h3>\n<p><\/p>\n<p>Datele clusterei Elasticsearch sunt stocate r\u0103sp\u00e2ndite pe toate nodurile sale. Clustera const\u0103 din mai multe noduri pentru a \u00eembun\u0103t\u0103\u021bi disponibilitatea \u0219i rezilien\u021ba. Orice nod poate \u00eendeplini toate rolurile clusterei, dar \u00een desf\u0103\u0219ur\u0103rile mari \u0219i scalabile, nodurilor li se atribuie de obicei sarcini separate.<\/p>\n<p><\/p>\n<p>Tipuri de noduri ale clusterei:<\/p>\n<p><\/p>\n<ul>\n<li>nod master \u2014 gestioneaz\u0103 clusterul, sunt necesare cel pu\u021bin trei, unul fiind \u00eentotdeauna activ;<\/li>\n<li>nod de date \u2014 stocheaz\u0103 datele indexate \u0219i realizeaz\u0103 diverse sarcini cu acestea;<\/li>\n<li>nod de ingestie \u2014 organizeaz\u0103 canale pentru transformarea datelor \u00eenainte de indexare;<\/li>\n<li>nod de coordonare \u2014 roteaz\u0103 solicit\u0103rile, scurteaz\u0103 faza de prelucrare a c\u0103ut\u0103rii, coordoneaz\u0103 indexarea masiv\u0103;<\/li>\n<li>nod de alert\u0103 \u2014 ini\u021biaz\u0103 sarcini de notificare;<\/li>\n<li>nod de \u00eenv\u0103\u021bare automatizat\u0103 \u2014 prelucreaz\u0103 sarcinile de \u00eenv\u0103\u021bare automat\u0103.<\/li>\n<\/ul>\n<p><\/p>\n<p>Diagrama de mai jos ilustreaz\u0103 modul \u00een care datele sunt salvate \u0219i replicate \u00eentre noduri pentru a asigura o disponibilitate mai mare a datelor.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs PLG\" src=\"\/wp-content\/uploads\/2020\/07\/b476660dc60aca34fbe421b8eaf0ee31.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Datele fiec\u0103rei replici sunt stocate \u00eentr-un index inversat, schema de mai jos arat\u0103 cum se desf\u0103\u0219oar\u0103 acest proces:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs PLG\" src=\"\/wp-content\/uploads\/2020\/07\/0341c127742a5e8fe787f2076be0464f.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h3 id=\"ustanovka\">Instalare<\/h3>\n<p><\/p>\n<p>Pute\u021bi vizualiza detaliile <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\">aici<\/a><\/noindex>, voi folosi diagrama helm:<\/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\">Stiva PLG<\/h2>\n<p><\/p>\n<p>Nu v\u0103 mira\u021bi dac\u0103 nu pute\u021bi g\u0103si acest acronim, c\u0103ci este mai bine cunoscut ca Grafana Loki. Oricum, aceast\u0103 stiv\u0103 c\u00e2\u0219tig\u0103 popularitate deoarece aplic\u0103 solu\u021bii tehnice bine g\u00e2ndite. Poate a\u021bi auzit deja de Grafana, un instrument popular de vizualizare. Creatorii s\u0103i, inspir\u00e2ndu-se din Prometheus, au dezvoltat Loki, un sistem de agregare a jurnalelor scalabil pe orizontal\u0103 \u0219i performant. Loki indexeaz\u0103 doar metadatele, nu \u0219i jurnalele \u00een sine, aceast\u0103 solu\u021bie tehnic\u0103 a permis s\u0103 fie simplu de utilizat \u0219i economic.<\/p>\n<p><\/p>\n<p><strong>Promtail<\/strong> \u2014 agent pentru trimiterea jurnalelor din sistemul de operare \u00een clusterul Loki. <strong>Grafana<\/strong> \u2014 instrument de vizualizare bazat pe date din Loki.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs PLG\" src=\"\/wp-content\/uploads\/2020\/07\/3cc613eacf013723d46e7d31ff166dac.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Loki este construit pe acelea\u0219i principii ca \u0219i Prometheus, astfel \u00eenc\u00e2t este bine adaptat pentru stocarea \u0219i analiza jurnalelor Kubernetes.<\/p>\n<p><\/p>\n<h3 id=\"arhitektura-loki\">Arhitectura Loki<\/h3>\n<p><\/p>\n<p>Loki poate fi rulat at\u00e2t \u00een modul unui singur proces, c\u00e2t \u0219i \u00een modul mai multor procese, asigur\u00e2nd scalabilitate orizontal\u0103.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs PLG\" src=\"\/wp-content\/uploads\/2020\/07\/82679c9a38f6115d0c8f3911533fb9f6.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>De asemenea, poate func\u021biona, at\u00e2t ca o aplica\u021bie monolitic\u0103, c\u00e2t \u0219i ca un microserviciu. Rularea ca un singur proces poate fi util\u0103 pentru dezvoltarea local\u0103 sau pentru o supraveghere minor\u0103. Pentru implementarea industrial\u0103 \u0219i sarcinile scalabile, se recomand\u0103 utilizarea variantei de microserviciu. C\u0103r\u021bile de scriere \u0219i citire a datelor sunt separate, astfel \u00eenc\u00e2t aceasta poate fi ajustat\u0103 \u0219i scalat\u0103 \u00een mod eficient, dup\u0103 cum este necesar.<\/p>\n<p><\/p>\n<p>S\u0103 arunc\u0103m o privire asupra arhitecturii sistemului de colectare a jurnalelor f\u0103r\u0103 detalii:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs PLG\" src=\"\/wp-content\/uploads\/2020\/07\/f66b90693295acb723b01aecfd7381dd.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Iar aici \u2014 descrierea (arhitectura microserviciilor):<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs PLG\" src=\"\/wp-content\/uploads\/2020\/07\/a2d74e86e75c4fb3ef39823ed2170517.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Componentele:<\/p>\n<p><\/p>\n<p><strong>Promtail<\/strong> \u2014 agent, instalat pe noduri (sub form\u0103 de seturi de servicii), preia jurnalele din sarcini \u0219i acceseaz\u0103 API-ul Kubernetes pentru a ob\u021bine metadatele cu care vor fi etichetate jurnalele. Apoi, trimite jurnalul c\u0103tre serviciul principal Loki. Pentru asocierea metadatelor se aplic\u0103 acelea\u0219i reguli de etichetare ca \u00een Prometheus.<\/p>\n<p><\/p>\n<p><strong>Distribuitor<\/strong> \u2014 serviciu distribuitor care func\u021bioneaz\u0103 ca un buffer. Pentru a procesa milioane de \u00eenregistr\u0103ri, el \u00eempacheteaz\u0103 datele \u00een intrare, comprim\u00e2ndu-le \u00een blocuri pe m\u0103sur\u0103 ce sosesc. Func\u021bioneaz\u0103 simultan mai mul\u021bi receptori de date, dar jurnalele apar\u021bin\u00e2nd unui singur flux de date de intrare trebuie s\u0103 se reg\u0103seasc\u0103 doar \u00een unul dintre ace\u0219tia pentru toate blocurile sale. Aceasta este organizat\u0103 sub form\u0103 de inel de receptori \u0219i hashing secven\u021bial. Pentru toleran\u021b\u0103 la defecte \u0219i redundan\u021b\u0103, se face de n ori (3, dac\u0103 nu este configurat altfel).<\/p>\n<p><\/p>\n<p><strong>Ingester<\/strong> \u2014 serviciu receptor. Blocurile de date sosesc comprimate cu jurnalele ad\u0103ugate. Odat\u0103 ce blocul atinge o dimensiune suficient\u0103, acesta este eliminat \u00een baza de date. Metadatele sunt indexate, iar datele din blocul de jurnal ajung \u00een Chunks (de obicei, un stocare obiectual\u0103). Dup\u0103 eliminare, receptorul creeaz\u0103 un nou bloc, unde vor fi ad\u0103ugate \u00eenregistr\u0103ri noi.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs 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 baz\u0103 de date, DynamoDB, Cassandra, Google BigTable \u0219i altele.<\/p>\n<p><\/p>\n<p><strong>Chunks<\/strong> \u2014 blocuri de jurnale comprimate, de obicei stocate \u00een stocare obiectual\u0103, cum ar fi S3.<\/p>\n<p><\/p>\n<p><strong>Interogator<\/strong> \u2014 cale de citire care face toat\u0103 munca grea. Se uit\u0103 la intervalul de timp \u0219i etichete, dup\u0103 care consult\u0103 indexul pentru a c\u0103uta potriviri. Apoi, cite\u0219te blocurile de date \u0219i le filtreaz\u0103 pentru a ob\u021bine rezultatul.<\/p>\n<p><\/p>\n<p>\u0218i acum s\u0103 vedem totul \u00een ac\u021biune.<\/p>\n<p><\/p>\n<h3 id=\"ustanovka-1\">Instalare<\/h3>\n<p><\/p>\n<p>Pentru instalarea \u00een Kubernetes, cel mai simplu este s\u0103 folose\u0219ti helm. Presupunem c\u0103 deja l-ai instalat \u0219i configurat (<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/507656\/\">\u0219i versiunea a treia!<\/a><\/noindex> <em>nota traduc\u0103torului<\/em>)<\/p>\n<p><\/p>\n<p>Ad\u0103ug\u0103m repository-ul \u0219i instal\u0103m stack-ul.<\/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>Mai jos este un exemplu de panou de instrumente care prezint\u0103 date din Prometheus pentru metricile Etcd \u0219i Loki pentru jurnalele podurilor Etcd.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Jurnalizarea \u00een Kubernetes: EFK vs PLG\" src=\"\/wp-content\/uploads\/2020\/07\/36efc5b7abe7ad3c3f8869bd09a9e3e7.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u0218i acum hai s\u0103 discut\u0103m despre arhitectura ambelor sisteme \u0219i s\u0103 compar\u0103m capabilit\u0103\u021bile lor \u00eentre ele.<\/p>\n<p><\/p>\n<h2 id=\"sravnenie\">Comparare<\/h2>\n<p><\/p>\n<h3 id=\"yazyk-zaprosov\">Limbajul de interogare<\/h3>\n<p><\/p>\n<p>\u00cen Elasticsearch se utilizeaz\u0103 Query DSL \u0219i limbajul de interogare Lucene, care ofer\u0103 capacitatea de a efectua c\u0103ut\u0103ri cu text complet. Este un motor de c\u0103utare robust, consacrat, cu suport extins pentru operatori. Cu ajutorul s\u0103u, este posibil s\u0103 c\u0103uta\u021bi \u00een func\u021bie de context \u0219i s\u0103 sorta\u021bi dup\u0103 relevan\u021b\u0103. <\/p>\n<p><\/p>\n<p>De cealalt\u0103 parte a ringului se afl\u0103 LogQL, folosit \u00een Loki, succesorul PromQL (limbajul de interogare Prometheus). Acesta utilizeaz\u0103 etichetele de jurnal pentru filtrarea \u0219i extragerea datelor din jurnale. Exist\u0103 posibilitatea de a folosi anumi\u021bi operatori \u0219i aritmetic\u0103, a\u0219a cum este descris <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/grafana\/loki\/blob\/master\/docs\/logql.md\">aici<\/a><\/noindex>, dar \u00een privin\u021ba capabilit\u0103\u021bilor r\u0103m\u00e2ne \u00een urma limbajului Elastic.<\/p>\n<p><\/p>\n<p>Deoarece interog\u0103rile \u00een Loki sunt legate de etichete, acestea sunt u\u0219or de corelat cu metricile, f\u0103c\u00e2ndu-le mai u\u0219or de utilizat pentru monitorizarea \u00een timp real.<\/p>\n<p><\/p>\n<h3 id=\"masshtabiruemost\">Scalabilitate<\/h3>\n<p><\/p>\n<p>Ambele stive sunt scalabile pe orizontal\u0103, dar cu Loki este mai simplu, deoarece are c\u0103i separate pentru citirea \u0219i scrierea datelor, precum \u0219i o arhitectur\u0103 microservicii. Loki poate fi configurat \u00een func\u021bie de nevoile dumneavoastr\u0103 \u0219i poate fi utilizat pentru volumes mari de date de jurnal.<\/p>\n<p><\/p>\n<h3 id=\"multiarendnost\">Multi-tenant<\/h3>\n<p><\/p>\n<p>Multi-tenantitatea clusterului este un subiect comun pentru reducerea OPEX, ambele stive oferind suport pentru multi-tenantitate. Pentru Elasticsearch, exist\u0103 c\u00e2teva <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/blog\/found-multi-tenancy\">metode<\/a><\/noindex> de separare a clien\u021bilor: un index separat pentru fiecare client, rutare bazat\u0103 pe client, c\u00e2mpuri unice pentru client, filtre de c\u0103utare. \u00cen Loki, aceasta exist\u0103 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/grafana\/loki\/blob\/master\/docs\/operations\/multi-tenancy.md\">suport pentru<\/a><\/noindex> sub forma antetului HTTP X-Scope-OrgID.<\/p>\n<p><\/p>\n<h3 id=\"stoimost\">Pre\u021b<\/h3>\n<p><\/p>\n<p>Loki este foarte eficient din punct de vedere economic deoarece nu indexeaz\u0103 datele, ci doar metadatele. Astfel, se realizeaz\u0103 <noindex><a rel=\"nofollow\" href=\"https:\/\/grafana.com\/blog\/2020\/02\/19\/how-loki-reduces-log-storage\/\">economii de stocare<\/a><\/noindex> \u0219i memorie (cache), deoarece stocarea obiectelor este mai ieftin\u0103 dec\u00e2t stocarea pe blocuri, care este utilizat\u0103 \u00een clusterele Elasticsearch.<\/p>\n<p><\/p>\n<h2 id=\"zaklyuchenie\">Concluzie<\/h2>\n<p><\/p>\n<p>Stiva EFK poate fi utilizat\u0103 \u00een scopuri diverse, oferind flexibilitate maxim\u0103 \u0219i o interfa\u021b\u0103 multifunc\u021bional\u0103 Kibana pentru analiz\u0103, vizualizare \u0219i interog\u0103ri. Aceasta poate fi \u00eembun\u0103t\u0103\u021bit\u0103 suplimentar prin capacit\u0103\u021bile de \u00eenv\u0103\u021bare automat\u0103.<\/p>\n<p><\/p>\n<p>Stiva Loki este util\u0103 \u00een ecosistemul Kubernetes datorit\u0103 mecanismului de descoperire a metadatelor. Este u\u0219or de corelat datele pentru monitorizarea bazat\u0103 pe serii temporale \u00een Grafana \u0219i jurnalele.<\/p>\n<p><\/p>\n<p>C\u00e2nd vine vorba de cost \u0219i stocarea pe termen lung a jurnalelor, Loki este o alegere excelent\u0103 pentru intrarea \u00een solu\u021bii cloud.<\/p>\n<p><\/p>\n<p>Pe pia\u021b\u0103 exist\u0103 mai multe alternative \u2014 unele pot fi mai bune pentru dvs. De exemplu, pentru GKE exist\u0103 integrarea Stackdriver, care ofer\u0103 o solu\u021bie excelent\u0103 pentru monitorizare. Nu le-am inclus \u00een analiza noastr\u0103 din acest articol.<\/p>\n<p><\/p>\n<p>Linkuri:<\/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>Articolul a fost tradus \u0219i preg\u0103tit pentru Habr de angaja\u021bii <noindex><a rel=\"nofollow\" href=\"http:\/\/to.slurm.io\/7x-vEQ\">centrului de formare Slurm<\/a><\/noindex> \u2014 intensive, cursuri video \u0219i formare corporativ\u0103 de la speciali\u0219ti practican\u021bi (Kubernetes, DevOps, Docker, Ansible, Ceph, SRE, Agile)<\/em><\/p>\n<p>Sursa: <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.2.1 - 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\/ro\/blog\/administrirovanie\/logirovanie-v-kubernetes-efk-protiv-plg\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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\/ro\/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\udd47\u00cenregistrarea \u00een Kubernetes: EFK vs PLG | ProHoster","description":"Monitorizarea a devenit un component foarte important.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/logirovanie-v-kubernetes-efk-protiv-plg","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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\/ro\/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\/ro\/wp-json\/wp\/v2\/posts\/89038","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=89038"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/89038\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/89039"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=89038"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=89038"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=89038"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}