Software

Monitor your server with Monitorix

While it's important to get a remote view of your servers with tools like Nagios, it's not always easy to get a full "local" view of things like CPU load and network service demand. Vincent Danen introduces Monitorix to fill in the gaps of your monitoring needs.

Monitoring information on servers has become even easier with Monitorix. A lot of server monitoring is done remotely, such as with Nagios. While it is important to be able to get a remote view with the likes of Nagios (i.e., to see if the server is responding or whether the SMTP port is responding normally), it can be challenging to get a more "local" view. Monitorix, on the other hand, allows for the monitoring of CPU load, temperature, network device activity, network service demand, and more.

RPM packages are provided for Red Hat, Fedora, and CentOS. Other supported platforms include Debian, Gentoo, Slackware, and FreeBSD to some extent. Although not explicitly supported, the Monitorix RPM packages will work on a Mandriva system, provided the install is done via urpmi to grab the required dependencies along with it:

# urpmi monitorix-1.2.1-1.noarch.rpm

Once you have installed Monitorix, modify the /etc/monitorix.conf configuration file. There are a number of things that can be configured here, including how things are displayed, what to monitor, and what operating system is being used. One of the most important things to configure is the $OSTYPE variable, which can be Linux-RHFC, Linux-Debian, Linux-Gentoo, Linux-Slack, Linux-Generic, or FreeBSD. Further down in the configuration you can see why this is important as the $OSTYPE tells Monitorix where to find certain files and logs.

Monitorix comes in two parts: the collection agent and the Web interface. To start the collection agent, use the supplied initscript:

# service monitorix start

By default, the Monitorix files are located in /var/www/html/monitorix/ for the RPM install. Browsing to http://server/monitorix/ will provide a number of MRTG-style graphs that display all kinds of information. It includes:

  • CPU and memory usage information
  • Kernel usage
  • Disk IO activity and usage
  • Network traffic and usage
  • Network service demand for SMTP, SSH, FTP, telnet, Samba, and VirusMail
  • Fax services

Monitorix includes graphs for network port traffic, namely SMTP, HTTP, POP3, SSH, FTP, among others. It also indicates how many users are using the system and where they've connected from (telnet/ssh, Samba, or Netatalk). Finally, it also displays device interrupt activity.

All of this is default, of course, and you can choose via the configuration file what you would like to monitor and what you would rather ignore.

Monitorix gives a nice overview of what the system is experiencing at any given time, from the server side, updated in real-time. For a complete diagnostic picture, using Monitorix with a remote monitoring agent like Nagios is fantastic. And considering how easy it is to set up, compared to other similar solutions, Monitorix is a great pick.

Get the PDF version of this tip here.

Delivered each Tuesday, TechRepublic's free Linux and Open Source newsletter provides tips, articles, and other resources to help you hone your Linux skills. Automatically sign up today!

About

Vincent Danen works on the Red Hat Security Response Team and lives in Canada. He has been writing about and developing on Linux for over 10 years and is a veteran Mac user.

Editor's Picks