Zenoss fits pretty well into the two fundamental roles: availability monitoring and performance monitoring, and also provides the facility of inventory tracking. Zenoss, written in Python, uses MySQL as backend for storage. For enterprises, it is important for a system administrator to monitor services and check that hosts are up and running. Also, once a decent monitoring solution is in place, you also ought to get time-based information. For instance, for memory and CPU usage, it gives you timely alerts. It has an option that allows you to chart pretty RRD graphs of system statistics like RAM or disk space.
The key features that Zenoss integrates are inventory tracking, availability and performance monitoring, and event monitoring. Zenoss provides flexibility in use as it is capable of monitoring hosts with SNMP, SSH, Windows WMI, Nagios agents, etc. The web interface is pretty decent and includes a customizable dashboard for monitoring.
The core version of Zenoss used in this article is freely available under the GPL v2. An enterprise version is also available with additional features and support. In this article, we installed Zenoss on CentOS 5.4 to observe its capabilities. Though the installation part involves only a few steps, you might need to carefully look into the packages that are required for it. As mentioned above this tool requires MySQL and Python, so we downloaded the .rpm package and installed it using both rpm and yum. To use it, login as root and run:
Cmd: # yum -y install mysql-server net-snmp net-snmp-utils gmp libgomp libgcj liberation-fonts.
Once done, you need to configure permissions (as we have installed MySQL).
# /etc/init.d/mysqld restart
# /usr/bin/mysqladmin -u root password ''
# /usr/bin/mysqladmin -u root -h Name of your server password ''
|Tocreate an alert rule, select Settings and then the User tab. Select a user and define rules for alerts.|
|After running Zenoss, you can begin by setting a new user account, setting the password or simply begin monitoring by adding devices.|
Initially the password is left blank to successfully create the database by Zenoss. And once it is done, you can set the desired password.
You can download the desired package from the link given above and install it using rpm. We downloaded the rpm package for X86_64 CentOS. Now, run the following command:
#rpm -ivh zenoss-2.5.1.el5.x86_64.rpm
In case you have provided a different root password or MySQL is operating on a different server, you need to adjust MYSQLHOST, MYSQLROOTUSER & MYSQLROOTPASSWD values in /opt/zenoss/bin/zenoss_init_pre file. Now, start the service using:
# service zenoss start
To operate Zenoss, several ports should be open or the alternate solution is to simply disable firewall by running:
#service iptables stop
#chkconfig iptables off
To launch Zenoss, run a web browser and type in http://localhost (IP Add or domain name):8080.
Once the configuration part is over, and you have Zenoss working , you can simply go ahead and add devices that you want to monitor from its web portal. For instance, in the Management category, you can add a device and begin to monitor it. We tested our router that provides Internet connectivity. In addition, within this category, you can run commands like ping, DNS forward, DNS reverse, traceroute, view at the OS related information and even performance related graphs.
This tool lets you monitor Windows Server, virtual server host and Tomcat (or other Java/JMX Server). You can even monitor the performance of Windows Server using ZenWinPerf, which is an enterprise Zenpack for performance monitoring.
Apart from that, to monitor a virtual server you can use the Zenoss virtual host monitor Zenpack.
You can also create alert rules. After the occurrence of an event, this tool categorizes and examines the defined rules to determine whether a particular event matches any filters.