Monit: praćenje servisa na nestandardnom portu
Opet ćemo obraditi jedan svježi upit direktno sa sys.helpa. Nakon reinstalacije poslužitelja, unatoč vašoj usredotočenosti na posao, potkrast će vam se poneka greška. Ovdje prvenstveno mislimo na fenomen u linuxovom svijetu poznatom pod imenom "zgaziti konfiguraciju ili ne"? O ovome smo napisali poseban članak, ali nije sada riječ o tome, nego o monitu, korisnom alatu koji u pozadini samo radi svoj posao i spašava nas od downtimea servisa.
Naime, kolega je prilikom nadogradnje poslužitelja pregazio konfiguraciju monita, te mu se počela javljati sljedeća poruka:
Jan 19 13:25:53 server monit[9052]: 'sshd' failed, cannot open a connection to INET[127.0.0.1:22] via TCP
Njemu je sve jasno, jer njegov SSHD sluša na drugom portu (ovo je jako jednostavna i efikasna preinaka, preporučujemo da promijenite port SSH daemona na neki drugi!). No, kako promijeniti port, kada promjena porta u /etc/monit/conf.d/sshd.conf jednostavno ne radi.
Rješenje je jednostavno: potrebno je promijeniti predložak, a ne direktno konfiguracijsku datoteku. Predlošci se nalaze u direktoriju /usr/share/monit-cn, konkretnije /usr/share/monit-cn/sshd.conf. Tamo stoji nešto poput ovoga:
check process sshd with pidfile "/var/run/sshd.pid"
start program = "/etc/init.d/ssh start"
stop program = "/etc/init.d/ssh stop"
if failed host 127.0.0.1 port 22 protocol ssh
with timeout 15 seconds
then restart
Ovdje samo trebate promijeniti port na željeni, te pokrenuti naredbu update-monit.d:
# update-monit.d
CN: Restored default sshd.conf template
CN: Stopping/restarting monit service
Nakon ovih promjena monit će pratiti servis na promijenjenom portu. Obratite pažnju da monit ne treba restartati putem SysV init skripte (/etc/init.d/monit). Restart će napraviti skripta update-monit.d za vas (odnosno, samo će poslati signal procesu da ponovo pročita svoju konfiguraciju). Ukoliko to ipak pokušate, dobit ćete poruku:
# /etc/init.d/monit restart
CN: Monit SystemV init script disabled -- inittab is in use
CN: Exiting now...
Poruka znači: o monitu se brine proces init i dakle program ne radi kao klasični daemon, nego je upisan u /etc/inittab.
Više o samom monitu i njegovom načinu rada možete naći u članku samog autora paketa monit.cn, našem Dinku Koruniću:
http://sistemac.carnet.hr/node/311
- Logirajte se za dodavanje komentara
- Inačica za ispis
- PDF version