Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

He ʻāpana koʻikoʻi nā logs o ka ʻōnaehana, e ʻae iā ʻoe e hoʻomaopopo he hana ia (a ʻaʻole hana) e like me ka mea i manaʻo ʻia. Ma lalo o nā kūlana o ka hoʻolālā microservice, lilo ka hana ʻana me nā lāʻau i kahi aʻo ʻokoʻa o ka Special Olympiad. Nui nā pilikia e pono e hoʻoponopono ʻia:

  • pehea e kākau ai i nā moʻolelo mai ka palapala noi;
  • kahi e kākau ai i nā lāʻau;
  • pehea e hāʻawi ai i nā lāʻau no ka mālama ʻana a me ka hana ʻana;
  • pehea e hana ai a mālama i nā lāʻau.

ʻO ka hoʻohana ʻana i nā ʻenehana containerization kaulana i kēia manawa e hoʻohui i ke one ma luna o ka rake ma ke kahua o nā koho hoʻoponopono pilikia.

ʻO kēia wale nō ka transcript o ka hōʻike a Yuri Bushmelev "Map of a rake i ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau"

ʻO wai ka manaʻo, e ʻoluʻolu ma lalo o ka pōpoki.

ʻO Yuri Bushmelev koʻu inoa. Hana wau no Lazada. I kēia lā e kamaʻilio wau e pili ana i kā mākou hana ʻana i kā mākou mau lāʻau, pehea mākou i hōʻiliʻili ai, a me nā mea a mākou e kākau ai ma laila.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

No hea mai mākou? ʻO wai mākou? ʻO Lazada ka #1 hale kūʻai pūnaewele ma ʻeono mau ʻāina ma Asia Hikina Hema. Hāʻawi ʻia kēia mau ʻāina āpau ma waena o nā kikowaena data. Aia i kēia manawa he 4 mau kikowaena data. No ke aha he mea nui kēia? No ka mea, aia kekahi mau hoʻoholo ma muli o ke ʻano nāwaliwali loa ma waena o nā kikowaena. Loaʻa iā mākou kahi hale hana microservice. Pīhoihoi au i ka ʻike ʻana ua loaʻa iā mākou he 80 microservices. I koʻu hoʻomaka ʻana i ka hana me nā lāʻau, aia he 20 wale nō o lākou. Eia kekahi, aia kahi ʻāpana nui o ka hoʻoilina PHP, pono iaʻu e noho a hoʻomanawanui. Hoʻopuka kēia mau mea a pau iā mākou i kēia manawa ma mua o 6 miliona mau memo i kēlā me kēia minuke ma ka ʻōnaehana holoʻokoʻa. E hōʻike hou aku au i ke ʻano o kā mākou hoʻāʻo ʻana e noho me kēia, a no ke aha kēia.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Pono ʻoe e ola me kēia mau memo 6 miliona. He aha kā mākou e hana ai me lākou? 6 miliona mau memo e pono ai:

  • hoʻouna mai ka app
  • e ae no ka lawe ana
  • hāʻawi no ka nānā ʻana a me ka mālama ʻana.
  • kālailai
  • hale kūʻai ma kekahi ʻano.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

I ka loaʻa ʻana o ʻekolu miliona mau memo, loaʻa iaʻu kahi ʻano like. No ka mea ua hoʻomaka mākou me kekahi mau peni. Ua maopopo ua kākau ʻia nā palapala noi ma laila. No ka laʻana, ʻaʻole hiki ke hoʻopili i ka waihona, hiki ke hoʻopili i ka waihona, akā ʻaʻole hiki ke heluhelu i kekahi mea. Akā ma waho aʻe o kēia, kākau pū kekahi o kā mākou microservice i kahi log access. Hāʻule kēlā me kēia noi i hiki mai i ka microservice i loko o ka log. No ke aha mākou e hana nei i kēia? Makemake nā mea hoʻomohala e hiki ke ʻimi. Loaʻa i kēlā me kēia log access ka traceid field, e like me ia e wehe ai kahi interface kūikawā i ke kaulahao holoʻokoʻa a hōʻike nani i ka trace. Hōʻike ka trace i ka hele ʻana o ka noi, a kōkua kēia i kā mākou mea hoʻomohala e hana wikiwiki i nā ʻōpala ʻike ʻole.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Pehea e noho ai me ia? I kēia manawa e wehewehe pōkole wau i ke kahua o nā koho - pehea e hoʻoponopono ʻia ai kēia pilikia. Pehea e hoʻoponopono ai i ka pilikia o ka hōʻiliʻili, hoʻoili a mālama ʻana i nā lāʻau.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Pehea e kākau ai mai ka palapala noi? Ua maopopo he mau ʻano like ʻole. ʻO ka mea kūikawā, aia kahi hana maikaʻi loa, e like me ka haʻi ʻana mai o nā hoa hana. ʻElua ʻano kula kahiko, e like me ka ʻōlelo a nā kupuna kāne. Aia kekahi mau ala ʻē aʻe.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Me ka hōʻiliʻili o nā lāʻau, ua like ke kūlana. ʻAʻole nui nā koho no ka hoʻoponopono ʻana i kēia ʻāpana. Nui aʻe lākou, akā ʻaʻole nui i kēia manawa.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Akā me ka hāʻawi ʻana a me ka nānā ʻana ma hope, hoʻomaka ka nui o nā ʻano like ʻole e pahū. ʻAʻole wau e wehewehe i kēlā me kēia koho i kēia manawa. Manaʻo wau uaʻike nuiʻia nā koho nui i nā mea a pau i makemake i ke kumuhana.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

E hōʻike wau iā ʻoe pehea mākou i hana ai ma Lazada a pehea i hoʻomaka ai.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

