Cacti (software)

Last updated
Cacti
Developer(s) The Cacti Group, Inc.
Initial releaseSeptember 23, 2001;21 years ago (2001-09-23) [1]
Stable release
1.2.23 [2]   OOjs UI icon edit-ltr-progressive.svg / 2 January 2023;47 days ago (2 January 2023)
Repository
Written in PHP, MySQL
Operating system Cross-platform
Type Network monitoring
License GNU General Public License
Website www.cacti.net

Cacti is an open-source, web-based network monitoring, performance, fault and configuration management framework designed as a front-end application for the open-source, industry-standard data logging tool RRDtool. [3] Cacti allows a user to poll services at predetermined intervals and graph the resulting data. Through the use of Cacti plugins, it has been extended to encompass all of the FCAPS operational management categories. It is generally used to graph time-series data of metrics such as CPU load and network bandwidth utilization. [4] A common usage is to monitor network traffic by polling a network switch or router interface via Simple Network Management Protocol (SNMP).

Contents

The Cacti end user front end supports both User and User Groups security models and supports Role Based Access Control (RBAC) for access to not only monitoring data, but various areas of the user interface. Source users can either be locally defined or sourced from LDAP, Active Directory and other protocols via Apache and Nginx Basic Authentication which includes Single Signon providers (SSO).

The Cacti framework can be extended using Plugins which transform Cacti from a pure Time Series Graphing solution into a robust Performance Monitoring, Fault and Configuration Management platform. The Cacti Group maintains over 20 such Plugins on GitHub that deliver these capabilities.

Cacti is primarily used by Telco providers and Network Operation Centers throughout the world in addition to being the heart of the commercial Spectrum LSF RTM solution which monitors High Performance Computing (HPC) clusters based on IBM LSF product. Additional use cases include web hosting providers [5] (especially dedicated server, [6] virtual private server, and colocation providers) to display bandwidth statistics for their customers. It can be used to configure the data collection itself, allowing certain setups to be monitored without any manual configuration of RRDtool. [7] Cacti data collection can be extended to monitor any source via shell scripts and executables. [8]

Cacti provides both a built-in and optional data collectors. back ends: The first, referenced to as "cmd.php", is a PHP script suitable for smaller installations. The second, referred to as "spine", is a multi-threaded and massively parallel C-based data collector which can scale to tens of thousands of hosts per Cacti Data Collector. [9] [10]

History

The Cacti project was first started by Ian Berry on September 2, 2001. [11] [12] Berry was inspired to start the project while working for a small ISP while also still in high school, learning PHP and MySQL. His central aim in creating Cacti "was to offer more ease of use than RRDtool and more flexibility than MRTG". [11]

On September 13, 2004, version 0.8.6 was released, [13] and with it came more developers and, later on, greater program speed and scalability. [11]

Version 0.8.7 was released for use in October 2007. [14] In June 2012, a roadmap on the website indicated that version 1.0.0 was scheduled for release in the first quarter of 2013, but due to team member availability and changing roles in their careers, Cacti development took a hiatus with only minor security and bug fixes until the release of Cacti 1.0 in January of 2017.

Between the years of 2012 and 2017, The Cacti released 6 point releases of the Cacti 0.8.8 series software, again addressing minor bug fixes and security issues.

The Cacti Group reorganizing in early 2015 to restart work on the Cacti 1.0 product. During this development, The Cacti Group stepped up to deliver on much of the promised capabilities on their roadmap including; Multiple Data Collectors; Improved Graph, Device, Template and Tree Security including User Group level permissions; Multiple Data Collection intervals; Site support; and Improved Tree Management and Performant capabilities.

Version 1.0.0 was released in January 2017. [15]

Version 1.2.0 was released in January 2019. [16]

2017 was an active year for The Cacti Group. They have released over 30 versions of Cacti since the initial 1.0.0 release in January 2017. The GitHub community additionally grew and there are now several dozen developers working on perfecting the 1.x release for use in homes, small companies and enterprises throughout the globe.

Features

The primary features of Cacti include: [8]

See also

