tm

   По-умолчанию система мониторинга CACTI доступна по адресу http://domain.xx/cacti/, т.е. с точки зрения web-сервера /cacti/ - является алиасом. Этот факт немного не удобен тем, что логи при обращении к /cacti/ будут сыпаться в общую кучу с логами домена. Конечно, можно как-то избавиться от этого тонкой настройкой логирования web-сервера, но можно поступить по-другому. Посадить CACTI на поддомен, т.е. URL будет выглядеть так: cacti.domain.xx. Ну, проще говоря, создать отдельный виртуальный хост на web-сервере.

   В этой небольшой зарисовке пример Ubuntu 14 + Apache 2.4.7. + CACTI. По умочанию, CACTI создаёт конфигурацию к основному домену в виде алиаса. Посмотреть можно в /etc/apache2/conf-available/cacti.conf. Эту конфигурацию мы отключаем:

a2disconf cacti
service apache2 reload

   Следующим шагом будет создание виртуального хоста в директории site-avialable:

В качестве OS используется Ubuntu 15.10. Сразу оговорюсь, что на эту версию Ubuntu установится Cacti Version: 0.8.8f, Plugin Architecture Version: 3.1.

Прежде чем устанавливать CACTI необходимо обзавестись Web сервером и всем, что к нему прилагается. А именно Apache2, MySQL, PHPMyAdmin (в простанародии LAMP-сервер), snmp, snmpd, snmp-mibs-downloader.

Устанавливаем:

1. apt-get install lamp-server^ (кошачье ушко в конце - не опечатка)

2. apt-get install snmp snmpd snmp-mibs-downloader

3. apt-get install cacti cacti-spine (собственно, сама система мониторинга)

Ниже скриншоты настроек и краткие комментарии к ним.

1. Установка параметров протокола SNMP (версия, community). Я использую вторую версию с паролем по-умолчанию.

2. Как я понял, это получение информации по всем запросам протокола SNMP.

В этом разделе опишу установку плагинов с которыми приходилось работать. Ссылки на плагины будут. Для недоверчивых - ссылки на официальный сайт.

Для начала ссылки на архивы с плагинами и их краткое описание. Все плагины брал тут. Поехали:

FlowView. Плагин который показывает погоду, но предназначенный для анализа NetFlow. Тем не менее он у меня установлен. Общую картину он создать может, поэтому начнём. Для настройки в первую очередь создаём директорию, куда будет падать flow. У меня всё льётся в /var/netflow/flows/completed. Создаём директорию:

mkdir -p /var/netflow/flows/completed/

 Для того, что бы плагин заработал нужно установить библиотеку FlowTools:

apt-get install flow-tools

 И вот тут у нас есть возможность ощутить всю корявость плагина. Часть скрипта которая отвечает за создание таблицы в БД имела тип MEMORY, что приводило к потере данных после рестарта MySQL или перезагрузке сервера.

Spikekill. Скачать можно со страницы описания плагинов. Тут настроек совсем не много. Идём в Console -> Cacti Settings и заходим во вкладку SpikeKill. Включаем по желанию планировщик на удаление пиков (1) и графики (2).

Самое главное, на мой взгляд, это получить кнопку удаления пиков рядом с графиком. Не у всех она сразу появляется после установки плагина. Для этого заходим в Console -> User Management выбираем пользователя которому необходимо назначить права и во вкладе Realm Permissions ставим галочку Plugin -> Remove Spikes on Graphs. В итоге получаем: 

Очень удобно :)

Monitor. Здесь вообще настраивать практически нечего. Идём в  Console -> Cacti Settings во вкладку Misc. Тут всё должно быть интуитивно понятно.

В итоге выглядит это так:

 

Скачать плагин можно тут.

Плагин Thold предназначен для мониторинга заданных критических значений параметров оборудования. В данном плагине есть возможность отображения критических значений на графиках и возможность оповещения по электронной почте. Можно даже прикрутить оповещение по СМС на телефон. Начнём:

После установки плагина, в настройках CACTI появляются соответствующие разделы: 

 

   Шаблон для мониторинга задержки и потерь во внутренней и внешней сетях.

Скачиваем шаблон. Файл .xml нужно импортировать через web-морду.

После импортирования идём в Console -> Devices, проваливаемся в нужное нам устройство и в разделе Associated Graph Templates выбираем наш шаблон графика PING - Advanced Ping v1.3. Добавляем, переходим в меню Create Graphs for this Host и в списке доступных шаблонов создаём наш. Результат:

К слову говоря, у меня возникли проблемы с отрисовкой графиков для внешних хостов + ко всему в списке устройств внешние хосты были в статусе DOWN. Решается просто:

 

chmod a+s /usr/sbin/spine

   Шаблон для мониторинга количества TCP соединений для ОС на базе *nix.

Скачиваем шаблон. В архиве файл .xml импортируем в Cacti через web-морду в меню Console -> Import Templates, а файл ss_tcp_connections.php помещаем в /usr/share/cacti/site/scripts/

Через некоторое время наблюдаем график.

 

   Шаблон для мониторинга температуры CPU и чипсетов материнской платы. Для снятия статистики необходимы несколько компонентов для ОС (в моё случае для Ubuntu):

apt-get install lm-sensors sensord

 После завершения установки выполняем сканирование оборудования на наличие различных датчиков температуры и вольтажа:

 root@mail:~# sensors-detect