I hoʻokahi makahiki i hala aku nei, ua hele au i Lazada a ua hoʻouna ʻia i ka papahana log. Pēlā nō ma laila. Ua kākau ʻia ka log mai ka noi iā stdout a me stderr. Ua hana ʻia nā mea a pau ma ke ʻano hiʻohiʻona. Akā, ua hoʻolei aku nā mea hoʻomohala i waho o nā kahawai maʻamau, a laila e noʻonoʻo ka poʻe loea i ke ʻano. Ma waena o ka poʻe loea a me nā mea hoʻomohala, aia kekahi mau mea hoʻokuʻu i ʻōlelo: "ʻAe ... ʻae, e hoʻopili wale mākou iā lākou i kahi faila me kahi pūpū, a ʻo ia nō." A no ka mea aia kēia mau mea a pau i loko o kahi pahu, ua ʻōwili lākou iā ia i loko o ka ipu ponoʻī, hoʻopaʻa ʻia i ka papa kuhikuhi i loko a waiho i laila. Manaʻo wau he mea maopopo loa i nā mea a pau ka mea i hana ʻia.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

E nana iki kakou. Pehea mākou i hāʻawi ai i kēia mau lāʻau. Ua koho kekahi i ka td-agent, ʻo ia ka mea maʻalahi akā ʻaʻole maopopo loa. ʻAʻole naʻe au i maopopo i ka pilina o kēia mau papahana ʻelua, akā like lāua me ka mea like. A ʻo kēia fluentd, i kākau ʻia ma Ruby, heluhelu i nā faila log, hoʻopili iā lākou i JSON me ka hoʻohana ʻana i kekahi mau ʻōlelo maʻamau. A laila, hoʻouna ʻia lākou i Kafka. Eia kekahi, ma Kafka, loaʻa iā mākou 4 mau kumuhana kaʻawale no kēlā me kēia API. No ke aha 4? No ka mea he ola, aia ke kahua, a no ka mea aia ka stdout a me ka stderr. Hoʻokumu nā mea hoʻomohala iā lākou, a pono e hana nā limahana hana ma Kafka. Eia kekahi, ua hoʻomalu ʻia ʻo Kafka e kekahi keʻena ʻē aʻe. No laila, pono e hana i kahi tikiki i hana lākou i 4 mau kumuhana ma laila no kēlā me kēia api. Ua poina nā kānaka a pau. Ma keʻano laulā, he ʻōpala a me ka ʻōpala.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

He aha kā mākou i hana ai me ia? Hoʻouna mākou iā kafka. Ma waho aʻe o Kafka, lele ka hapalua o nā lāʻau i Logstash. Ua māhele ʻia ka hapa ʻē aʻe o nā lāʻau. Ua lele kekahi i kekahi Graylog, kekahi i kekahi Graylog. ʻO ka hopena, ua lele kēia mau mea a pau i hoʻokahi pūʻulu Elasticsearch. ʻO ia hoʻi, hāʻule kēia haunaele i ka hopena ma laila. ʻAʻole pono ʻoe e hana pēlā!

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

ʻO kēia ke ʻano ke nānā ʻia mai luna mai. ʻAʻole pono ʻoe e hana pēlā! Maʻaneʻi, hōʻailona kokeʻia nā wahi pilikia me nā helu. ʻOi aku ka nui o lākou, akā he 6 pilikia maoli, kahi e pono ai ke hana. E haʻi kaʻawale wau iā lākou i kēia manawa.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Ma ʻaneʻi (1,2,3) kākau mākou i nā faila a, no laila, ʻekolu rake ma ʻaneʻi i ka manawa hoʻokahi.

ʻO ka mua (1) pono mākou e kākau iā lākou ma kahi. ʻAʻole makemake mau e hāʻawi i kahi API i hiki ke kākau pololei i kahi faila. Makemake ʻia e hoʻokaʻawale ʻia ka API i loko o kahi pahu, a ʻoi aku ka maikaʻi, e heluhelu wale ʻia. He luna hoʻonohonoho au, no laila he manaʻo ʻokoʻa koʻu no kēia mau mea.

ʻO ka helu ʻelua (2,3) he nui nā noi e hele mai ana i ka API. Kākau ka API i nā ʻikepili he nui i kahi faila. Ke ulu nei nā faila. Pono mākou e hoʻohuli iā lākou. No ka mea, ʻaʻole hiki iā ʻoe ke mālama i nā disc ma laila. He hewa ka hoʻololi ʻana iā lākou no ka mea ua hoʻohuli ʻia lākou ma o ka pūpū i kahi papa kuhikuhi. ʻAʻohe ala e hiki ai iā mākou ke hoʻololi. ʻAʻole hiki iā ʻoe ke haʻi i ka noi e wehe hou i nā lima. No ka mea e nānā nā mea hoʻomohala iā ʻoe e like me ka naʻaupō: "He aha nā mea wehewehe? Kākau maʻamau mākou iā stdout. Ua hana nā frameworks i copytruncate i loko o ka logrotate, e hana wale i kope o ka faila a hoʻopau i ke kumu. No laila, ma waena o kēia mau kaʻina hana kope, hoʻopau maʻamau ka wahi disk.

(4) Loaʻa iā mākou nā ʻano like ʻole i nā API like ʻole. He ʻokoʻa iki lākou, akā pono e kākau ʻokoʻa ka regexp. Ma muli o ka mālama ʻia ʻana e ka Puppet, aia kahi pūʻulu nui o nā papa me kā lākou mau moho. Eia kekahi, hiki i ka td-agent ka hapa nui o ka manawa ke ʻai i ka hoʻomanaʻo, he naʻaupō, hiki iā ia ke hoʻohālike e hana ana ʻo ia a ʻaʻohe hana. Ma waho, ʻaʻole hiki ke hoʻomaopopo ʻaʻole ʻo ia e hana nei. ʻO ka maikaʻi loa, hāʻule ʻo ia, a na kekahi e hāpai iā ia ma hope. ʻOi aku ka pololei, e lele mai kahi mākaʻikaʻi, a hele kekahi e hāpai me ko lākou mau lima.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

