Difference between revisions of "Monit"
From Bashlinux
Line 2: | Line 2: | ||
= M/Monit = |
= M/Monit = |
||
+ | == How to install M/Monit from sources == |
||
− | == Installation == |
||
# Download Monit tar file from tildeslash |
# Download Monit tar file from tildeslash |
||
Line 20: | Line 20: | ||
− | == |
+ | == How to setup M/Monit == |
# Open `/etc/monit.conf` and set/uncomment this values: |
# Open `/etc/monit.conf` and set/uncomment this values: |
||
Line 53: | Line 53: | ||
− | == |
+ | == How to configure M/Monit services == |
− | |||
=== Apache === |
=== Apache === |
||
'''File:''' `/etc/monit.d/httpd.conf` |
'''File:''' `/etc/monit.d/httpd.conf` |
||
Line 112: | Line 111: | ||
+ | == How to setup and start M/Monit service == |
||
− | == Startup == |
||
− | |||
=== Boot init from SYSV init.d === |
=== Boot init from SYSV init.d === |
||
# Register the service to start on boot |
# Register the service to start on boot |
Revision as of 08:03, 9 November 2012
M/Monit
How to install M/Monit from sources
- Download Monit tar file from tildeslash
wget http://www.tildeslash.com/monit/dist/monit-4.10.1.tar.gz
- 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
- 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
- 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
- Register the service to start on boot
chkconfig monit on
- Start service
service monit start
Respawnning with inittab
- Append Template:/etc/inittab to add:
mo:2345:respawn:/usr/bin/monit -Ic /etc/monit.conf
- Start monit
init q