Kif Tissorvelja l-Kontenituri Docker bl-Għodda ta 'Monitoraġġ Zabbix
Docker huwa bla dubju wieħed mill-għodod DevOps l-aktar għeżież li jissimplifikaw l-iżvilupp, l-iskjerament u t-tbaħħir ta 'applikazzjonijiet ġewwa kontenituri.
Il-kunċett ta 'kontejners jinvolvi lieva immaġini kontenitur. Dawn huma pakketti eżekutibbli żgħar, ħfief u waħedhom li jinkludu dak kollu li huwa meħtieġ biex titħaddem applikazzjoni inkluż il-kodiċi tas-sors, il-libreriji u d-dipendenzi, u l-fajls tal-konfigurazzjoni.
Billi tagħmel hekk, l-applikazzjoni tista 'taħdem fi kważi kull ambjent tal-kompjuter; infrastruttura tradizzjonali tal-IT, sħaba, u numru kbir ta 'togħmiet Linux/UNIX.
Il-monitoraġġ tal-kontenituri jgħin lit-timijiet tal-operat jidentifikaw il-kwistjonijiet sottostanti u jsolvuhom fil-ħin. Il-monitoraġġ tal-kontejners jinkludi l-qbid ta’ metriċi bażiċi bħal zkuk f’ħin reali li huma ta’ għajnuna fid-debugging u li javża lit-tim tal-IT meta għandu jiżdied.
Zabbix hija għodda popolari għall-monitoraġġ tal-infrastruttura tal-IT li żżomm għajnejk fuq kważi kull element tal-ambjent tiegħek inkluż tagħmir fiżiku bħal servers u tagħmir tan-netwerk bħal routers u swiċċijiet. Jista 'wkoll jimmonitorja applikazzjonijiet, servizzi, u databases.
F'din il-gwida, ser nuruk kif tista' tissorvelja l-kontenituri Docker billi tuża l-għodda ta 'monitoraġġ Zabbix fil-Linux.
Hawn dak li għandek bżonn qabel tibda:
L-ewwel nett, kun żgur li għandek żewġ nodi - L-ewwel node huwa s-server Zabbix. Dan huwa n-nodu li minnu se nissorveljaw is-server Docker remot. Għandna artiklu dwar:
- Kif tinstalla Zabbix fuq Rocky Linux u AlmaLinux
- Kif Tinstalla Zabbix Monitoring Tool fuq Debian 11/10
- Kif Tinstalla Zabbix fuq RHEL 8
- Kif tinstalla Zabbix fuq Ubuntu
It-tieni node huwa s-server Docker li fuqu huwa installat Docker. Dan huwa n-nodu minn fejn se nħaddmu l-kontenituri Docker u nissorveljaw l-attività tal-kontejners.
- Kif tinstalla Docker fuq Rocky Linux u AlmaLinux
- Kif tinstalla u tuża Docker fuq Ubuntu 20.04
- Kif tinstalla Docker f'CentOS u RHEL 8/7
Sussegwentement, kun żgur li għandek aċċess SSH għan-node tas-server Docker tiegħek b'utent sudo diġà kkonfigurat.
Bil-konfigurazzjoni tiegħek f'postha, issa tista' ddawwar il-kmiem tiegħek!
Pass 1: Installa Zabbix-Agent fil-Linux
Biex timmonitorja l-kontenituri Docker fuq is-server remot, għandek bżonn tinstalla aġent Zabbix, li huwa aġent ta 'monitoraġġ li huwa skjerat fuq nodu fil-mira biex jimmonitorja b'mod attiv il-metriċi tas-sistema u applikazzjonijiet oħra.
L-ewwel, għandek bżonn tinstalla r-repożitorju Zabbix fuq in-node 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
Pass 2: Ikkonfigura Zabbix-Agent fil-Linux
B'mod awtomatiku, l-aġent Zabbix huwa ssettjat biex jibgħat metriċi lis-server Zabbix fuq l-istess host li huwa installat. Peress li l-għan tagħna huwa li nissorveljaw il-kontenituri docker fuq is-server remot, huma meħtieġa xi konfigurazzjonijiet addizzjonali.
Għalhekk, aċċess għall-fajl tal-konfigurazzjoni tal-aġent Zabbix.
$ sudo vim /etc/zabbix/zabbix_agent2.conf
Il-fajl tal-konfigurazzjoni fih settings li jispeċifikaw l-indirizz fejn jintbagħtu l-metriċi, il-port użat għall-konnessjonijiet u ħafna aktar. Fil-biċċa l-kbira, is-settings default jaħdmu tajjeb.
Biex tikkonfigura l-aġent Zabbix biex jibgħat metriċi lis-server Zabbix, sib id-direttiva li hija kkonfigurata biex tibgħat metriċi lill-indirizz loopback, jew sempliċiment, l-istess sistema ospitanti.
Server=127.0.0.1
Issettja l-indirizz biex jirrifletti l-indirizz tas-server Zabbix
Server=zabbix-server-IP
Barra minn hekk, innaviga lejn it-taqsima 'Verifiki attivi' u ibdel id-direttiva biex tipponta lejn l-indirizz IP tas-server Zabbix.
ServerActive=zabbix-server-IP
Kun żgur li taġġusta wkoll l-isem tal-host tas-server Docker kif xieraq. L-isem tal-host tas-server Docker tiegħi huwa Ubuntu20.
Hostname=Ubuntu20
Imbagħad issalva l-bidliet u oħroġ mill-fajl tal-konfigurazzjoni Zabbix.
Biex l-aġent Zabbix iżomm għajnejh fuq il-kontenituri Docker, trid iżżid l-utent Zabbix, li huwa installat b'mod awtomatiku, mal-grupp docker.
$ sudo usermod -aG docker zabbix
Biex tapplika l-bidliet li saru fil-fajl tal-konfigurazzjoni, ibda mill-ġdid is-servizz Zabbix-agent u ppermettih jibda mal-istartjar tas-sistema.
$ sudo systemctl restart zabbix-agent2 $ sudo systemctl enable zabbix-agent2
Ikkonferma l-istatus tat-tħaddim tal-aġent Zabbix kif ġej.
$ sudo systemctl status zabbix-agent2
L-aġent Zabbix jisma fuq il-port 10050. Jekk għandek firewalld taħdem, ikkunsidra li tiftaħ il-port kif ġej.
----------- 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
Kbir! Issa ninsabu fin-nofs. L-aġent Zabbix issa jista 'jibgħat il-metriċi tal-kontejners Docker lis-server Zabbix.
Fil-pass li jmiss, se nżidu s-server Docker mal-interface tal-web Zabbix u nissorveljaw il-kontenituri Docker.
Pass 3: Żid id-Docker ma' Zabbix Server għall-Monitoraġġ
Biex tissorvelja host remot, trid iżżidha mad-dashboard tas-server Zabbix permezz ta 'browser. Zabbix jipprovdi numru kbir ta’ mudelli għal diversi servizzi u applikazzjonijiet. Aħna se norbtu l-mudell xieraq mal-host Docker biex jissorveljaw speċifikament il-kontenituri. Imma l-ewwel, aċċessa għall-paġna tal-login tas-server Zabbix.
http://zabbix-server-ip/zabbix
Ladarba tkun illoggjat, innaviga lejn il-bar tal-lemin u kklikkja fuq 'Konfigurazzjoni' imbagħad 'Ospiti'.
Fir-rokna ta’ fuq tal-lemin, ikklikkja fuq ‘Oħloq host’.
Imla d-dettalji tas-server Docker bħall-hostname u l-isem viżibbli. Għall-Gruppi, Ittajpja ‘Gruppi Docker’ (kull host irid ikun assoċjat ma’ grupp).
Taħt it-tikketta ‘Interfaces’ ikklikkja fuq ‘Add’ u fil-menu li jidher agħżel ‘Agent’.
Sussegwentement, imla l-indirizz IP privat tas-server Docker u żgura li l-port ikun issettjat għal 10050.
Sussegwentement, ikklikkja fuq it-tab Mudelli, u fit-taqsima 'Link mudelli ġodda', speċifika 'Docker by Zabbix agent 2'. Imbagħad ikklikkja l-buttuna ‘Żid’.
Meta tikklikkja l-buttuna Żid, il-host Docker remot jiġi miżjud awtomatikament kif indikat.
F'dan il-punt, is-server Zabbix issa qed jimmonitorja s-server Docker tiegħek. Fil-pass li jmiss, se niskjeraw kontenitur u niċċekkjaw liema metriċi jistgħu jiġu mmonitorjati.
Pass 4: Monitoraġġ Docker Metrics fil Zabbix Monitoraġġ
Biex nibdew nissorveljaw il-metriċi Docker, ser inniedu kontenitur tat-test. Allura, lura lejn is-server Docker tiegħek u tniedi kontenitur.
F'dan l-eżempju, se niġbdu immaġni ta 'kontenitur Ubuntu u noħolqu kontenitur imsejjaħ docker_test_container. Imbagħad se niksbu aċċess għall-qoxra billi tuża l-għażla -it
. Il-kmand kollu għall-operazzjonijiet huwa kif ġej.
$ sudo docker run --name docker_test_container -it ubuntu bash
Tista 'tipprova xi ħaġa ambizzjuża bħall-installazzjoni ta' pakketti ta 'softwer bħal Apache jew MariaDB sabiex tiġġenera xi metriċi bħall-utilizzazzjoni tas-CPU u t-traffiku tan-netwerk.
Issa erġa' lura għad-dashboard tas-server Zabbix. Ikklikkja fuq ‘Monitoraġġ’ imbagħad ‘Hosts’. Ikklikkja fuq l-isem tas-server Docker tiegħek u fl-għażla tal-menu li tidher, agħżel 'Latest data'.
Wara ftit minuti mill-iskjerament tal-kontenitur, is-server Zabbix se jiskopri l-kontenitur u jibda jimla xi statistika.
Tista 'wkoll tara l-grafiċi tal-metriċi varji tal-kontejners billi tikklikkja fuq l-għażliet tal-'grafiċi' tas-server Docker fuq il-paġna 'Hosts'. Hawn taħt tista 'tara l-metriċi tal-użu tas-CPU & tal-Memorja.
Biex tissimula l-ħabta tal-kontejner, aħna se noħorġu għall-għarrieda mill-kontenitur billi nħaddmu l-kmand hawn taħt fil-qoxra tal-kontenitur.
# exit 2
Dan jimplika li tterminajna l-kontenitur b'kodiċi ta 'żball ta' 2. Dan huwa rreġistrat fil-metadejta tal-kontenitur. Biex tara t-twissija, innaviga lejn l-istrixxa tal-ġenb tax-xellug u kklikkja fuq ‘Monitoraġġ’ imbagħad ‘Dashboard’.
It-twissija tidher hawn taħt.
Biex tirrettifika l-iżball, sempliċement ibda l-kontenitur mill-ġdid.
$ sudo docker start docker_test_container
U dan iwassalna għall-aħħar ta 'din il-gwida. Imxijniek permezz ta’ proċedura pass pass ta’ kif tista’ Tissorvelja l-kontenituri Docker billi tuża l-għodda ta’ monitoraġġ Zabbix.