(6) A ʻo ka ʻōpala a me ka ʻōpala - ʻo ia ka elasticsearch. No ka mea, he mana kahiko. No ka mea, ʻaʻohe o mākou haku hoʻolaʻa i kēlā manawa. Loaʻa iā mākou nā lāʻau like ʻole e hiki ke hoʻopaʻa ʻia nā māla. Hiki ke kākau ʻia nā moʻolelo like ʻole o nā noi like ʻole me nā inoa kahua like, akā i ka manawa like hiki ke loaʻa nā ʻikepili ʻokoʻa i loko. ʻO ia hoʻi, hele mai kahi log me kahi Integer i kahi kahua, no ka laʻana, pae. Hele mai kekahi log me kahi String ma ke kahua pae. I ka loaʻa ʻole o ka palapala ʻāina static, ʻike ʻia kahi mea kupanaha. Inā, ma hope o ka hoʻololi ʻana i ka index, hiki mua mai kahi memo me kahi kaula i ka elasticsearch, a laila ke ola maʻamau mākou. A inā hōʻea ka mea mua me ka Integer, a laila e hoʻolei wale ʻia nā memo a pau i hiki mai me String. No ka mea, ʻaʻole kūlike ke ʻano kahua.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Ua hoʻomaka mākou e nīnau i kēia mau nīnau. Ua hoʻoholo mākou ʻaʻole e ʻimi i ka mea hewa.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Akā, pono e hana kekahi mea! ʻO ka mea maopopo, pono mākou e hoʻokumu i nā kūlana. Ua loaʻa iā mākou kekahi mau kūlana. ʻO kekahi a mākou i lawe mai ma hope iki. ʻO ka mea pōmaikaʻi, ua ʻae ʻia kahi ʻano log hoʻokahi no nā API āpau i kēlā manawa. Ua kākau pololei ʻia i loko o nā kūlana pili lawelawe. No laila, pono e kākau ka poʻe makemake e loaʻa i nā lāʻau ma kēia ʻano. Inā ʻaʻole kākau kekahi i nā lāʻau ma kēia ʻano, ʻaʻole mākou e hōʻoiaʻiʻo i kekahi mea.

Eia hou, makemake wau e loaʻa i hoʻokahi maʻamau no ke ʻano o ka hoʻopaʻa ʻana, ka lawe ʻana a me ka ʻohi ʻana i nā lāʻau. ʻOiaʻiʻo, kahi e kākau ai iā lākou, a pehea e hāʻawi ai iā lākou. ʻO ke kūlana kūpono ke hoʻohana nā papahana i ka waihona like. Aia kahi waihona logging kaʻawale no Go, aia kahi waihona ʻokoʻa no PHP. ʻO nā mea a pau iā mākou, pono nā mea a pau e hoʻohana iā lākou. I kēia manawa, e ʻōlelo wau e holomua ana mākou ma ka 80 pakeneka. Akā hoʻomau kekahi e ʻai i ka cacti.

A ma laila (ma ka paheʻe) ʻaʻole hoʻomaka ka "SLA no ka lawe ʻana i ka lāʻau". ʻAʻole ia i laila, akā ke hana nei mākou. No ka mea he mea maʻalahi loa ke ʻōlelo ʻo infra inā ʻoe e kākau i kēlā a me kēia ʻano i kēlā me kēia wahi a ʻaʻole i ʻoi aku ma mua o N memo i kēlā me kēia kekona, a laila e hāʻawi mākou iā ia ma laila. Lawe ia i ka nui o ke poo. Inā loaʻa kahi SLA, a laila maikaʻi wale nō!

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Pehea mākou i hoʻomaka ai e hoʻoponopono i ka pilikia? ʻO ka rake nui me td-agent. ʻAʻole maopopo i kahi e hele ai kā mākou mau lāʻau. Hāʻawi ʻia lākou? Hele lākou? Aia i hea lākou? No laila, ua hoʻoholo ʻia e hoʻololi i ka td-agent me ka mea mua. ʻO nā koho no ka mea e pani ai me ia, ua wehewehe pōkole wau ma aneʻi.

Fluentd. ʻO ka mea mua, ʻike wau iā ia ma kahi hana ma mua, a hāʻule ʻo ia i kēlā me kēia manawa. ʻO ka lua, ua like kēia, ma ka ʻaoʻao wale nō.

filebeat. Pehea ka maikaʻi iā mākou? ʻO ka ʻoiaʻiʻo aia ʻo ia ma Go, a loaʻa iā mākou kahi loea nui ma Go. No laila, inā he mea, hiki iā mākou ke hoʻohui iā mākou iho. ʻO ia ke kumu ʻaʻole mākou i lawe. I ʻole e hoʻowalewale ʻia e hoʻomaka e kākau hou iā ʻoe iho.

ʻO ka hopena maopopo no ka sysadmin nā ʻano syslogs āpau i kēia nui (syslog-ng/rsyslog/nxlog).

A i ʻole e kākau i kāu mea ponoʻī, akā ua hoʻolei mākou, a me filebeat. Inā kākau ʻoe i kekahi mea, ʻoi aku ka maikaʻi o ke kākau ʻana i mea pono no ka ʻoihana. No ka lawe ʻana i nā lāʻau, ʻoi aku ka maikaʻi o ka lawe ʻana i kahi mea i mākaukau.

No laila, ua iho maoli ka koho i kahi koho ma waena o syslog-ng a me rsyslog. Ua hilinaʻi au i ka rsyslog no ka mea ua loaʻa iā mākou nā papa no rsyslog ma Puppet, a ʻaʻole wau i ʻike i kahi ʻokoʻa ma waena o lākou. He aha ka syslog, he aha ka syslog. ʻAe, ʻoi aku ka maikaʻi o kekahi mau palapala, ʻoi aku ka maikaʻi o kekahi. ʻIke ʻo ia i kēia ala, a ʻokoʻa kāna hana.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

A he wahi liʻiliʻi e pili ana i rsyslog. ʻO ka mea mua, ʻoluʻolu no ka mea he nui nā modula. Loaʻa iā ia kahi RainerScript hiki ke heluhelu ʻia e ke kanaka (ʻōlelo hoʻonohonoho hou). ʻO kahi bonus maikaʻi loa e hiki iā mākou ke hoʻohālike i ke ʻano o ka td-agent me kāna mau mea hana maʻamau, ʻaʻohe mea i loli no nā noi. ʻO ia hoʻi, hoʻololi mākou i ka td-agent i rsyslog, a mai hoʻopā i nā mea ʻē aʻe. A loaʻa koke iā mākou kahi hāʻawi hana. ʻO ka mea aʻe, ʻo mmnormalize ka mea maikaʻi e pili ana i rsyslog. Hāʻawi ia iā ʻoe e parse i nā lāʻau, akā ʻaʻole me Grok a me regexp. Hana ia i kahi kumulāʻau syntax abstract. Hoʻokaʻawale ʻo ia i nā lāʻau ma ke ʻano like me ka hoʻopaʻa ʻana i ka code kumu. ʻAe kēia iā ʻoe e hana wikiwiki, ʻai i ka CPU liʻiliʻi, a, ma ke ʻano nui, he mea ʻoluʻolu loa. Aia kekahi pūʻulu o nā bonus ʻē aʻe. ʻAʻole au e noho ma luna o lākou.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

