: :

ПнВтСрЧтПтСбВс

2017-11-13 16:29:40 4828 4

Установка системы мониторинга Cacti на CentOs7

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

Установку системы мониторинга будем производить на операционную систему СentOs7

Установка необходимых пакетов

Устанока веб-сервера Apache:

sudo yum install -y httpd httpd-devel

Установка СУБД Mariadb:

sudo install -y mariadb-server

Установка PHP:

sudo yum install php-mysql php-pear php-common php-gd php-devel php \

php-mbstring php-cli php-snmp

Изменяем временную зону для PHP, в файле /etc/php.ini в разделе "Date" раскоментируем строку date.timezone и присваиваем ей значение

date.timezone = Europe/Moscow

Установка SNMP:

sudo yum install net-snmp-utils net-snmp-libs

Установка RRDTools:

sudo yum install rrdtool

Запустим установленные сервисы и добавим их в автозагрузку:

sudo systemctl start mariadb

sudo systemctl enable mariadb

sudo systemctl start snmpd

sudo systemctl enable snmpd

sudo systemctl start httpd

sudo systemctl enable httpd

Установка Cacti

Подключаем репозиторий EPEL

sudo yum install -y epel-release

Устанавливаем пакет cacti

sudo yum install -y cacti

Настройка сервисов

настройка СУБД Mariadb

Запускаем скрипт предварительной настройки Mariadb

sudo mysql_secure_installation

Вводим пароль root и отвечаем на все вопросы "Yes"


NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we"ll need the current
password for the root user.  If you"ve just installed MariaDB, and
you haven"t set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] y
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y
 ... Success!

Normally, root should only be allowed to connect from "localhost".  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y
 ... Success!

By default, MariaDB comes with a database named "test" that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...

All done!  If you"ve completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Создадим базу данных и пользователя для cacti

mysql -u root -p

MariaDB [(none)]> CREATE DATABASE cactidb;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON cactidb.* TO               
    -> "cacti_user"@"localhost" IDENTIFIED BY "1111";
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye

Установка таблиц caacti в базу данных

Найдем расположение sql файла для cacti

sudo rpm -ql cacti | grep cacti.sql

Устанавливаем таблицы

mysql -u root -p cactidb < /usr/share/doc/cacti-1.1.26/cacti.sql

Настроим подключение cacti к базе данных в файле /etc/cacti/db.php

cat /etc/cacti/db.php

...
$database_type     = "mysql";
$database_default  = "cactidb";
$database_hostname = "localhost";
$database_username = "cacti_user";
$database_password = "1111";
$database_port     = "3306";
$database_ssl      = false;
...

Настройка веб-сервера Apache

Идем в файле настройки виртуального хоста для cacti /etc/httpd/conf.d/cacti.conf и правим секцию с разрешение доступа:

cat /etc/httpd/conf.d/cacti.conf

...
Alias /cacti    /usr/share/cacti

<Directory /usr/share/cacti/>
        <IfModule mod_authz_core.c>
                # httpd 2.4
                Require all granted
        </IfModule>
</Directory>
...

Перезапускаем веб-сервер

httpd -t

Syntax OK

sudo systemctl restart httpd

Настройка cron для работы Cacti

В файле /etc/cron.d/cacti раскоментируем строку

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

Установка Cacti

Заходим на веб-интерфейс сервера и продолжаем установку http://ip-адрес/cacti

Принимаем лицензионное соглашение

Лицензионное соглашение

Далее перехоим к странице проверки предустановочных настроек, если будет ошибки о поддержке mysql timezone тогда выполним следующие действия:

Добавим пользователю баззы данных cacti_user привелегию "SELECT" для двух таблиц из базы данных mysql

MariaDB [mysql]> GRANT SELECT ON mysql.time_zone TO "cacti_user"@"localhost";
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]> GRANT SELECT ON mysql.time_zone_name TO "cacti_user"@"localhost";
Query OK, 0 rows affected (0.00 sec)

Выполним следующий скрипт:

sudo mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root -p mysql

Теперь можно продолжить настройку Cacti

Проверка настроек перед установкой Cacti

Жмеем далее

Выбираем тип установки "New Primary Server"

Страница с указанием расположения файлов необходимых для работы Cacti

Расположеие файлов

Проверка разрешения доступа к директориям

Проверка разрешения доступа к директориям

Выбор шаблонов для установки

Выбор шаблонов для установки

Жмем "Finish"

После окончания установки попадаем в окно входа в систему, вводим учетные данне администратора cacti, по-умолчанию admin пароль admin

Вход в систему

Нам будет предложенно ввсети новый пароль для администратора (пароль должен содержать не меньше 8 символов и один специальный символ)

Смена пароля администратора

Cacti успешно установлен






Введите ответ:

+

=



Alexeit

2019-03-15 16:14:45

Спасибо за комментарий, как будет время, обязательно сделаю


Дмитрий

2019-03-15 14:31:01

обновите на статью на новую cacti а то сильно отличаеться


Alexeit

2018-11-13 16:25:16

Спасибо за дополнение


Константин

2018-11-13 14:28:23

Надо не забыть рекомендации cacti для mysql: vi /etc/my.cnf.d/server.cnf Добавить эти строки в секцию [mysqld]:. collation-server = utf8_general_ci init-connect=''SET NAMES utf8'' character-set-server = utf8 max_heap_table_size = 128M max_allowed_packet = 16777216 tmp_table_size = 64M join_buffer_size = 64M innodb_file_per_table = on innodb_buffer_pool_size = 512M innodb_doublewrite = off innodb_additional_mem_pool_size = 80M innodb_lock_wait_timeout = 50 innodb_flush_log_at_trx_commit = 2