Поиск по сайту:

Как установить Cacti с помощью Cacti-Spine в Debian и Ubuntu


В этом руководстве мы узнаем, как установить и настроить инструмент мониторинга сети Cacti в последних версиях Debian и Ubuntu 16.04 LTS. В рамках этого руководства Cacti будет собрана и установлена из исходных файлов.

Cacti — это инструмент мониторинга с открытым исходным кодом, созданный для мониторинга сетей, особенно сетевых устройств, таких как коммутаторы, маршрутизаторы, серверы, через протокол SNMP. Cacti взаимодействует с конечными пользователями и может управляться через веб-интерфейс.

Требования

  1. Стек LAMP установлен в Debian 9
  2. Стек LAMP установлен в Ubuntu 16.04 LTS

Шаг 1. Установите и настройте необходимые компоненты для Cacti

1. В Debian 9 откройте файл списка исходных кодов для редактирования и добавьте репозитории contrib и несвободные в файл, изменив следующие строки:

nano /etc/apt/sources.list

Добавьте следующие строки в файл sources.list.

deb http://ftp.ro.debian.org/debian/ stretch main contrib non-free
deb-src http://ftp.ro.debian.org/debian/ stretch main

deb http://security.debian.org/debian-security stretch/updates main contrib non-free
deb-src http://security.debian.org/debian-security stretch/updates main

2. После этого обязательно обновите систему, выполнив приведенную ниже команду.

apt update
apt upgrade

3. Убедитесь, что в вашем стеке LAMP присутствуют следующие расширения PHP.

apt install php7.0-snmp php7.0-xml php7.0-mbstring php7.0-json php7.0-gd php7.0-gmp php7.0-zip php7.0-ldap php7.0-mcrypt

4. Затем отредактируйте файл конфигурации PHP и измените настройку часового пояса в соответствии с физическим местоположением вашего сервера, введя приведенную ниже команду.

echo "date.timezone = Europe/Bucharest" >> /etc/php/7.0/apache2/php.ini 

5. Затем войдите в базу данных MariaDB или MySQL из установленного стека LAMP и создайте базу данных для установки Cacti. > выполнив следующие команды.

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

mysql -u root -p
mysql> create database cacti;
mysql> grant all on cacti.* to 'cactiuser'@'localhost' identified by 'password1';
mysql> flush privileges;
mysql> exit

6. Кроме того, введите приведенные ниже команды, чтобы разрешить пользователю Cacti выбирать разрешения для настройки MySQL data.timezone, введя приведенные ниже команды.

mysql -u root -p mysql < /usr/share/mysql/mysql_test_data_timezone.sql 
mysql -u root -p -e 'grant select on mysql.time_zone_name to cactiuser@localhost'

7. Затем откройте файл конфигурации сервера MySQL и добавьте в конец файла следующие строки.

nano /etc/mysql/mariadb.conf.d/50-server.cnf [For MariaDB]
nano /etc/mysql/mysql.conf.d/mysqld.cnf      [For MySQL] 

Добавьте следующие строки в конец файла 50-server.cnf или mysqld.cnf.

max_heap_table_size		= 98M
tmp_table_size			= 64M
join_buffer_size		= 64M
innodb_buffer_pool_size	= 485M
innodb_doublewrite		= off
innodb_flush_log_at_timeout	= 3
innodb_read_io_threads	= 32
innodb_write_io_threads	= 16

Для базы данных MariaDB также добавьте следующую строку в конец файла 50-server.cnf:

innodb_additional_mem_pool_size	= 80M

8. Наконец, перезапустите службы MySQL и Apache, чтобы применить все настройки и проверить состояние обеих служб, выполнив следующие команды.

systemctl restart mysql apache2
systemctl status mysql apache2

Шаг 2. Загрузите и подготовьте установку Cacti.

9. Начните установку Cacti из исходных кодов, загрузив и распаковав последнюю версию архива Cacti и скопировав все извлеченные файлы в корень веб-документа Apache, выполнив следующие команды.