ʻoi aku ka maikaʻi o ka rsyslog. Ua like lākou me nā bonus. ʻO nā pilikia nui, pono ʻoe e kuke iā ia, a pono ʻoe e koho i kahi mana.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Ua hoʻoholo mākou e kākau mākou i nā lāʻau i loko o kahi kumu unix. ʻAʻole i loko / dev / log, no ka mea aia mākou i kahi ʻino o nā loina ʻōnaehana, aia i loko o kēia pipeline. No laila e kākau kāua i kahi kumu maʻamau. E hoʻopili mākou iā ia i kahi lula ʻokoʻa. Mai keakea kakou i kekahi mea. E maopopo a maopopo nā mea a pau. No laila ua hana maoli mākou. Hoʻonohonoho ʻia ka papa kuhikuhi me kēia mau kumu a hoʻouna ʻia i nā pahu āpau. Hiki i nā pahu ke ʻike i ke kumu e pono ai lākou, wehe a kākau iā ia.

No ke aha ʻaʻole kahi faila? No ka mea, ua heluhelu nā kānaka a pau ʻatikala e pili ana iā Badushechka, ka mea i ho'āʻo e hoʻouna i ka faila i docker, a ʻike ʻia ma hope o ka hoʻomaka hou ʻana i ka rsyslog, hoʻololi ka mea wehewehe faila, a nalowale ka docker i kēia faila. Hāmama ʻo ia i kekahi mea ʻē aʻe, ʻaʻole naʻe i ke kumu like kahi a lākou e kākau ai. Ua hoʻoholo mākou e kāʻalo i kēia pilikia, a, i ka manawa like, e kāʻalo i ka pilikia pale.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Hana ʻo Rsyslog i nā hana i hōʻike ʻia ma ka slide a hoʻouna i nā lāʻau i ka relay a i ʻole Kafka. Ua hahai ʻo Kafka i ke ala kahiko. Rayleigh - Ua ho'āʻo wau e hoʻohana i ka rsyslog maʻemaʻe e hāʻawi i nā lāʻau. Me ka ʻole o ka Message Queue, me ka hoʻohana ʻana i nā mea hana rsyslog maʻamau. Ma ke kumu, hana ia.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Akā aia nā nuances me pehea e hoʻopili ai iā lākou ma hope i kēia ʻāpana (Logstash/Graylog/ES). Hoʻohana ʻia kēia ʻāpana (rsyslog-rsyslog) ma waena o nā kikowaena data. Eia kahi loulou tcp compressed, e hiki ai iā ʻoe ke mālama i ka bandwidth a, no laila, e hoʻonui i ka likelihood e loaʻa iā mākou kekahi mau logs mai kahi kikowaena data ʻē aʻe i ka piha ʻana o ke kahawai. No ka mea, loaʻa iā mākou ʻo Indonesia, kahi ʻino nā mea a pau. Ma laila ka pilikia mau.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Ua noʻonoʻo mākou i ke ʻano o kā mākou nānā pono ʻana, me ke ʻano o ka hiki ʻana o nā lāʻau i hoʻopaʻa ʻia mai ka noi i kēlā hopena? Ua hoʻoholo mākou e hoʻomaka i nā ana. Loaʻa iā Rsyslog kāna kōmike hōʻiliʻili helu, aia kekahi ʻano helu helu. No ka laʻana, hiki iā ia ke hōʻike iā ʻoe i ka nui o ka pila, a i ʻole ka nui o nā memo i komo mai no kēlā me kēia hana. Hiki iā ʻoe ke lawe i kekahi mea mai iā lākou. Eia kekahi, loaʻa iā ia nā helu helu maʻamau i hiki iā ʻoe ke hoʻonohonoho, a e hōʻike iā ʻoe, no ka laʻana, ka helu o nā memo i hoʻopaʻa ʻia e kekahi API. A laila, kākau wau i ka rsyslog_exporter ma Python, a hoʻouna mākou iā ia i Prometheus a hoʻolālā. Makemake nui mākou i nā metric Graylog, akā i kēia manawa ʻaʻole mākou i manawa e hoʻonohonoho iā lākou.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

He aha nā pilikia? Ua ala mai ka pilikia me ka ʻike ʻana iā mākou (SUDDENLY!) Ua kākau kā mākou Live API i nā leka 50k i kēlā me kēia kekona. ʻO Live API wale nō kēia me ka ʻole o ka hana. A hōʻike wale ʻo Graylog iā mākou i 12 tausani mau memo i kēlā me kēia kekona. A ua ala mai ka ninau kupono, auhea na koena? Mai kahi a mākou i hoʻoholo ai ʻaʻole hiki iā Graylog ke hoʻokō. Nānā mākou, a ʻo Graylog me Elasticsearch ʻaʻole i haku i kēia kahe.

ʻO ka mea aʻe, nā ʻike ʻē aʻe a mākou i hana ai ma ke ala.