Related Research Articles

Simple Network Management Protocol (SNMP) is an Internet Standard protocol for collecting and organizing information about managed devices on IP networks and for modifying that information to change device behaviour. Devices that typically support SNMP include cable modems, routers, switches, servers, workstations, printers, and more.

<span class="mw-page-title-main">RRDtool</span> Time series software

RRDtool aims to handle time series data such as network bandwidth, temperatures or CPU load. The data is stored in a circular buffer based database, thus the system storage footprint remains constant over time.

Nagios Core, formerly known as Nagios, is a free and open-source computer-software application that monitors systems, networks and infrastructure. Nagios offers monitoring and alerting services for servers, switches, applications and services. It alerts users when things go wrong and alerts them a second time when the problem has been resolved.

A management information base (MIB) is a database used for managing the entities in a communication network. Most often associated with the Simple Network Management Protocol (SNMP), the term is also used more generically in contexts such as in OSI/ISO Network management model. While intended to refer to the complete collection of management information available on an entity, it is often used to refer to a particular subset, more correctly referred to as MIB-module.

<span class="mw-page-title-main">Multi Router Traffic Grapher</span>

The Multi Router Traffic Grapher (MRTG) is free software for monitoring and measuring the traffic load on network links. It allows the user to see traffic load on a network over time in graphical form.

<span class="mw-page-title-main">Zenoss</span>

The company Zenoss, Inc. was founded in 2005 and is headquartered in Austin, Texas. The company develops hybrid IT monitoring and analytics software.

OpenNMS is a free and open-source enterprise grade network monitoring and network management platform. It is developed and supported by a community of users and developers and by the OpenNMS Group, offering commercial services, training and support.

The Remote Network Monitoring (RMON) MIB was developed by the IETF to support monitoring and protocol analysis of LANs. The original version focused on OSI layer 1 and layer 2 information in Ethernet and Token Ring networks. It has been extended by RMON2 which adds support for Network- and Application-layer monitoring and by SMON which adds support for switched networks. It is an industry-standard specification that provides much of the functionality offered by proprietary network analyzers. RMON agents are built into many high-end switches and routers.

The following tables compare general and technical information for a number of notable network monitoring systems. Please see the individual products' articles for further information.

collectd

collectd is a Unix daemon that collects, transfers and stores performance data of computers and network equipment. The acquired data is meant to help system administrators maintain an overview over available resources to detect existing or looming bottlenecks.

The W3C Geolocation API is an effort by the World Wide Web Consortium (W3C) to standardize an interface to retrieve the geographical location information for a client-side device. It defines a set of objects, ECMAScript standard compliant, that executing in the client application give the client's device location through the consulting of Location Information Servers, which are transparent for the application programming interface (API). The most common sources of location information are IP address, Wi-Fi and Bluetooth MAC address, radio-frequency identification (RFID), Wi-Fi connection location, or device Global Positioning System (GPS) and GSM/CDMA cell IDs. The location is returned with a given accuracy depending on the best location information source available.

<span class="mw-page-title-main">Shinken (software)</span>

Shinken is an open source computer system and network monitoring software application compatible with Nagios. It watches hosts and services, gathers performance data and alerts users when error conditions occur and again when the conditions clear.

<span class="mw-page-title-main">GroupWise</span> Messaging and collaborative software platform

GroupWise is a messaging and collaboration platform from Micro Focus that supports email, calendaring, personal information management, instant messaging, and document management. The GroupWise platform consists of desktop client software, which is available for Windows,, and the server software, which is supported on Windows Server and Linux.

Burstable billing is a method of measuring bandwidth based on peak use. It allows usage to exceed a specified threshold for brief periods of time without the financial penalty of purchasing a higher committed information rate from an Internet service provider (ISP).

<span class="mw-page-title-main">Xymon</span> Network monitoring application

Xymon, a network monitoring application using free software, operates under the GNU General Public License; its central server runs on Unix and Linux hosts.

<span class="mw-page-title-main">Icinga</span> Monitoring software

