Effectivement!
Bon je le fait rapidement et je nettoyerais plus tard.
[root@mae /home/shes]# cd /usr/ports/sysutils/monit && make install clean
Tout est installé via les ports
[root@mae /usr/ports/sysutils/monit]# echo monit_enable=\"YES\" >> /etc/rc.conf
J'active monit dans rc.conf
[root@mae /usr/ports/sysutils/monit]# cp /usr/local/etc/monitrc.sample /usr/local/etc/monitrc
Je fait une copie du fichier de configuration
[root@mae /usr/ports/sysutils/monit]# vi /usr/local/etc/monitrc
Code:set daemon 120
set logfile syslog facility log_daemon
set mail-format {
from: jesus@chri.st
subject: $SERVICE $EVENT at $DATE
message: Monit $ACTION $SERVICE at $DATE on $HOST,
Sinceres condoleances,
Jesus
}
set httpd port 2812 and
use address 192.168.1.30 # only accept connection from localhost
allow 192.168.1.30 # allow localhost to connect to the server and
allow login:pass # require user 'admin' with password 'monit'
check system mybox.myhost.org
if loadavg (1min) > 4 then alert
if loadavg (5min) > 2 then alert
if memory usage > 75% then alert
if cpu usage (user) > 70% then alert
if cpu usage (system) > 30% then alert
if cpu usage (wait) > 20% then alert
check process apache with pidfile /var/run/httpd.pid
start program = "/usr/local/etc/rc.d/apache22 start"
stop program = "/usr/local/etc/rc.d/apache22 stop"
if cpu > 60% for 2 cycles then alert
if cpu > 80% for 5 cycles then restart
if totalmem > 200.0 MB for 5 cycles then restart
if children > 250 then restart
if loadavg(5min) greater than 10 for 8 cycles then stop
if 3 restarts within 5 cycles then timeout
group server
check process mysql with pidfile /var/db/mysql/mae.freebsders.org.pid
group database
start program = "/usr/local/etc/rc.d/mysql-server start"
stop program = "/usr/local/etc/rc.d/mysql-server stop"
if 5 restarts within 5 cycles then timeout
check process mydns with pidfile /var/run/mydns.pid
group dns
start program = "/usr/local/etc/rc.d/mydns start"
stop program = "/usr/local/etc/rc.d/mydns stop"
if 5 restarts within 5 cycles then timeout
J'édite mon fichier de configuration très grossièrement pour simplement vérifier l'état des process d'apache, mysql et mydns.
[root@mae /usr/ports/sysutils/monit]# chmod 0700 /usr/local/etc/monitrc
Je change les permissions du fichiers car il ne concerne personne d'autre
[root@mae /usr/ports/sysutils/monit]# /usr/local/etc/rc.d/monit start
Je lance le daemon
Je vais ensuite recevoir quelques emails me prévenant que la configuration vient de changer.
J'ai essayé de killer mysql et 2 minutes après j'ai recu un premier mail de jesus m'annoncant que mysql était mort et un second m'annoncant qu'il était réssucité.