Monit is an open source utility that provides several system monitoring functionality that are extremely helpful to sysadmins. This article provides a jumpstart guide on monit installation and configuration. We also discuss a specific example related to processes monitoring.
1. Install monit
On Fedora, openSUSE, Debian install monit as a package from the distribution repository. For example, on Debian (and Ubuntu), install monit using apt-get as shown below.
# apt-get install monit
If your distribution don’t have the monit package, download monit source and install it.
2. Configure monit
A sample process monitoring entry in the monit configuration file /etc/monit/monitrc looks like the following.
check process PROCESSNAME
with pidfile PIDFILENAME-WITHABSOLUTE-PATH
start = STARTUP-SCRIPT
stop = STOP-SCRIPT
For example, to monitor the cron daemon, append the following lines to the monitrc file.
# vim /etc/monit/monitrc
check process crond
with pidfile /var/run/crond.pid
start = "/etc/init.d/cron start"
stop = "/etc/init.d/cron stop"
For further configurations (for example, restarting a process when it crosses a memory or process limit), refer the HOW TO MONITOR section in “man monit”.
Also, enable syslog by uncommenting the following line in /etc/monit/monitrc.
# vim /etc/monit/monitrc set logfile syslog facility log_daemon
3. Allow startup of monit
Edit the /etc/default/monit file and enable the start up flag, which ensures that the configuration is done so that monit can start.
# vim /etc/default/monit startup=1
4. Start monit
# /etc/init.d/monit start Starting daemon monitor: monit
5. Check monit functionality
To test this, let us kill the running cron daemon as shown below.
# ps -ef | grep cron root 2886 1 0 10:18 ? 00:00:00 /usr/sbin/cron # pkill -9 cron
In the next interval, monit automatically starts the cron daemon without the administrator interaction as shown in the syslog messages below.
Dec 5 13:06:55 (none) monit[2968]: 'crond' process is not running Dec 5 13:06:55 (none) monit[2968]: 'crond' trying to restart Dec 5 13:06:55 (none) monit[2968]: 'crond' start: /etc/init.d/cron
Do a ps -ef to make sure the cron job is started automatically by monit, when you killed it.
# ps -ef | grep cron root 19728 1 0 13:06 ? 00:00:00 /usr/sbin/cron
Linux provides several powerful administrative tools and utilities which will help you to manage your systems effectively. If you don’t know what these tools are and how to use them, you could be spending lot of time trying to perform even the basic administrative tasks. The focus of this course is to help you understand system administration tools, which will help you to become an effective Linux system administrator.Get the Linux Sysadmin Course Now!
If you enjoyed this article, you might also like..
|
|
|
|






My name is Ramesh Natarajan. I will be posting instruction guides, how-to, troubleshooting tips and tricks on Linux, database, hardware, security and web. My focus is to write articles that will either teach you or help you resolve a problem. Read more about
{ 3 comments… read them below or add one }
URL is wrong? I don’t think its the same program.
Monit is at http://mmonit.com/monit
@chmurli,
M/monit and monit are related products. Both are hosted on the same website. If you have monit installed on multiple servers, you can use M/monit to monitor those servers from a web UI.
@Michael,
Thanks. I’ve updated the URL.