Jinsi ya Kusakinisha na Kusanidi Programu ya Monit (Mchakato wa Linux na Ufuatiliaji wa Huduma).


Monit ni chanzo wazi cha bure na zana muhimu sana ambayo hufuatilia na kudhibiti kiotomati mchakato wa seva, faili, saraka, hesabu, ruhusa, mifumo ya faili na huduma kama Apache, Nginx, MySQL, FTP, SSH, Sendmail na kadhalika katika UNIX/Linux msingi. mifumo na hutoa utendaji bora wa ufuatiliaji na usaidizi kwa wasimamizi wa mfumo.

Monit ina kiolesura cha wavuti ambacho unaweza kuona moja kwa moja hali ya mfumo na kusanidi michakato kwa kutumia seva asili ya HTTP(S) au kupitia kiolesura cha mstari amri. Hii inamaanisha lazima uwe na seva ya wavuti kama Apache au Nginx iliyosakinishwa kwenye mfumo wako ili kufikia na kutazama kiolesura cha wavuti cha monit.

Monit ina uwezo wa kuanzisha mchakato ikiwa haifanyiki, anzisha upya mchakato ikiwa haujibu na usimamishe mchakato ikiwa unatumia rasilimali nyingi. Zaidi ya hayo unaweza pia kutumia Monit Kufuatilia faili, saraka na mifumo ya faili kwa mabadiliko, mabadiliko ya hundi, mabadiliko ya saizi ya faili au mabadiliko ya muhuri wa saa. Ukiwa na Monit unaweza kufuatilia seva pangishi mlango wa TCP/IP, itifaki za seva na ping. Monit huhifadhi faili yake ya kumbukumbu na arifa kuhusu hali yoyote muhimu ya hitilafu na hali ya uokoaji.

Makala haya yameandikwa kuelezea mwongozo rahisi wa Monit usakinishaji na usanidi kwenye RHEL, CentOS, Fedora, Ubuntu, Linux Mint na Debian Linux Operating Systems, lakini inapaswa kuendana kwa urahisi na Scientific Linux pia.

Hatua ya 1: Kusakinisha Monit

Kwa chaguomsingi, zana ya Monit haipatikani kutoka kwa hazina za msingi za mfumo, unahitaji kuongeza na kuwezesha hazina ya epel ya wahusika wengine ili kusakinisha kifurushi cha monit chini ya mifumo yako ya RHEL/CentOS. Mara tu unapoongeza hazina ya epel, sasisha kifurushi kwa kutekeleza amri ifuatayo ya yum. Kwa watumiaji wa Ubuntu/Debian/Linux Mint wanaweza kusanikisha kwa urahisi kwa kutumia apt-get amri kama inavyoonyeshwa.

# yum install monit
$ sudo apt-get install monit

Hatua ya 2: Kusanidi Monit

Monit ni rahisi sana kusanidi, kwa kweli faili za usanidi zimeundwa kusomeka kwa urahisi sana na kuwarahisishia watumiaji kuelewa. Imeundwa kufuatilia huduma zinazoendeshwa katika kila dakika 2 na huweka kumbukumbu katika /var/log/monit.

Monit ina kiolesura chake cha wavuti kinachofanya kazi kwenye bandari 2812 kwa kutumia seva ya wavuti. Ili kuwezesha kiolesura cha wavuti unahitaji kufanya mabadiliko katika faili ya usanidi ya monit. Faili kuu ya usanidi ya monit iliyoko /etc/monit.conf chini ya (RedHat/CentOS/Fedora) na /etc/monit/monitrc faili ya (Ubuntu/Debian/Linux Mint). Fungua faili hii ukitumia chaguo lako la kihariri.

# vi /etc/monit.conf
$ sudo vi /etc/monit/monitrc

Kisha, ondoa maoni kwenye sehemu ifuatayo na uongeze anwani ya IP au jina la kikoa la seva yako, ruhusu mtu yeyote kuunganisha na kubadilisha monit mtumiaji na nenosiri au unaweza kutumia chaguomsingi.

 set httpd port 2812 and
     use address localhost  # only accept connection from localhost
     allow localhost        # 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

Mara tu ukiisanidi, unahitaji kuanza huduma ya monit ili kupakia upya mipangilio mipya ya usanidi.

# /etc/init.d/monit start
$ sudo /etc/init.d/monit start

Sasa, utaweza kufikia kiolesura cha wavuti cha monit kwa kuelekeza hadi kwenye http://localhost:2812 au http://example.com:2812. Kisha ingiza jina la mtumiaji kama admin na nenosiri kama monit. Unapaswa kupata skrini inayofanana na hapa chini.

Hatua ya 3: Kuongeza Huduma za Ufuatiliaji

Mara tu kiolesura cha wavuti cha monit kitakaposanidiwa kwa usahihi, anza kuongeza programu ambazo unataka kufuatilia kwenye /etc/monit.conf chini ya (RedHat/CentOS/Fedora) na /etc/monit/monitrc faili ya (Ubuntu/Debian/Linux Mint) kwa chini.

Ifuatayo ni mifano muhimu ya usanidi wa monit, ambayo inaweza kusaidia sana kuona jinsi huduma inavyofanya kazi, ambapo huweka pidfile yake na jinsi ya kuanza na kusimamisha huduma n.k.

check process httpd with pidfile /var/run/httpd.pid
group apache
start program = "/etc/init.d/httpd start"
stop program = "/etc/init.d/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 = "/etc/init.d/apache2 start" with timeout 60 seconds
stop program  = "/etc/init.d/apache2 stop"
check process nginx with pidfile /var/run/nginx.pid
start program = "/etc/init.d/nginx start"
stop program = "/etc/init.d/nginx stop"
check process mysqld with pidfile /var/run/mysqld/mysqld.pid
group mysql
start program = "/etc/init.d/mysqld start"
stop program = "/etc/init.d/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 "/etc/init.d/sshd start"
stop program "/etc/init.d/sshd stop"
if failed host 127.0.0.1 port 22 protocol ssh then restart
if 5 restarts within 5 cycles then timeout

Mara baada ya kusanidi programu zote za ufuatiliaji, angalia syntax ya monit kwa makosa. Ikiwa makosa yoyote yamepatikana yatatue, sio ngumu sana kujua ni nini kilienda vibaya. Unapopata ujumbe kama Dhibiti syntax ya faili sawa, au ikiwa huoni hitilafu, unaweza kuendelea.

# monit -t
$ sudo monit -t

Baada ya kurekebisha makosa yote iwezekanavyo, unaweza kuandika amri ifuatayo ili kuanza huduma ya monit.

# /etc/init.d/monit restart
$ sudo /etc/init.d/monit restart

Unaweza kuthibitisha kuwa huduma ya monit imeanza kwa kuangalia faili ya kumbukumbu.

# tail -f /var/log/monit
$ sudo tail -f /var/log/monit.log
[BDT Apr  3 03:06:04] info     : Starting monit HTTP server at [localhost:2812]
[BDT Apr  3 03:06:04] info     : monit HTTP server started
[BDT Apr  3 03:06:04] info     : 'linux-console.net' Monit started
[BDT Apr  3 03:06:04] error    : 'nginx' process is not running
[BDT Apr  3 03:06:04] info     : 'nginx' trying to restart
[BDT Apr  3 03:06:04] info     : 'nginx' start: /etc/init.d/nginx

Hivi ndivyo inavyoonekana monit baada ya kuongeza mchakato wote wa ufuatiliaji.

Viungo vya Marejeleo

  1. Fuatilia Ukurasa wa Kwanza
  2. Fuatilia Hati
  3. Fuatilia Mifano ya Usanidi