wget https://www.cacti.net/downloads/cacti-latest.tar.gz
tar xfz cacti-latest.tar.gz 
cp -rf cacti-1.1.27/* /var/www/html/

10. Удалите файл index.html из каталога /var/www/html, создайте файл журнала Cacti и предоставьте Apache права на запись в Интернет. корневой путь.

rm /var/www/html/index.html
touch /var/www/html/log/cacti.log
chown -R www-data:www-data /var/www/html/

11. Затем отредактируйте файл конфигурации кактусов и измените следующие строки, как показано в примере ниже.

nano /var/www/html/include/config.php

Пример файла Cacti config.php. Замените имя базы данных кактусов, пользователя и пароль соответственно.

$database_type     = 'mysql';
$database_default  = 'cacti';
$database_hostname = 'localhost';
$database_username = 'cactiuser';
$database_password = 'password1;
$database_port     = '3306';
$database_ssl      = false;
$url_path = '/';

12. Затем заполните базу данных кактусов сценарием cacti.sql из каталога /var/www/html/, выполнив приведенную ниже команду.

mysql -u cactiuser cacti -p < /var/www/html/cacti.sql 

13. Теперь установите некоторые дополнительные ресурсы, поскольку движок Cacti собирает данные устройств по протоколу SNMP и отображает графику с помощью RRDtool. Установите их все, выполнив следующую команду.

apt install snmp snmpd snmp-mibs-downloader rrdtool

14. Убедитесь, что служба SNMP запущена и работает, перезапустив демон snmpd, выполнив приведенную ниже команду. Также проверьте состояние демона snmpd и его открытые порты.

systemctl restart snmpd.service 
systemctl status snmpd.service
ss -tulpn| grep snmp

Шаг 3. Загрузите и установите Cacti-Spine

15. Cacti-Spine — это написанная на C замена стандартного опросчика cmd.php. Cacti-Spine обеспечивает более быстрое выполнение. Чтобы скомпилировать пул Cacti-Spine из исходных кодов, установите в своей системе указанные ниже необходимые зависимости.

---------------- On Debian 9 ---------------- 
apt install build-essential dos2unix dh-autoreconf help2man libssl-dev libmysql++-dev librrds-perl libsnmp-dev libmariadb-dev libmariadbclient-dev

---------------- On Ubuntu ---------------- 
apt install build-essential dos2unix dh-autoreconf help2man libssl-dev libmysql++-dev  librrds-perl libsnmp-dev libmysqlclient-dev libmysqld-dev  

16. После установки вышеуказанных зависимостей загрузите последнюю версию архива Cacti-Spine, распакуйте архив и скомпилируйте cacti-spine, выполнив следующую серию команд. .

wget https://www.cacti.net/downloads/spine/cacti-spine-latest.tar.gz
tar xfz cacti-spine-latest.tar.gz 
cd cacti-spine-1.1.27/

17. Скомпилируйте и установите Cacti-Spine из исходных кодов, выполнив следующие команды.

./bootstrap 
./configure 
make
make install

18. Затем убедитесь, что двоичный файл Spine принадлежит учетной записи root, и установите бит suid для утилиты Spine, выполнив следующие команды.

chown root:root /usr/local/spine/bin/spine 
chmod +s /usr/local/spine/bin/spine

19. Теперь отредактируйте файл конфигурации Cacti Spine и добавьте имя базы данных Cacti, пользователя и пароль в файл конфигурации Spine, как показано в примере ниже.

nano /usr/local/spine/etc/spine.conf

Добавьте следующую конфигурацию в файл spine.conf.

DB_Host localhost
DB_Database cacti
DB_User cactiuser
DB_Pass password1
DB_Port 3306
DB_PreG 0

Шаг 4. Настройка мастера установки Cacti

20. Чтобы установить Cacti, откройте браузер и перейдите к IP-адресу или доменному имени вашей системы по следующему URL-адресу.

http://your_IP/install

Сначала установите флажок Принять лицензионное соглашение и нажмите кнопку Далее, чтобы продолжить.

21. Затем проверьте соответствие системным требованиям и нажмите кнопку Далее, чтобы продолжить.

22. В следующем окне выберите Новый основной сервер и нажмите кнопку Далее, чтобы продолжить.

23. Затем проверьте расположение и версии критически важных двоичных файлов и измените двоичный путь Spine на /usr/local/spine/bin/spine. Когда вы закончите, нажмите кнопку Далее, чтобы продолжить.

24. Затем проверьте, установлены ли все разрешения для каталога веб-сервера (установлены разрешения на запись), и нажмите кнопку Далее, чтобы продолжить.

25. На следующем шаге проверьте все шаблоны и нажмите кнопку Готово, чтобы завершить процесс установки.

26. Войдите в веб-интерфейс Cacti, используя учетные данные по умолчанию, показанные ниже, и измените пароль администратора, как показано на следующих снимках экрана.

Username: admin
Password: admin

27. Затем перейдите в Консоль -> Конфигурация -> Настройки -> Опрос и измените Тип опроса с cmd.php< в двоичный файл Spine и прокрутите вниз до кнопки Сохранить, чтобы сохранить конфигурацию.

28. Затем перейдите в Консоль -> Конфигурация -> Настройки -> Пути и добавьте следующий путь к файлу конфигурации Cacti-Spine:

/usr/local/spine/etc/spine.conf 

Нажмите кнопку Сохранить, чтобы применить конфигурацию.

29. Последней настройкой, позволяющей опросчику Cacti начать сбор данных с контролируемых устройств, является добавление новой задачи crontab для опроса каждого устройства через SNMP каждые 5 минут.

Задание crontab должно принадлежать учетной записи www-data.

crontab -u www-data -e

Добавьте запись файла Cron:

*/5 * * * * /usr/bin/php /var/www/html/poller.php

30. Подождите несколько минут, пока Cacti соберет данные, и перейдите в Графики -> Дерево по умолчанию, и вы должны увидеть графики, собранные для ваших отслеживаемых устройств.

Вот и все! Вы успешно установили и настроили Cacti с помощью средства объединения Cacti-Spine из исходных кодов в последних выпусках Debian 9 и Ubuntu 16.04. LTS сервер.