Ua ālai ʻia ke kākau ʻana i ke kumu. Pehea i hiki mai ai? I koʻu hoʻohana ʻana i ka rsyslog no ka lawe ʻana, i kekahi manawa ua wāwahi mākou i ke kahawai ma waena o nā kikowaena data. Ua ala ka lawe ʻana ma kekahi wahi, ua ala ka lawe ʻana ma kahi ʻē. Ua iho kēia mau mea a pau i kahi mīkini me nā API e kākau ana i ke kumu rsyslog. He laina laina. A laila ua hoʻopiha ʻia ka pila no ke kākau ʻana i ke kumu unix, ʻo ia ka 128 mau ʻeke. A ʻo ke kākau aʻe () ma nā poloka noi. I ko mākou nānā ʻana i ka hale waihona puke a mākou e hoʻohana ai i nā noi Go, ua kākau ʻia ma laila ke kākau ʻana i ke kumu i ke ʻano non-blocking. Ua maopopo iā mākou ʻaʻohe mea i pāpā ʻia. No ka mea, ua heluhelu mākou ʻatikala e pili ana iā Badushechkanana i kakau no ia mea. Akā aia kekahi manawa. Aia pū kekahi puʻupuʻu pau ʻole a puni kēia kelepona, kahi i hoʻāʻo mau ai e hoʻolei i kahi leka i loko o ke kumu. ʻAʻole mākou i ʻike iā ia. Pono au e kākau hou i ka waihona. Mai ia manawa, ua loli pinepine ia, akā i kēia manawa ua hoʻopau mākou i nā laka i nā subsystem āpau. No laila, hiki iā ʻoe ke hoʻōki i ka rsyslog a ʻaʻohe mea e hāʻule.

Pono e nānā i ka nui o nā queues, e kōkua ʻole e hehi i kēia rake. ʻO ka mea mua, hiki iā mākou ke nānā i ka wā e hoʻomaka ai mākou e nalowale i nā memo. ʻO ka lua, hiki iā mākou ke nānā i nā pilikia me ka lawe ʻana.

A ʻo kekahi manawa leʻaleʻa - hoʻonui ʻia e 10 mau manawa i kahi hoʻolālā microservice he maʻalahi loa. ʻAʻole nui nā noi e hiki mai ana, akā ma muli o ka pakuhi e holo hou ai kēia mau memo, no ka loaʻa ʻana o nā moʻolelo, hoʻonui maoli mākou i ka ukana ma kahi o ʻumi mau manawa. ʻO ka mea pōʻino, ʻaʻole i loaʻa iaʻu ka manawa e helu ai i nā helu kikoʻī, akā ʻo nā microservice ka mea. Pono e mālama i kēia. ʻIke ʻia i kēia manawa ʻo ka subsystem hōʻiliʻili lāʻau ka mea i hoʻouka ʻia ma Lazada.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Pehea e hoʻoponopono ai i ka pilikia elasticsearch? Inā pono ʻoe e kiʻi koke i nā lāʻau ma kahi hoʻokahi, i ʻole e holo i nā mīkini āpau a hōʻiliʻili iā lākou ma laila, e hoʻohana i ka waihona waihona. Hoʻopaʻa ʻia kēia e hana. Hana ʻia ia mai kekahi kikowaena. Pono ʻoe e kau i nā disks ma laila a kau i ka syslog. Ma hope o kēlā, ua hōʻoia ʻia ʻoe e loaʻa nā lāʻau āpau ma kahi hoʻokahi. A laila hiki ke hoʻonohonoho mālie i ka elasticsearch, graylog, a i ʻole kekahi mea ʻē aʻe. Akā, e loaʻa iā ʻoe nā lāʻau a pau, a, ʻoi aku, hiki iā ʻoe ke mālama iā lākou, a hiki i ka nui o nā arrays disk.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

I ka manawa o kaʻu hōʻike, ua hoʻomaka ke ʻano e like me kēia. Ua ho'ōki mākou i ke kākau ʻana i ka faila. I kēia manawa, e hoʻopau mākou i nā koena. Ma nā mīkini kūloko e holo ana i ka API, e hooki mākou i ke kākau ʻana i nā faila. ʻO ka mea mua, aia kahi waihona waihona, kahi hana maikaʻi loa. ʻO ka lua, ke holo mau nei kēia mau mīkini i waho o ka lewa, pono ʻoe e nānā mau.

ʻO kēia ʻāpana me Logstash a me Graylog, lele maoli ia. No laila, pono ʻoe e hoʻopau iā ia. Pono ʻoe e koho i hoʻokahi.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Ua hoʻoholo mākou e haʻalele iā Logstash a me Kibana. No ka mea, he ʻoihana palekana kā mākou. He aha ka pili? ʻO ka pilina ʻo Kibana me ka ʻole X-Pack a me ka pale ʻole ʻaʻole ʻae iā ʻoe e hoʻokaʻawale i nā kuleana komo i nā lāʻau. No laila, lawe lākou iā Graylog. Loaʻa iā ia nā mea a pau. ʻAʻole wau makemake, akā hana. Ua kūʻai mākou i nā lakohana hou, hoʻokomo i kahi Graylog hou ma laila, a hoʻoneʻe i nā lāʻau āpau me nā ʻano koʻikoʻi i kahi Graylog ʻokoʻa. Ua hoʻoponopono mākou i ka pilikia me nā ʻano like ʻole o nā māla like me ka hoʻonohonoho ʻana.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

He aha ka mea i komo i loko o ka Graylog hou. Ua kākau wale mākou i nā mea a pau ma ka docker. Lawe mākou i kahi pūʻulu o nā kikowaena, ʻōwili ʻia ʻekolu mau manawa Kafka, 7 Graylog servers version 2.3 (no ka mea makemake wau i ka mana Elasticsearch 5). Ua hāpai ʻia kēia mau mea a pau ma nā hoʻouka ʻana mai ka HDD. Ua ʻike mākou i ka helu helu helu a hiki i ka 100 tausani memo i kēlā me kēia kekona. Ua ʻike mākou i ka helu he 140 terabytes o ka ʻikepili i kēlā me kēia pule.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

A he rake hou! ʻElua kā mākou kūʻai e piʻi mai ana. Ua neʻe mākou ma mua o 6 miliona mau pou. ʻAʻohe manawa iā mākou ʻo Graylog e nahu. Pono ʻoe e ola hou.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

Pēlā mākou i ola ai. Hoʻohui i kekahi mau kikowaena a me SSD. I kēia manawa ke ola nei mākou e like me kēia. I kēia manawa ke nau nei mākou i 160k memo i kēlā me kēia kekona. ʻAʻole mākou i hōʻea i ka palena, no laila ʻaʻole maopopo i ka nui o ka hiki ke puka maoli mai ia mea.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

