Monit - Għodda għall-Immaniġġjar u l-Monitoraġġ tas-Sistemi Linux
Monit huwa sors miftuħ b'xejn u għodda utli ħafna li awtomatikament timmonitorja u timmaniġġja proċessi, fajls, direttorji, checksums, permessi, sistemi ta' fajls, u servizzi bħal Apache, Nginx, MySQL, FTP, SSH, SMTP, eċċ f'UNIX/Linux sistemi bbażati u jipprovdi funzjonalità ta’ monitoraġġ eċċellenti u ta’ għajnuna lill-amministraturi tas-sistema.
Il-monit għandu interface tal-web faċli għall-utent fejn tista' tara direttament l-istatus tas-sistema u twaqqaf il-proċessi billi tuża web server HTTP(S) nattiv jew permezz tal-interface tal-linja tal-kmand. Dan ifisser li jrid ikollok web server bħal Apache jew Nginx installat fis-sistema tiegħek biex taċċessa u tara l-interface tal-web tal-monit.
[ Tista 'tħobb ukoll: 20 Għodda tal-Linja ta' Kmand biex Tissorvelja l-Prestazzjoni tal-Linux ]
Monit għandu l-abbiltà li jibda proċess jekk ma jkunx qed jaħdem, jerġa 'jibda proċess jekk ma jirrispondix, u jwaqqaf proċess jekk juża riżorsi għoljin. Barra minn hekk, tista 'wkoll tuża Monit biex tissorvelja fajls, direttorji, u sistemi ta' fajls għal bidliet, bidliet ta 'checksum, bidliet fid-daqs tal-fajl, jew bidliet ta' timestamp.
B'Monit, tista' tissorvelja l-port TCP/IP tal-hosts remoti, il-protokolli tas-server, u l-ping. Monit iżomm il-log file tiegħu stess u javża dwar kwalunkwe kundizzjoni ta 'żball kritiku u status ta' rkupru.
Dan l-artikolu huwa miktub biex jiddeskrivi gwida sempliċi dwar l-installazzjoni u l-konfigurazzjoni ta 'Monit fuq distribuzzjonijiet Linux ibbażati fuq Debian.
Pass 1: Installazzjoni ta 'Monit fil-Linux
B'mod awtomatiku, il-programm ta 'monitoraġġ Monit mhuwiex disponibbli mir-repożitorji bażi tas-sistema default, għandek bżonn iżżid u tippermetti repożitorju epel ta' parti terza biex tinstalla l-pakkett monit taħt distribuzzjonijiet ibbażati fuq RHEL bħal CentOS, Rocky Linux, u AlmaLinux.
--------- On RHEL 9 based Systems --------- # dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm --------- On RHEL 8 based Systems --------- # dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm --------- On RHEL 7 based Systems --------- # yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Ladarba tkun żidt ir-repożitorju epel, installa l-pakkett Monit billi tħaddem il-kmand yum li ġej.
# yum install monit OR # dnf install monit [On Fedora Linux]
Għal Ubuntu/Debian/Linux Mint l-utent jista 'faċilment jinstalla billi juża l-kmand apt kif muri.
$ sudo apt install monit
Pass 2: Konfigurazzjoni ta 'Monit fil-Linux
Monit huwa faċli ħafna biex jiġi kkonfigurat, fil-fatt, il-fajls tal-konfigurazzjoni huma maħluqa biex jinqraw faċilment u jagħmluhom aktar faċli biex jifhmuhom l-utenti. Hija mfassla biex timmonitorja s-servizzi li qed jaħdmu kull 2 minuti u żżomm ir-zkuk f'/var/log/monit.
Monit għandu interface tal-web li jaħdem fuq il-port 2812 billi juża web server. Biex tippermetti l-interface tal-web trid tagħmel bidliet fil-fajl tal-konfigurazzjoni tal-monit.
Il-fajl tal-konfigurazzjoni prinċipali tal-monit li jinsab f'/etc/monit.conf taħt (RedHat/CentOS/Fedora) u /etc/monit/monitrc fajl għal (Ubuntu/Debian/Linux Mint).
Iftaħ dan il-fajl billi tuża l-editur tal-għażla tiegħek.
# vi /etc/monitrc Or $ sudo nano /etc/monit/monitrc
Sussegwentement, neħħi l-kumment tat-taqsima li ġejja u żid l-indirizz IP jew l-isem tad-dominju tas-server tiegħek, ħalli lil xi ħadd jikkonnettja u jibdel l-utent u l-password tal-monit jew tista 'tuża dawk default.
set httpd port 2812 and use address 0.0.0.0 # only accept connections from localhost allow 0.0.0.0/0 # allow localhost to connect to the server and allow admin:monit # require user 'admin' with password 'monit' allow @monit # allow users of group 'monit' to connect (rw) allow @users readonly # allow users of group 'users' to connect readonly
Ladarba tkun ikkonfigurajha, għandek bżonn tibda, tattiva u tivverifika s-servizz ta 'monit biex terġa' tgħabbi l-issettjar tal-konfigurazzjoni l-ġdid.
# systemctl start monit # systemctl enable monit # systemctl status monit
Issa, inti tkun tista 'taċċessa l-interface tal-web tal-monit billi tinnaviga għall-URLs li ġejjin.
http://localhost:2812 OR http://ip-address:2812 Or http://example.com:2812
Imbagħad daħħal l-isem tal-utent bħala admin u l-password bħala monit. Għandek tikseb skrin simili għal dak ta 'hawn taħt.
Pass 3: Żieda tas-Servizzi tal-Linux għall-Monit Monitoring
Ladarba l-interfaces tal-web tal-monit ikunu stabbiliti b'mod korrett, ibda żżid il-programmi li trid tissorvelja fil-/etc/monitrc taħt (RedHat/CentOS/Fedora) u /etc/monit/monitrc fajl għal (Ubuntu/Debian/Linux Mint) fil-qiegħ.
Dawn li ġejjin huma xi eżempji ta’ konfigurazzjoni utli għall-monit, li jistgħu jkunu ta’ għajnuna kbira biex tara kif qed jaħdem servizz, fejn iżomm il-profil tiegħu, kif tibda u twaqqaf servizz, eċċ.
check process httpd with pidfile /var/run/httpd.pid group apache start program = "/usr/bin/systemctl httpd start" stop program = "/usr/bin/systemctl httpd stop" if failed host 127.0.0.1 port 80 protocol http then restart if 5 restarts within 5 cycles then timeout
check process apache with pidfile /run/apache2.pid start program = "/usr/bin/systemctl apache2 start" with timeout 60 seconds stop program = "/usr/bin/systemctl apache2 stop"
check process nginx with pidfile /var/run/nginx.pid start program = "/usr/bin/systemctl nginx start" stop program = "/usr/bin/systemctl nginx stop"
check process mysqld with pidfile /var/run/mysqld/mysqld.pid group mysql start program = "/usr/bin/systemctl mysqld start" stop program = "/usr/bin/systemctl mysqld stop" if failed host 127.0.0.1 port 3306 then restart if 5 restarts within 5 cycles then timeout
check process sshd with pidfile /var/run/sshd.pid start program "/usr/bin/systemctl sshd start" stop program "/usr/bin/systemctl sshd stop" if failed host 127.0.0.1 port 22 protocol ssh then restart if 5 restarts within 5 cycles then timeout
Ladarba tkun ikkonfigurajt il-programmi kollha għall-monitoraġġ, iċċekkja s-sintassi tal-monit għal żbalji. Jekk jinstabu xi żbalji jirranġawhom, mhux daqshekk diffiċli biex insemmu dak li mar ħażin. Meta tirċievi messaġġ bħal Control file syntax OK, jew jekk ma tara l-ebda żball, tista 'tipproċedi 'l quddiem.
# monit -t Or $ sudo monit -t
Wara li tiffissa l-iżbalji kollha possibbli, tista 'ttajpja l-kmand li ġej biex tibda s-servizz tal-monit.
# systemctl monit restart OR $ sudo systemctl monit restart
Dan huwa kif jidher monit wara li żżid is-servizzi kollha tal-Linux għall-monitoraġġ.