Введение
Cacti – это веб-платформа с открытым исходным кодом для мониторинга сети, производительности, обнаружения неисправностей и управления конфигурацией, разработанная как клиентское приложение для стандартного в отрасли инструмента для сбора данных RRDtool. Cacti позволяет пользователям опрашивать службы через заданные интервалы и отображать полученные данные в виде графиков. Благодаря использованию плагинов Cacti, функциональность платформы расширена и охватывает все категории оперативного управления FCAPS. Cacti обычно используется для графического представления данных временных рядов, таких как загрузка ЦП и использование пропускной способности сети. Распространенным вариантом использования является мониторинг сетевого трафика путем опроса интерфейса сетевого коммутатора или маршрутизатора через протокол SNMP (Simple Network Management Protocol). Клиентский интерфейс Cacti поддерживает как модели безопасности "Пользователь" и "Группы пользователей", так и контроль доступа на основе ролей (RBAC) для доступа не только к данным мониторинга, но и к различным разделам пользовательского интерфейса. Источники пользователей могут быть определены локально или получены из LDAP, Active Directory и других протоколов через Apache и Nginx Basic Authentication, включая провайдеров единого входа (SSO). Архитектура Cacti может быть расширена с помощью плагинов, которые превращают Cacti из решения для графического анализа временных рядов в надежную платформу для мониторинга производительности, обнаружения неисправностей и управления конфигурацией. Команда разработчиков Cacti поддерживает более 20 таких плагинов на GitHub, предоставляющих эти возможности. Cacti в основном используется операторами связи и центрами управления сетью по всему миру, а также является основой коммерческого решения Spectrum LSF RTM, которое осуществляет мониторинг кластеров высокопроизводительных вычислений (HPC) на базе продукта IBM LSF. Другие варианты использования включают провайдеров веб-хостинга (особенно выделенных серверов, виртуальных частных серверов и центров обработки данных) для отображения статистики пропускной способности для своих клиентов. Cacti позволяет настраивать сам процесс сбора данных, что позволяет осуществлять мониторинг определенных конфигураций без ручной настройки RRDtool. Сбор данных Cacti может быть расширен для мониторинга любых источников с помощью shell-скриптов и исполняемых файлов. Cacti предоставляет как встроенные, так и дополнительные сборщики данных. Бэкэнды: Первый, обозначенный как "cmd.php", представляет собой PHP-скрипт, подходящий для небольших установок. Второй, называемый "spine", – это многопоточный и масштабируемый параллельный сборщик данных, написанный на языке C, который может обрабатывать десятки тысяч хостов на один сборщик данных Cacti.
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. 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. A common usage is to monitor network traffic by polling a network switch or router interface via Simple Network Management Protocol (SNMP). 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 (especially dedicated server, 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. Cacti data collection can be extended to monitor any source via shell scripts and executables. 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.
История
Проект Cacti был впервые запущен Иэном Берри 2 сентября 2001 года. Берри вдохновился начать проект, работая в небольшой компании-провайдере, одновременно учась в старшей школе и изучая PHP и MySQL. Его основной целью при создании Cacti было "обеспечить большую простоту использования, чем RRDtool, и большую гибкость, чем MRTG". С проектом пришли новые разработчики, а затем и повышение скорости работы программы и её масштабируемость. В июне 2012 года дорожная карта на сайте указывала, что выпуск версии 1.0.0 запланирован на первый квартал 2013 года, но из-за занятости участников команды и изменений в их карьере разработка Cacti была приостановлена, с выпусками лишь незначительных исправлений безопасности и ошибок, до выхода Cacti 1.0 в январе 2017 года. В период с 2012 по 2017 год команда Cacti выпустила 6 точечных релизов программного обеспечения серии Cacti 0.8.8, устраняя незначительные ошибки и проблемы безопасности. В начале 2015 года команда Cacti реорганизовалась, чтобы возобновить работу над продуктом Cacti 1.0. В ходе этой разработки команда Cacti сосредоточилась на реализации большей части функциональности, заявленной в дорожной карте, включая: множественные сборщики данных; улучшенную безопасность графиков, устройств, шаблонов и деревьев, включая права доступа на уровне групп пользователей; множественные интервалы сбора данных; поддержку нескольких сайтов; а также улучшенное управление деревьями и производительность. Версия 1.0.0 была выпущена в январе 2017 года, а версия 1.2.0 – в январе 2019 года. 2017 год был активным для команды Cacti. С момента первого релиза 1.0.0 в январе 2017 года было выпущено более 30 версий Cacti. Сообщество GitHub также выросло, и сейчас несколько десятков разработчиков работают над совершенствованием ветки 1.x для использования в домашних условиях, малых и крупных компаниях по всему миру.