ʻO kēia kā mākou papahana no ka wā e hiki mai ana. ʻO kēia mau mea, ʻoiaʻiʻo, ʻo ka mea nui ka loaʻa kiʻekiʻe. ʻAʻole loaʻa iā mākou. Hoʻonohonoho ʻia kekahi mau kaʻa ma ke ala like, akā i kēia manawa ke hele nei nā mea a pau ma ke kaʻa hoʻokahi. Pono e hoʻolilo i ka manawa e hoʻonohonoho i kahi failover ma waena o lākou.

E hōʻiliʻili i nā ana mai Graylog.

Hana i ka palena palena i loaʻa iā mākou hoʻokahi API pupule ʻaʻole e pepehi iā mākou i ka bandwidth a me nā mea ʻē aʻe.

A ʻo ka hope, kau inoa i kekahi ʻano SLA me nā mea hoʻomohala i hiki iā mākou ke lawelawe i kēlā nui. Inā kākau hou ʻoe, e kala mai.

A kākau i nā palapala.

Yury Bushmelev "Map of a rake ma ke kahua o ka hōʻiliʻili a me ka hāʻawi ʻana i nā lāʻau" - transcript o ka hōʻike.

ʻO ka pōkole, nā hopena o nā mea a pau a mākou i ʻike ai. ʻO ka mea mua, nā kūlana. ʻO ka lua, ʻo ka syslog ka keke. ʻO ke kolu, hana pololei ʻo rsyslog e like me ka mea i kākau ʻia ma ka slide. A e hele kāua i nā nīnau.

ʻO kāu mau nīnau.

Kou nīnau: No ke aha lākou i hoʻoholo ai ʻaʻole e lawe ... (filebeat?)

ʻO ka pane: Pono e kākau i kahi faila. ʻAʻole loa au i makemake. Ke kākau kāu API i mau tausani memo i kēlā me kēia kekona, ʻoiai inā ʻoe e hoʻololi i hoʻokahi hola i hoʻokahi hola, ʻaʻole kēia he koho. Hiki iā ʻoe ke kākau i ka paipu. I nīnau mai nā mea hoʻomohala iaʻu: "He aha ka hopena inā hāʻule ke kaʻina hana a mākou e kākau ai"? ʻAʻole i loaʻa iaʻu ka mea e pane aku ai iā lākou, a ʻōlelo wau: "ʻAe, ʻae, mai hana kāua."

Kou nīnau: No ke aha ʻoe e kākau ʻole ai i nā lāʻau i HDFS?

ʻO ka paneA: ʻO kēia ka hana aʻe. Ua noʻonoʻo mākou iā ia i ka hoʻomaka ʻana, akā no ka mea ʻaʻohe kumu e hoʻoponopono ai i kēia manawa, kau ia i kā mākou hopena lōʻihi.

Kou nīnau: ʻOi aku ka maikaʻi o ke ʻano kolamu.

ʻO ka pane: Maopopo iaʻu. "no" mākou me nā lima ʻelua.

Kou nīnau: Kākau ʻoe iā rsyslog. Loaʻa nā TCP a me ka UDP ma laila. Akā inā ʻo UDP, a laila pehea ʻoe e hōʻoiaʻiʻo ai i ka lawe ʻana?

ʻO ka paneA: ʻElua mau helu. ʻO ka mea mua, haʻi koke wau i nā mea āpau ʻaʻole mākou e hōʻoiaʻiʻo i ka lawe ʻana i nā lāʻau. No ka mea, i ka wā e hele mai ai nā mea hoʻomohala a ʻōlelo: "E hoʻomaka kāua e kākau i ka ʻikepili kālā ma laila, a e waiho ʻoe i kahi no mākou inā loaʻa kekahi mea," pane mākou iā lākou, "Nui! E hoʻomaka kāua e hoʻopaʻa i ke kākau ʻana i ke kumu, a e hana i nā hana, i hōʻoia ʻia ʻoe e hoʻokomo i loko o ke kumu no mākou a e hōʻoia i loaʻa iā mākou mai kēlā ʻaoʻao. A i kēia manawa, lilo koke nā mea āpau i mea pono ʻole. A inā ʻaʻole, he aha nā nīnau a mākou? Inā ʻaʻole ʻoe makemake e hōʻoiaʻiʻo i kahi kākau i ke kumu, no ke aha mākou e hōʻoia ai i ka lawe ʻana? Ke hooikaika nei makou. Ke ho'āʻo maoli nei mākou e hāʻawi i ka mea hiki a me ka maikaʻi loa, akā ʻaʻole mākou e hāʻawi i kahi hōʻoia 100%. No laila, ʻaʻole pono ʻoe e kākau i ka ʻikepili kālā ma laila. Aia nā waihona transactional no kēia.

Kou nīnau: Ke hoʻopuka ka API i kekahi memo i ka log a hoʻololi i ka mana i nā microservices, ua loaʻa anei iā ʻoe ka pilikia e hiki mai ana nā memo mai nā microservices like ʻole i ke kauoha hewa? Ma muli o kēia, ulu mai ka huikau.

ʻO ka paneA: He mea maʻamau ke hele mai lākou ma kahi ʻano ʻokoʻa. Pono ʻoe e mākaukau no kēia. No ka mea, ʻaʻole e hōʻoiaʻiʻo ka hāʻawi pūnaewele iā ʻoe, a i ʻole pono ʻoe e hoʻolilo i nā kumuwaiwai kūikawā ma kēia. Inā lawe mākou i nā waihona waihona, a laila mālama kēlā me kēia API i nā lāʻau i kāna faila ponoʻī. Akā, hoʻokaʻawale ʻo rsyslog iā lākou i nā papa kuhikuhi ma laila. Loaʻa i kēlā me kēia API kona mau lāʻau ponoʻī ma laila, kahi hiki iā ʻoe ke hele a nānā, a laila hiki iā ʻoe ke hoʻohālikelike iā lākou me ka hoʻohana ʻana i ka timestamp i kēia log. Inā hele lākou e nānā ma Graylog, a laila e hoʻokaʻawale ʻia lākou e ka timestamp. E maikaʻi nā mea a pau ma laila.

Kou nīnau: Hiki ke hoʻololi ke kau manawa ma nā milliseconds.