Icinga is an open-source computer system and network monitoring application. It was originally created as a fork of the Nagios system monitoring application in 2009.

Checkmk is software developed in Python and C++ for IT Infrastructure monitoring. It is used for the monitoring of servers, applications, networks, cloud infrastructures, containers, storage, databases and environment sensors.

<span class="mw-page-title-main">NeDi</span>

NeDi is an open source software tool which discovers, maps and inventories network devices and tracks connected end-nodes. It contains a number of features in a GUI for managing enterprise networks. For example: MAC address mapping/tracking, traffic & error graphing, uptime monitoring, correlate collected syslog & trap messages with customizable notification, drawing network maps, extensive reporting features such as device software, PoE usage, disabled interfaces, link errors, switch usage and many more. Its modular architecture allows for integration with other tools. For example, Cacti graphs can be created purely based on discovered information. Due to NeDi's versatility things like printer resources can be monitored as well.

<span class="mw-page-title-main">Vigilo NMS</span>

Vigilo NMS is a monitoring software capable of handling large-scale heterogeneous systems thanks to a distributed and modular architecture. Built around Nagios, Vigilo additionally manages metrology, mapping, correlation and reporting.

<span class="mw-page-title-main">Octopussy (software)</span> Log analysis software

Octopussy, also known as 8Pussy, is a free and open-source computer-software which monitors systems, by constantly analyzing the syslog data they generate and transmit to such a central Octopussy server. Therefore, software like Octopussy plays an important role in maintaining an information security management system within ISO/IEC 27001-compliant environments.

References

  1. "Cacti - Browse / cacti / cacti-0.5". SourceForge.net. 23 September 2001. Retrieved 16 March 2012.
  2. "Release 1.2.23". 2 January 2023. Retrieved 7 January 2023.
  3. "Cacti : un serveur de supervision" [Cacti: a supervision server]. Wiki ubuntu-fr (in French). 5 April 2019. Archived from the original (html) on 12 June 2019. Retrieved 24 January 2020. Cacti est un logiciel de supervision basé sur RRDtool permettant de surveiller l'activité de son architecture informatique à partir de graphiques quotidiens, hebdomadaires, mensuels et annuels.
  4. "Cacti - What is Cacti?". The Cacti Group, Inc. Retrieved 16 March 2012.
  5. "Cacti Bandwidth Graphing". 3DPixel Ltd. Archived from the original on 2012-02-06. Retrieved 16 March 2012.
  6. Morley, Simon (21 January 2011). "Cacti Server Monitoring". Simon Morley. Archived from the original on 2012-07-20. Retrieved 16 March 2012.
  7. "RedHat / CentOS Install and Configure Cacti Network Graphing Tool". Linux Magazine. 12 January 2012. Archived from the original on 2012-07-18. Retrieved 16 March 2012.
  8. 1 2 "Cacti - Features". The Cacti Group, Inc. Retrieved 16 March 2012.
  9. Adams, Larry (31 May 2009). "How to install poller cactid or spine on linux". alinux.web.id. Archived from the original on 2012-01-24. Retrieved 16 March 2012.
  10. "Cacti - Spine Information". The Cacti Group, Inc. Retrieved 16 March 2012.
  11. 1 2 3 Goldman, George (17 January 2007). "The network graphing solution Cacti was designed to provide more ease of use than RRDtool and more flexibility than MRTG". ISP-Planet. Retrieved 16 March 2012.
  12. "Cacti". SourceForge.net. Retrieved 16 March 2012.
  13. "Cacti - Browse / cacti / cacti-0.8.6". SourceForge.net. 13 September 2004. Retrieved 16 March 2012.
  14. "Cacti - Browse / cacti / cacti-0.8.7". SourceForge.net. 23 October 2007. Retrieved 16 March 2012.
  15. "Cacti - Browse / cacti / cacti-1.0.0". Cacti.net. 29 January 2017. Retrieved 31 January 2017.
  16. "Cacti - Browse / cacti / cacti-1.2.0". Cacti.net. 2 January 2019. Retrieved 3 January 2019.[ permanent dead link ]

Further reading