Monit

From Bashlinux
Revision as of 08:03, 9 November 2012 by Manpaz (talk)
Jump to: navigation, search

M/Monit

How to install M/Monit from sources

  1. Download Monit tar file from tildeslash
 wget http://www.tildeslash.com/monit/dist/monit-4.10.1.tar.gz
 
  1. Unpack and install
 tar zxvf monit-4.10.1.tar.gz
 cd monit-4.10.1
 ./configure
 make
 make install
 


How to setup M/Monit

  1. Open `/etc/monit.conf` and set/uncomment this values:
 # Run Monit as daemon
 set daemon 120

 # Send logs to /var/log/messages
 set logfile syslog facility log_daemon

 # Setup Monit Web Service with authentication from anywhere
 set httpd port 2812 and
 allow user:password

 # Read configuration files for each service
 include /etc/monit.d/*
 


# Open `/etc/httpd/conf/httpd.conf` and add the following lines:

 # Avoid Monit activity to be logged on Apache log
 SetEnvIf Request_URI "^/monit/token$" dontlog
 CustomLog logs/access_log common env=!dontlog
 
  1. Open port on iptables to watch monit on TCP port 2812
{{
iptables -A INPUT -p tcp --dport 2812 -j ACCEPT
</nowiki></pre>


How to configure M/Monit services

Apache

File: `/etc/monit.d/httpd.conf`

 check process httpd with pidfile /var/run/httpd.pid
   group apache
   start program = "/sbin/service httpd start"
   stop program = "/sbin/service httpd stop"
   if failed port host 127.0.0.1 port 80 protocol http
     and request "/api/restaurant/id"
   then restart
   if 5 restarts within 5 cycles then timeout
 


MySQL

File: `/etc/monit.d/mysqld.conf`

 check process mysql with pidfile /var/run/mysqld/mysqld.pid
   group mysql
   start program = "/sbin/service mysqld start"
   stop program = "/sbin/service mysqld stop"
   if failed host 127.0.0.1 port 3306 protocol mysql
     then restart
   if 5 restarts within 5 cycles then timeout
 


xmlBlaster

File: `/etc/monit.d/xmlblaster.conf`

 check process xmlblaster with pidfile /var/run/xmlblaster.pid
   group root
   start program = "/sbin/service xmlblaster start"
   stop program = "/sbin/service xmlblaster stop"
   if failed host iron.bashlinux.com port 3412 protocol http
     and request "/status.html" then restart
   if 5 restarts within 5 cycles then timeout
 


Actionqueue

File: `/etc/monit.d/actionqueue.conf`

 check process actionqueue with pidfile /var/run/actionqueue.pid
   group root
   start program = "/sbin/service actionqueue start"
   stop program = "/sbin/service actionqueue stop"
   if failed host 127.0.0.1 port 8443
     then restart
   if 5 restarts within 5 cycles then timeout
 


How to setup and start M/Monit service

Boot init from SYSV init.d

  1. Register the service to start on boot
 chkconfig monit on
 
  1. Start service
 service monit start
 


Respawnning with inittab

  1. Append Template:/etc/inittab to add:
 mo:2345:respawn:/usr/bin/monit -Ic /etc/monit.conf
 
  1. Start monit
 init q