Установка Cacti

Материал из megapuper
Перейти к: навигация, поиск

Cacti - система мониторинга, основным назначением является сбор данных по SNMP и отображение в графическом виде. Результат выводится в виде графиков. Параметры любого созданного графика можно просмотреть и уточнить, в том числе «на лету». Используя заранее подготовленные шаблоны, графики очень легко создавать самостоятельно, без необходимости погружения в тонкости RRDTools и SNMP.


Кроме самой системы, нам нужно установить все необходимое: Apache, MySQL, PHP, PHP-extension. Теперь собственно cacti.

# cd /usr/ports/net-mgmt/cacti
# make install


После установки cacti, нам сообщают, что пользователь и группа в систему уже добавлены.
Added group «cacti».
Added user «cacti».


Далее видим инструкцию, ну и собственно следуем ей:

1. Create the MySQL database:
# mysqladmin --user=root create cacti
2. Create a mysql user/password for cacti:
(change user and/or password if required)
# echo "GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactiuser'; FLUSH PRIVILEGES;" | mysql
3. Import the default cacti database:
# mysql cacti </usr/local/share/cacti/cacti.sql
4. Edit /usr/local/share/cacti/include/config.php.
5. Add the line to cron jobs with the command:
# crontab -u cacti -e
*/5 * * * * /usr/local/bin/php /usr/local/share/cacti/poller.php > /dev/null 2>&1
6. Add alias in apache config for the cacti dir:
Alias /cacti "/usr/local/share/cacti/"
7. Be sure apache gives an access to the directory ('Allow from' keywords).
8. Open a cacti login page in your web browser and login with admin/admin.


Создаём базу данных:

mysql> create database cacti;

Создаём пользователя, даём ему права и устанавливаем пароль:

mysql> grant all on cacti.* to cacti@localhost identified by 'пароль';

Создаём таблицы в БД, по дампу, который идёт с программой:

# mysql -u cacti -p -b cacti < /usr/local/share/cacti/cacti.sql


Редактируем конфигурационный файл:

# ee /usr/local/share/cacti/include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "пароль";
$database_port = "3306";


Добавляем строку в cron:

*/5 * * * *  /usr/local/bin/php /usr/local/share/cacti/poller.php > /dev/null 2>&1


Добавляем алиас и директорию в Apache:

Alias /cacti "/usr/local/share/cacti/"

<Directory "/usr/local/share/cacti">
    Options Indexes FollowSymlinks MultiViews
    AllowOverride AuthConfig
    Order deny,allow
    Allow from all
</Directory>


Перезапускаем apache.

После чего набрав в браузере http://ip_address/cacti/, попадаем в «Cacti Installation Guide», нажимаем «Next», выбираем тип установки «New install», нажимаем «Next».
Появляется окно с проверкой всех путей. Должно быть везде зеленым «ОК», нажимаем «Finish». После этого попадаем на окно приглашения для ввода логина и пароля, вводим admin/admin.
Дальше нам предлагают поменять пароль, т.к. стандартный пароль не безопасен. Вводим новый пароль, его подтверждение и начинаем создавать графики.


Если необходимо мониторить удалённые хосты, не забываем включить на них snmp.

На примере FreeBSD:
Ставим порт net-snmp

# cd /usr/ports/net-mgmt/net-snmp
# make install


после установки, добавляем в /etc/rc.conf:

snmpd_enable="YES"


Создаём директорию для конфига, файл конфигурации и приводим его к такому виду:

# ee /usr/local/etc/snmp/snmpd.conf

syslocation "Russia"
syscontact admin
rwuser community noauth
rocommunity community
rwcommunity community
trapsink localhost community
trap2sink localhost community
informsink localhost community
trapcommunity community
authtrapenable 2


Запускаем демона:

# usr/local/etc/rc.d/snmpd.sh start


и проверяем:

# snmpwalk -c community -v 1 ip_address

Если в ответ видим большой список mib-ов, значит snmp работает, можно мониторить.


Вот такие замечательные графики получаются:
Cacti 1.png
Cacti 2.png
Cacti 3.png