ʻO ka pane: Hoʻokumu ʻia ka timestamp e ka API ponoʻī. ʻO kēia, ʻoiaʻiʻo, ʻo ke kiko holoʻokoʻa. Loaʻa iā mākou NTP. Hoʻopuka ka API i kahi hōʻailona manawa i loko o ka memo ponoʻī. ʻAʻole i hoʻohui ʻia e rsyslog.

Kou nīnau: ʻAʻole maopopo loa ka pilina ma waena o nā kikowaena data. I loko o ke kaʻina o ke kikowaena ʻikepili, maopopo ke ʻano o ka hōʻiliʻili ʻana a me ka hana ʻana o nā lāʻau. Pehea ka pilina ma waena o nā kikowaena ʻikepili? A i ʻole e ola ana kēlā me kēia kikowaena data i kona ola ponoʻī?

ʻO ka pane: Kokoke. Loaʻa iā mākou kēlā me kēia ʻāina i hoʻokahi kikowaena data. ʻAʻole mākou i hoʻolaha i kēia manawa, no laila ua hoʻonoho ʻia kahi ʻāina i nā kikowaena data like ʻole. No laila, ʻaʻohe pono e hoʻohui iā lākou. Aia i loko o kēlā me kēia kikowaena kahi Log Relay. He kikowaena Rsyslog kēia. ʻOiaʻiʻo, ʻelua mau mīkini hoʻokele. Hoʻonohonoho ʻia lākou ma ke ʻano like. Akā i kēia manawa, hele wale ke kaʻa i kekahi o lākou. Hoʻopaʻa ʻo ia i nā mea a pau. Loaʻa iā ia kahi pila disk inā pono. Paʻi ʻo ia i nā lāʻau a hoʻouna iā lākou i ke kikowaena data kikowaena (Singapore), kahi i make ai lākou i Graylog. A he waihona waihona ko kēlā me kēia kikowaena data. Inā nalowale ka pilina, loaʻa iā mākou nā lāʻau a pau ma laila. E noho lākou ma laila. E mālama ʻia lākou ma laila.

Kou nīnau: Loaʻa iā ʻoe nā lāʻau mai laila mai i ka wā o nā kūlana kūlohelohe?

ʻO ka pane: Hiki iā ʻoe ke hele i laila (i ka waihona waihona) a nānā.

Kou nīnau: Pehea ʻoe e nānā ai ʻaʻole e nalowale nā ​​lāʻau?

ʻO ka pane: Ke nalo maoli nei mākou iā lākou, a ke nānā nei mākou. Hoʻomaka ka nānā ʻana i hoʻokahi mahina i hala. ʻO ka waihona a nā Go API e hoʻohana ai he mau ana. Hiki iā ia ke helu i ka nui o nā manawa ʻaʻole ʻo ia i kākau i ka socket. Aia i kēia manawa aia kahi heuristic paʻakikī. Aia kahi pale ma laila. Hoʻāʻo ʻo ia e kākau i kahi memo mai ia mea i ke kumu. Inā piha ka buffer, hoʻomaka ia e hāʻule iā lākou. A helu ʻo ia i ka nui āna i hāʻule ai. Inā hoʻomaka nā helu helu ma laila, e ʻike mākou no ia mea. Ke hele mai nei lākou i prometheus, a hiki iā ʻoe ke ʻike i nā kiʻi ma Grafana. Hiki iā ʻoe ke hoʻonohonoho i nā makaʻala. ʻAʻole naʻe i maopopo i ka mea nāna lākou e hoʻouna aku.

Kou nīnau: Ma ka elasticsearch, mālama ʻoe i nā lāʻau me ka redundancy. ʻEhia kau kope?

ʻO ka pane: Hoʻokahi kope.

Kou nīnau: Hoʻokahi wale nō laina?

ʻO ka pane: ʻO kēia ka haku a me ke kope. Mālama ʻia ka ʻikepili i ka lua.

Kou nīnau: Ua hoʻololi paha ʻoe i ka nui o ka rsyslog buffer i kekahi ʻano?

ʻO ka pane: Kākau mākou i nā datagrams i kahi kumu unix maʻamau. Hoʻokomo koke kēia i ka palena o 128 kilobytes iā mākou. ʻAʻole hiki iā mākou ke kākau hou aku i loko. Ua kākau mākou i kēia i ka maʻamau. ʻO wai ka mea makemake e komo i loko o kahi waihona, kākau lākou i 128 kilobytes. ʻO nā hale waihona puke, ʻoki ʻia, a kau i ka hae i ʻoki ʻia ka leka. Loaʻa iā mākou kahi kahua kūikawā i ka maʻamau o ka memo ponoʻī, e hōʻike ana inā ua ʻoki ʻia i ka wā hoʻopaʻa ʻana a i ʻole. No laila, loaʻa iā mākou ka manawa e hahai ai i kēia manawa.

Ninau: Ke kākau nei ʻoe iā JSON i haki?

ʻO ka pane: E hoʻolei ʻia ʻo JSON i haʻihaʻi ʻia i ka wā o ka relay no ka mea nui loa ka ʻeke. A i ʻole e hoʻokuʻu ʻia ʻo Graylog, no ka mea ʻaʻole hiki iā ia ke hoʻokaʻawale iā JSON. Akā aia nā nuances ma aneʻi e pono e hoʻoponopono ʻia, a ua paʻa nui lākou i rsyslog. Ua hoʻopiha mua wau i kekahi pukana ma laila, pono e hana ʻia.

Ninau: No ke aha Kafka? Ua hoʻāʻo ʻoe iā RabbitMQ? ʻAʻole hoʻohui ʻia ʻo Graylog ma lalo o ia mau ukana?

ʻO ka pane: ʻAʻole hiki ke hana me Graylog. A ke hele nei ʻo Graylog. He pilikia maoli no ia. He ʻano mea ʻo ia. A, ʻoiaʻiʻo, ʻaʻole pono ia. Makemake au e kākau pololei mai rsyslog i elasticsearch a laila nānā iā Kibana. Akā pono mākou e hoʻoponopono i ka pilikia me nā kiaʻi palekana. He ʻano ʻokoʻa kēia o kā mākou hoʻomohala ʻana i ka wā e kiola aku ai mākou iā Graylog a hoʻohana iā Kibana. ʻAʻole kūpono ka Logstash. No ka mea hiki iaʻu ke hana like me rsyslog. A loaʻa iā ia kahi module e kākau ai i ka elasticsearch. Me Graylog ke ho'āʻo nei mākou e ola. Ua hoʻololi iki mākou. Akā, aia nō kahi wahi no ka hoʻomaikaʻi ʻana.

