Difference between revisions of "Monit"

From Bashlinux
Jump to: navigation, search
 
(Redirected page to M/Monit)
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
  +
#REDIRECT [[M/Monit]]
__NOTOC__
 
= M/Monit =
 
 
== Installation ==
 
# Download Monit tar file from tildeslash
 
 
<pre><nowiki>
 
wget http://www.tildeslash.com/monit/dist/monit-4.10.1.tar.gz
 
</nowiki></pre>
 
 
# Unpack and install
 
 
<pre><nowiki>
 
tar zxvf monit-4.10.1.tar.gz
 
cd monit-4.10.1
 
./configure
 
make
 
make install
 
</nowiki></pre>
 
 
 
== Configuration ==
 
# Open `/etc/monit.conf` and set/uncomment this values:
 
 
<pre><nowiki>
 
# 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/*
 
</nowiki></pre>
 
 
 
# Open `/etc/httpd/conf/httpd.conf` and add the following lines:
 
 
<pre><nowiki>
 
# Avoid Monit activity to be logged on Apache log
 
SetEnvIf Request_URI "^/monit/token$" dontlog
 
CustomLog logs/access_log common env=!dontlog
 
</nowiki></pre>
 
 
# Open port on iptables to watch monit on TCP port 2812
 
{{
 
iptables -A INPUT -p tcp --dport 2812 -j ACCEPT
 
</nowiki></pre>
 
 
 
== Configure services ==
 
 
=== Apache ===
 
'''File:''' `/etc/monit.d/httpd.conf`
 
 
<pre><nowiki>
 
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
 
</nowiki></pre>
 
 
 
=== MySQL ===
 
'''File:''' `/etc/monit.d/mysqld.conf`
 
 
<pre><nowiki>
 
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
 
</nowiki></pre>
 
 
 
=== xmlBlaster ===
 
'''File:''' `/etc/monit.d/xmlblaster.conf`
 
 
<pre><nowiki>
 
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
 
</nowiki></pre>
 
 
 
=== Actionqueue ===
 
'''File:''' `/etc/monit.d/actionqueue.conf`
 
 
<pre><nowiki>
 
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
 
</nowiki></pre>
 
 
 
== Startup ==
 
 
=== Boot init from SYSV init.d ===
 
# Register the service to start on boot
 
 
<pre><nowiki>
 
chkconfig monit on
 
</nowiki></pre>
 
 
# Start service
 
 
<pre><nowiki>
 
service monit start
 
</nowiki></pre>
 
 
 
=== Respawnning with inittab ===
 
# Append {{/etc/inittab}} to add:
 
 
<pre><nowiki>
 
mo:2345:respawn:/usr/bin/monit -Ic /etc/monit.conf
 
</nowiki></pre>
 
 
# Start monit
 
 
<pre><nowiki>
 
init q
 
</nowiki></pre>
 

Latest revision as of 22:21, 11 June 2015

Redirect to: