To keep your servers secure a sysadmin needs to monitor them for unusual activity. Monitoring helps to troubleshoot all kinds of problems (system, application level) and to provide warning signs of system abuse or performance issues.
In this post I'll introduce you to web-based tools that will help you keep an eye on your system resources and to display all system related information in easy-to-read formats that make it a snap to see where your performance or security bottlenecks are.
Cacti is a complete network graphing solution designed to harness the power of RRDTool's data storage and graphing functionality. Cacti provides a fast poller, advanced graph templating, multiple data acquisition methods, and user management features out of the box. All of this is wrapped in an intuitive, easy to use interface that makes sense for LAN-sized installations up to complex networks with hundreds of devices.
Ganglia is a scalable distributed monitoring system for high-performance computing systems such as clusters and Grids. It is based on a hierarchical design targeted at federations of clusters. It leverage's widely used technologies such as XML for data representation, XDR for compact, portable data transport, and RRDtool for data storage and visualization. It uses carefully engineered data structures and algorithms to achieve very low per-node overheads and high concurrency. The implementation is robust, has been ported to an extensive set of operating systems and processor architectures, and is currently in use on thousands of clusters around the world. It has been used to link clusters across university campuses and around the world and can scale to handle clusters with 2000 nodes.
Hyperic HQ's unique ability to automatically discover and monitor software and network resources, regardless of type or location, gives you a unified view of the performance and health of your applications. Use HQ's comprehensive suite of tools to track performance and event data, create complex alerts, run diagnostics, and issue control actions from a single remote console.
Monit is a free open source utility for managing and monitoring, processes, files, directories and file systems on a UNIX system. Monit conducts automatic maintenance and repair and can execute meaningful causal actions in error situations
Munin the monitoring tool surveys all your computers and remembers what it saw. It presents all the information in graphs through a web interface. Its emphasis is on plug and play capabilities. After completing a installation a high number of monitoring plugins will be playing with no more effort. Munin has a master/node architecture in which the master connects to all the nodes at regular intervals and asks them for data. It then stores the data in RRD files, and (if needed) updates the graphs. One of the main goals has been ease of creating new plugins (graphs)
Nagios is the industry standard in enterprise-class monitoring for good reason. It allows you to gain insight into your network and fix problems before customers know they even exist. It's stable, scalable, supported, and extensible.
OpenNMS was developed from the beginning to be an enterprise-grade solution capable of monitoring a theoretically unlimited number of devices (via a distributed and tiered system). It is written mainly in Java and it can theoretically run on any system that supports a 1.4 SDK
PRTG Network Monitor is the powerful network monitoring solution from Paessler AG. It ensures the availability of network components while also measuring traffic and usage. It saves costs by avoiding outages, optimizing connections, saving time and controlling service level agreements (SLAs)
Using phpSysInfo it is quite easy to set up a simple monitoring on any web server that runs PHP. Also, this script can display temperatures and fan speeds (via lm_sensors) if you configure it to do so. It runs on most platforms and installation is very easy – just decompress and untar the source into your webserver's document root.
SmokePing is a delux latency measurement tool. It can measure, store and display latency, latency distribution and packet loss. SmokePing uses RRDtool to maintain a long-term datastore and to draw pretty graphs, giving up to the minute information on the state of each network connection. It is written in Perl and it consists of a daemon process responsible for data collection and a CGI script presenting the data on the web.
Spiceworks combines everything you need to manage IT in one easy-to-use application: Network Inventory, Help Desk, Reporting, Monitoring and Troubleshooting. And, it connects you with other IT pros to share ideas, solve problems and decide what additional features you need in Spiceworks. It's free, thanks to top technology vendors that sponsor Spiceworks.
System Health Monitor is a handy python program that will setup your system to generate RRD Graphs of network interface traffic, system load, memory usage, disk space and inode usage and graphs of the number of running processes. It features a user-friendly interactive configuration mode and auto-generated html pages. Just point your web server to the health_html directory to get an overview of the status of your machine.
Xymon is a system for monitoring of hosts and networks, inspired by the Big Brother system. It provides real-time monitoring, an easy web-interface, historical data, availability reports and performance graphs. Xymon was previously known as "Hobbit"
Zabbix is software that monitors numerous parameters of a network such health and integrity of servers. It uses a flexible notification mechanism that allows users to configure e-mail based alerts for virtually any event. This allows a fast reaction to server problems. Zabbix also offers excellent reporting and data visualisation features based on the stored data. This makes Zabbix ideal for capacity planning.
One of the most popular projects on Sourceforge.com, Zenoss Core is an award-winning open source IT monitoring product that offers visibility over the entire IT stack, from network devices to applications. Features include automatic discovery, inventory via CMDB, availability monitoring, easy-to-read performance graphs, sophisticated alerting, an easy-to-use web portal, and much, much more
This is a simple utility which is designed to allow a system administrator to view the logfiles which are produced upon hosts under their control. It does this by mailing summaries of the logfiles to them, after first filtering out "normal" entries. Normal entries are entries which match one of the many included regular expression files contain in the database
Logwatch is a customizable log analysis system. It parses through your system's logs for a given period of time and creates a report analysing areas that you specify, in as much detail as you require. Logwatch is easy to use and will work right out of the package on most systems