No Kafka. ʻO ia ke ʻano o ka mōʻaukala. I koʻu hiki ʻana aku, aia nō i laila, a ke kākau ʻia nei nā lāʻau iā ia. Hoʻokiʻekiʻe wale mākou i kā mākou hui a hoʻoneʻe i nā lāʻau i loko. Mālama mākou iā ia, ʻike mākou i kona manaʻo. ʻO RabbitMQ... pilikia mākou me RabbitMQ. A ke ulu nei ʻo RabbitMQ no mākou. Loaʻa iā mākou i ka hana ʻana, a aia nā pilikia me ia. I kēia manawa, ma mua o ke kūʻai ʻana, e hoʻokaʻawale ʻia ʻo ia, a hoʻomaka ʻo ia e hana maʻamau. Akā ma mua o kēlā, ʻaʻole wau i mākaukau e hoʻokuʻu iā ia i ka hana. Aia kekahi mea hou aku. Hiki iā Graylog ke heluhelu i ka mana AMQP 0.9 a hiki iā rsyslog ke kākau i ka mana AMQP 1.0. A ʻaʻohe mea hoʻokahi e hiki ke hana i nā mea ʻelua ma waena. Aia kekahi a i ʻole kekahi. No laila ʻo Kafka wale nō i kēia manawa. Akā aia kekahi mau nuances. No ka mea, hiki i ka omkafka o ka mana o rsyslog a mākou e hoʻohana ai ke nalo i ka pahu memo holoʻokoʻa i kāʻili ʻia mai ka rsyslog. ʻOiai mākou e hoʻomanawanui.

Ninau: Ke hoʻohana nei ʻoe iā Kafka no ka mea ua loaʻa iā ʻoe? ʻAʻole hoʻohana ʻia no kekahi kumu ʻē aʻe?

ʻO ka pane: Kafka, i hoʻohana ʻia e ka hui ʻIke ʻIkepili. He papahana kaʻawale loa kēia, ʻaʻole hiki iaʻu ke ʻōlelo i kekahi mea. ʻaʻole maopopo iaʻu. Ua mālama ʻia ʻo ia e ka hui ʻIke ʻIkepili. I ka hoʻomaka ʻana o nā lāʻau, ua hoʻoholo lākou e hoʻohana, i ʻole e kau i kā lākou iho. I kēia manawa ua hōʻano hou mākou iā Graylog, a ua nalowale mākou i ka hoʻohālikelike, no ka mea aia kahi mana kahiko o Kafka. Pono mākou e hana i kā mākou iho. I ka manawa like, ua kāpae mākou i kēia mau kumuhana ʻehā no kēlā me kēia API. Hana mākou i hoʻokahi ākea ākea no nā mea ola a pau, hoʻokahi ākea ākea ākea no nā hoʻokūkū āpau a pana mākou i nā mea āpau ma laila. Hoʻopili like ʻo Graylog i kēia mau mea a pau.

Ninau: No ke aha mākou e makemake ai i kēia shamanism me nā kumu? Ua ho'āʻo anei ʻoe e hoʻohana i ka mea hoʻokele log syslog no nā ipu.

ʻO ka pane: I ka manawa a mākou i nīnau ai i kēia nīnau, ua pilikia ko mākou pilina me ka docker. ʻO ia ka docker 1.0 a i ʻole 0.9. He ʻano ʻē ʻo Docker ponoʻī. ʻO ka lua, inā hoʻokomo pū ʻoe i nā lāʻau i loko ... he kānalua koʻu i hoʻopaʻa ʻole ʻia e hele i nā lāʻau āpau ma o ia iho, ma o ka docker daemon. Inā loaʻa iā mākou hoʻokahi API e pupule, a laila e holo ke koena o nā API i ka ʻoiaʻiʻo ʻaʻole hiki iā lākou ke hoʻouna iā stdout a me stderr. ʻAʻole maopopo iaʻu kahi e alakaʻi ai kēia. Loaʻa iaʻu kahi kānalua i ka pae o ka manaʻo ʻaʻole pono e hoʻohana i ka mea hoʻokele syslog docker ma kēia wahi. Loaʻa i kā mākou keʻena hoʻāʻo hana kāna pūʻulu Graylog me nā lāʻau. Hoʻohana lākou i nā mea hoʻokele docker log a maikaʻi nā mea āpau ma laila. Akā kākau koke lākou iā GELF iā Graylog. I ka manawa a mākou i hoʻomaka ai i kēia mau mea, pono mākou e hana wale. Ma hope paha, ke hele mai kekahi a ʻōlelo mai ua hana maʻamau ia no hoʻokahi haneli mau makahiki, e hoʻāʻo mākou.

Ninau: Hāʻawi ʻoe ma waena o nā kikowaena data me ka rsyslog. No ke aha ʻaʻole ma Kafka?

ʻO ka pane: Hana mākou i kēia, a ʻo ia ke ʻano maoli. No nā kumu ʻelua. Inā ua make loa ke kahawai, a laila, ʻaʻole e piʻi kā mākou mau lāʻau āpau, ʻoiai ma ke ʻano i hoʻopili ʻia, ʻaʻole e piʻi i luna. A ʻo kafka hiki iā lākou ke nalo wale i ke kaʻina hana. Ma kēia ala, hoʻopau mākou i ka pipili ʻana o kēia mau lāʻau. Ke hoʻohana wale nei mākou iā Kafka i kēia hihia. Inā loaʻa iā mākou kahi kahawai maikaʻi a makemake mākou e hoʻokuʻu, a laila hoʻohana mākou i kā lākou rsyslog. Akā i ka ʻoiaʻiʻo, hiki iā ʻoe ke hoʻonohonoho iā ia e hāʻule i ka mea i loaʻa ʻole. I kēia manawa ke hoʻohana wale nei mākou i ka hāʻawi ʻana i ka rsyslog ma kahi, ma kahi o Kafka.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka