Otu esi eji ngwa nlekota Zabbix nyochaa igbe Docker


Docker bụ ihe ịrụ ụka adịghị ya na otu n'ime ngwaọrụ DevOps kachasị ewu ewu nke na-eme ka mmepe, mbupu na mbupu ngwa n'ime arịa.

Echiche nke containerization gụnyere leveraging oyiyi akpa. Ndị a bụ ngwungwu pere mpe, dị arọ na nke kwụ ọtọ nke gụnyere ihe niile achọrọ iji mee ngwa gụnyere koodu isi mmalite, ọba akwụkwọ na ịdabere na faịlụ nhazi.

Site n'ime nke a, ngwa nwere ike na-agba ọsọ na ihe fọrọ nke nta ka ọ bụrụ ebe ọ bụla kọmputa; akụrụngwa IT ọdịnala, igwe ojii na ọtụtụ ụtọ Linux/UNIX.

Igwe nleba anya na-enyere ndị otu na-arụ ọrụ aka ịchọpụta nsogbu ndị dị n'okpuru wee dozie ha n'oge. Nlebanya akpa na-agụnye ịdekọ metrik ndị bụ isi dị ka ndekọ oge dị adị nke na-enyere aka n'ịrụgharị na ime ka ndị otu IT mara mgbe ha ga-ebuli elu.

Zabbix bụ ngwá ọrụ nlekota akụrụngwa IT na-ewu ewu nke na-eleba anya na ihe fọrọ nke nta ka ọ bụrụ akụkụ ọ bụla nke gburugburu ebe obibi gị gụnyere ngwaọrụ anụ ahụ dị ka sava na ngwaọrụ netwọk dị ka ndị na-anya ụgbọ elu na ndị na-atụgharị. Ọ nwekwara ike nyochaa ngwa, ọrụ, na ọdụ data.

N'ime ntuziaka a, anyị ga-egosi gị otu ị nwere ike isi nyochaa igbe Docker site na iji ngwaọrụ nlekota Zabbix na Linux.

Nke a bụ ihe ịchọrọ tupu ịmalite:

Nke mbụ, hụ na ị nwere ọnụ abụọ - ọnụ ụzọ mbụ bụ sava Zabbix. Nke a bụ ọnụ ebe anyị ga-enyocha sava Docker dịpụrụ adịpụ. Anyị nwere akụkọ na:

  • Otu esi etinye Zabbix na Rocky Linux na AlmaLinux
  • Otu esi etinye ngwa nlekota Zabbix na Debian 11/10
  • Otu esi etinye Zabbix na RHEL 8
  • Otu esi etinye Zabbix na Ubuntu

Ọnụ nke abụọ bụ sava Docker nke etinyere Docker na ya. Nke a bụ ọnụ ebe anyị ga-eji akpa Docker wee nyochaa ọrụ akpa.

  • Otu esi etinye Docker na Rocky Linux na AlmaLinux
  • Otu esi etinye ma jiri Docker na Ubuntu 20.04
  • Otu esi etinye Docker na CentOS na RHEL 8/7

Na-esote, hụ na ị nwere ohere SSH na oghere sava Docker gị na onye ọrụ sudo ahaziri.

Site na nhazi gị, ị nwere ike tụgharịa aka gị ugbu a!

Kwụpụ 1: Wụnye Zabbix-Agent na Linux

Iji nyochaa akpa Docker na sava dịpụrụ adịpụ, ịkwesịrị ịwụnye onye nnọchi anyaZabbix, nke bụ onye na-ahụ maka nleba anya nke etinyere na oghere ebumnuche iji nyochaa usoro metrik na ngwa ndị ọzọ.

Nke mbụ, ịkwesịrị ịwụnye ebe nchekwa Zabbix na oghere Docker.

----------- On Ubuntu 20.04 ----------- 
$ sudo wget https://repo.zabbix.com/zabbix/5.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.4-1+ubuntu20.04_all.deb
$ sudo dpkg -i zabbix-release_5.4-1+ubuntu20.04_all.deb
$ sudo apt update
$ sudo apt install zabbix-agent2

----------- On RHEL-based Distro ----------- 
$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/8/x86_64/zabbix-release-5.4-1.el8.noarch.rpm
$ sudo dnf update
$ sudo dnf install zabbix-agent

