Cacti: RRDTool-based Graphing Solution
(Page 1 of 4 )
As you’ve surely noticed, we frequently cover topics related to server administration, targeting the audience of system administrators and network technicians here on Codewalkers. Today, we will overview Cacti—a complete network graphing solution that utilizes the functionalities of RRDTool. Throughout this article we’re going to discuss how implementing Cacti as a network monitoring system can yield good results.

There are numerous network monitoring suites, some of which are open source. Others are full-fledged commercial applications with a features list that’s pages long. However, system administrators know what they want, and don’t mind spending few minutes (or hours, if not days!) figuring out how things work, and going the extra mile to customize any application, extending its usage with plug-ins and such.

A bit earlier we mentioned that Cacti is based on RRDTool. First let’s see what that tool is and how Cacti is able to harness its features. RRDTool is an extremely modular industry-standard round-robin database tool that stores time-series data such as CPU load, free space, memory usage, network bandwidth, temperatures, etc. You can create custom shell scripts or entire apps in your favorite coding language.
Since RRDTool is multi-platform (Unix, *nix, Windows) Cacti can also be deployed to Unix-like operating systems (including GNU/Linux) along with Microsoft's OSes. As you can guess, Cacti is basically a web-based graphical front end for RRDTool. Even though RRDTool also comes with a graphical format extraction tool, Cacti is much more. Later, we will cover lots of features that differentiate Cacti.
Deploying Cacti, therefore, requires RRDTool 1.0.49 or 1.2.x (or greater), an already-configured and up-and-running service of PHP 4.1 or 4.3.6 (or greater), and of course, MySQL 3.23 or 4.0.20d (or newer). Moreover, a working web server is also required. This should be Apache in the case of UNIX operating systems (but also possible under Windows) or Microsoft Windows IIS (Internet Information Service). As a final note, Net-SNMP is pretty much optional (under *nix, it comes as php-snmp) but useful.
Now that we know the basic requirements, let’s try to tackle its functionalities.
Next: Features and Functions >>
More Server Administration Articles
More By Barzan 'Tony' Antal