----------- On Debian 11 ----------- 
$ sudo wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1%2Bdebian11_all.deb
$ sudo dpkg -i zabbix-release_5.4-1%2Bdebian11_all.deb
$ sudo apt update
$ sudo apt install zabbix-agent2

----------- On Debian 10 ----------- 
$ sudo wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1%2Bdebian10_all.deb
$ sudo dpkg -i zabbix-release_5.4-1%2Bdebian10_all.deb
$ sudo apt update
$ sudo apt install zabbix-agent2

Kwụpụ 2: Hazie Zabbix-Agent na Linux

Site na ndabara, onye ọrụ Zabbix ka atọrọ ibuga metrik gaa na sava Zabbix n'otu nnabata etinyere ya. Ebe ebumnobi anyị bụ inyocha arịa docker na sava dịpụrụ adịpụ, achọrọ ụfọdụ nhazi ndị ọzọ.

Ya mere, nweta faịlụ nhazi onye ọrụ Zabbix.

$ sudo vim /etc/zabbix/zabbix_agent2.conf

Faịlụ nhazi ahụ nwere ntọala na-akọwapụta adreesị ebe ezigara metrics, ọdụ ụgbọ mmiri ejiri maka njikọ yana ọtụtụ ihe ndị ọzọ. Maka ọtụtụ akụkụ, ntọala ndabara ga-arụ ọrụ nke ọma.

Iji hazie onye nnọchi anya Zabbix ka iziga metrik na sava Zabbix, chọta ntuziaka nke ahaziri iji bubata metrik na adreesị loopback, ma ọ bụ tinye naanị, otu sistemụ nnabata ahụ.

Server=127.0.0.1

Tọọ adreesị ka ọ gosipụta adreesị nkesa Zabbix

Server=zabbix-server-IP

Na mgbakwunye, gaa na ngalaba 'Nleba anya na-arụ ọrụ' wee gbanwee ntuziaka iji rụtụ aka na adreesị IP nke sava Zabbix.

ServerActive=zabbix-server-IP

Jide n'aka na igbanwekwara aha nnabata nke ihe nkesa Docker otu a. Aha nnabata nke ihe nkesa Docker m bụ Ubuntu20.

Hostname=Ubuntu20

Wee chekwaa mgbanwe ndị ahụ wee pụọ na faịlụ nhazi Zabbix.

Maka onye ọrụ Zabbix ka ọ lekwasị anya na arịa Docker, ịkwesịrị ịgbakwunye onye ọrụ Zabbix, nke arụnyere na ndabara, na otu docker.

$ sudo usermod -aG docker zabbix

Iji tinye mgbanwe ndị emere na faịlụ nhazi, malitegharịa ọrụ Zabbix-agent ma mee ka ọ malite na mmalite usoro.

$ sudo systemctl restart zabbix-agent2
$ sudo systemctl enable zabbix-agent2

Kwenye ọkwa na-agba ọsọ nke onye nnọchi anya Zabbix dị ka ndị a.

$ sudo systemctl status zabbix-agent2

Onye ọrụ Zabbix na-ege ntị na ọdụ ụgbọ mmiri 10050. Ọ bụrụ na ị nwere firewalld na-agba ọsọ, tụlee imepe ọdụ ụgbọ mmiri dị ka ndị a.

----------- On UFW Firewall ----------- 
$ sudo ufw allow 10050/tcp
$ sudo ufw reload

----------- On Firewalld ----------- 
$ sudo firewall-cmd --add-port=10050/tcp --permanent
$ sudo firewall-cmd --reload

Nnukwu! Anyị nọ ugbu a n'ọkara akara. Onye ọrụ Zabbix nwere ike ibuga metrics akpa Docker na sava Zabbix.

Na nzọụkwụ na-esote, anyị ga-agbakwunye ihe nkesa Docker na interface weebụ Zabbix ma nyochaa akpa Docker.

Kwụpụ 3: Tinye Docker na Zabbix Server maka nlekota oru

Iji nyochaa onye ọbịa dịpụrụ adịpụ, ịkwesịrị ịgbakwunye ya na dashboard nke sava Zabbix site na ihe nchọgharị. Zabbix na-enye ndebiri ndebiri maka ọrụ na ngwa dị iche iche. Anyị ga-ejikọta template kwesịrị ekwesị na onye ọrụ Docker iji nyochaa arịa kpọmkwem. Mana nke mbụ, nweta ibe nbanye nke sava Zabbix.

http://zabbix-server-ip/zabbix

Ozugbo ị banyere, gaa n'akụkụ aka nri wee pịa 'Configuration' wee 'Ndị ọbịa'.

N'akụkụ aka nri aka nri, pịa 'Mepụta onye ọbịa'.

Dejupụta nkọwa nke ihe nkesa Docker dị ka aha nnabata & aha a na-ahụ anya. Maka otu, Pịnye na 'Docker Groups' (onye ọ bụla ga-ejikọta ya na otu).

N'okpuru akara 'Interfaces' pịa 'Tinye' na menu nke gosipụtara họrọ 'Agent'.

Na-esote, dejupụta adreesị IP nke ihe nkesa Docker wee hụ na edobere ọdụ ụgbọ mmiri na 10050.

Na-esote, pịa taabụ Templates, na na ngalaba 'njikọ ọhụrụ ndebiri', kọwaa 'Docker site Zabbix agent 2'. Wee pịa bọtịnụ 'Tinye'.

Mgbe ịpịrị bọtịnụ Tinye, a ga-agbakwunye onye ọbịa Docker dịpụrụ adịpụ na-akpaghị aka dị ka egosiri.

N'oge a, ihe nkesa Zabbix na-enyocha ihe nkesa Docker gị ugbu a. N'ọzọ na-esote, anyị ga-ebunye akpa wee chọpụta nke metrik enwere ike nyochaa.

Kwụpụ 4: Nyochaa Metrics Docker na nlekota oru Zabbix

Iji malite nlekota Docker metrics, anyị ga-ebupụta akpa ule. Yabụ, laghachi na sava Docker gị wee malite akpa.

N'ihe atụ a, anyị ga-adọta ihe oyiyi akpa Ubuntu wee mepụta akpa a na-akpọ docker_test_container. Anyị ga-enweta ohere shei site na iji -it nhọrọ. Iwu niile maka arụmọrụ bụ ndị a.

$ sudo docker run --name docker_test_container -it ubuntu bash

Ị nwere ike ịnwale ihe dị oke egwu dị ka ịwụnye ngwugwu ngwanrọ dị ka Apache ma ọ bụ MariaDB iji mepụta ụfọdụ metrik dị ka iji CPU na okporo ụzọ netwọk.

Ugbu a laghachi na dashboard sava Zabbix. Pịa na 'Nleba anya' wee 'Ndị ọbịa'. Pịa aha ihe nkesa Docker gị yana na nhọrọ menu gosipụtara, họrọ 'data kacha ọhụrụ'.

Mgbe nkeji ole na ole nke ibugharị akpa ahụ gasịrị, ihe nkesa Zabbix ga-achọpụta akpa ahụ wee malite ịmepụta ụfọdụ ọnụ ọgụgụ.

Ị nwekwara ike ịlele eserese nke metrik akpa dị iche iche site na ịpị nhọrọ 'graphs' nke sava Docker na ibe 'Ndị ọbịa'. N'okpuru, ị nwere ike ịhụ metrik ojiji CPU & ebe nchekwa.

Iji mee ka mkpọka akpa ahụ dị, anyị ga-apụ na akpa ahụ na-atụghị anya ya site n'itinye iwu dị n'okpuru na shei akpa ahụ.

# exit 2

Nke a pụtara na anyị ejirila koodu njehie 2 kwụsịchaa akpa ahụ. A na-edekọ nke a n'ime metadata nke akpa ahụ. Iji lelee njikere, gaa n'akụkụ aka ekpe wee pịa 'Nleba anya' wee 'Dashboard'.

E gosipụtara ọkwa ahụ n'okpuru.

Iji mezie njehie ahụ, naanị malite akpa ahụ ọzọ.

$ sudo docker start docker_test_container 

Nke a na-edugakwa anyị na njedebe nke ntuziaka a. Anyị ejegharịla gị site na usoro nzọụkwụ nke otu ị ga-esi nyochaa arịa Docker site na iji ngwaọrụ nlekota Zabbix.