Zabbix заметки: различия между версиями
(не показано 16 промежуточных версий 3 участников) | |||
Строка 35: | Строка 35: | ||
Проверить | Проверить | ||
<pre> | <pre> | ||
# mcedit /etc/ | # mcedit /etc/httpd2/conf/sites-available/default.conf | ||
</pre> | </pre> | ||
* В секциях <Directory> должна быть запись: | * В секциях <Directory> должна быть запись: | ||
Строка 87: | Строка 87: | ||
lrwxrwxrwx 1 root root 48 апр 9 21:25 httpd-multilang-errordoc.conf -> ../extra-available/httpd-multilang-errordoc.conf | lrwxrwxrwx 1 root root 48 апр 9 21:25 httpd-multilang-errordoc.conf -> ../extra-available/httpd-multilang-errordoc.conf | ||
# cat /etc/httpd2/conf/extra-enabled/ | # cat /etc/httpd2/conf/extra-enabled/A.zabbix.conf | ||
Alias /zabbix /var/www/webapps/zabbix/frontends/php | Alias /zabbix /var/www/webapps/zabbix/frontends/php | ||
<Directory "/var/www/webapps/zabbix"> | <Directory "/var/www/webapps/zabbix"> | ||
Строка 118: | Строка 118: | ||
# systemctl enable httpd2 | # systemctl enable httpd2 | ||
</pre> | </pre> | ||
== Пользователь zabbix == | == Пользователь zabbix == | ||
Для управления zabbix-процессами, выделена специальная учётная запись, имя=zabbix | Для управления zabbix-процессами, выделена специальная учётная запись, имя=zabbix | ||
Строка 215: | Строка 216: | ||
== Переходим в режим GUI, заключительного этапа установки Zabbix == | == Переходим в режим GUI, заключительного этапа установки Zabbix == | ||
Запустите Firefox и введите адрес | Запустите Firefox и введите адрес | ||
* http://ip/zabbix/frontends/php | * http://ip/zabbix/frontends/php (В дистрибутиве 8.2 с версией Zabbix 3.0 пришлось ввести "http://ip/zabbix", где ip это адрес сервера) | ||
* Мастер предварительной настройки севера zabbix проведёт Вас по шагам и задаст вопросы. | * Мастер предварительной настройки севера zabbix проведёт Вас по шагам и задаст вопросы. | ||
* После того, как на все вопросы мастера настройки будут получены ответы, возникнет окно с приглашением ввести логин и пароль для первого входа | * После того, как на все вопросы мастера настройки будут получены ответы, возникнет окно с приглашением ввести логин и пароль для первого входа | ||
Строка 221: | Строка 222: | ||
* пароль zabbix | * пароль zabbix | ||
* Не забудьте изменить пароль | * Не забудьте изменить пароль | ||
== Сохранение и Восстановление Zabbix == | == Сохранение и Восстановление Zabbix == | ||
Для того, чтобы сделать резервную копию необходимо определить файловую структуру резервного копирования.Вероятнее всего нам потребуется сохранить БД, файл конфигурации Zabbix сервера и | Для того, чтобы сделать резервную копию необходимо определить файловую структуру резервного копирования. Вероятнее всего нам потребуется сохранить БД, файл конфигурации Zabbix сервера и файл настроек серверного агента. Создадим инструкцию которая будет по расписанию crontab, примерно раз в неделю в 00ч 00м запускать файл zabb_bk с правами: | ||
<pre> | |||
home]# chmod 744 zabb_bk | |||
</pre> | |||
Поместим файл '''zabb_bk''' в каталог '''/usr/local/bin''' | |||
<pre> | |||
# crontab -e | |||
#minute (0-59), | |||
#| hour (0-23), | |||
#| | day of the month (1-31), | |||
#| | | month of the year (1-12), | |||
#| | | | day of the week (0-6 with 0=Sunday). | |||
#| | | | | commands | |||
00 00 * * 0 zabbix_bk | |||
</pre> | |||
Инструкция '''zabb_bk''' | |||
<pre> | <pre> | ||
#!/bin/bash | #!/bin/bash | ||
Строка 247: | Строка 264: | ||
rm -rf /tmp/zb_bk | rm -rf /tmp/zb_bk | ||
</pre> | </pre> | ||
Созданный архив также можно хранить на специальном сервере для резервных копий вашей компании | Созданный архив, '''zabbix_23_back.tar.bz2''', также можно хранить на специальном сервере для резервных копий вашей компании | ||
Для восстановления Zabbix после краха, необходимо полностью | Для восстановления Zabbix после краха в следствии природных, техногенных явлений или после санкционного давления, необходимо при установке нового сервера zabbix полностью восстановить '''имя''' сервера, '''IP''' сервера, '''пароль''' root mysql сервера после чего выполнить все вышеуказанные манипуляции и действия по установке вашего Zabbix сервера, сам zabbix лучше той же версии, что был, всё проверить, после чего приступить к восстановлению выполнив последовательность команд: | ||
<pre> | |||
# cd /home | |||
tar xvf zabbix_23_back.tar.bz2 | |||
cd /tmp/zb_bk | |||
mysql -uroot -pzabbix -A < all_bd.sql | |||
cp -r zabbix_server.conf /etc/zabbix/zabbix_server.conf | |||
cp -r zabbix.conf.php /var/www/webapps/zabbix/frontends/php/conf/zabbix.conf.php | |||
//перегрузить | |||
# systemctl restart mysqld | |||
# systemctl restart httpd2 | |||
</pre> | |||
== Справочная информация == | == Справочная информация == |
Текущая версия от 20:48, 30 апреля 2022
Администрирование ИТ предприятия невозможно без современных средств мониторинга и анализа, позволяющих реагировать на критические ситуации, отслеживать динамику работы серверов, рабочих станций и приложений. Из доступных СПО для мониторинга можно выделить Zabbix, лицензия GPL- несанкционный инструмент, с гибкой перенастройкой предустановленных шаблонов. Zabbix обеспечивает своевременное реагирование на внештатные ситуации в ИТ учреждениях, позволяя администратору прибывать в состоянии постоянного изумления.
Подготовка
Сервер ALT_xxx x86; x86_64
- Имя сервера Zabbix (предпочтительно)
- Запуск сценария предустановки ("вытягивает" необходимые пакеты)
# apt-get install zabbix-preinstall
Если из Synaptic
- zabbix-preinstall
Проверяем наличие требуемых пакетов:
# apt-get install zabbix-phpfrontend-apache2 # apt-get install zabbix-phpfrontend-engine # apt-get install zabbix-server-mysql # apt-get install zabbix-phpfrontend-php5 # apt-get install zabbix-server-common # apt-get install zabbix-common # apt-get install zabbix-phpfrontend-apache2-mod_php5 # apt-get install zabbix-agent # apt-get install apache2 # apt-get install MySQL-server # apt-get install php5-sockets # apt-get install php5-xmlreader # apt-get install php5-ldap
Настройка Apache2
Редактировать пути:
# mcedit /etc/httpd2/conf/sites-available/default.conf DocumentRoot "/var/www/html/" <Directory "/var/www/html/">
Проверить
# mcedit /etc/httpd2/conf/sites-available/default.conf
- В секциях <Directory> должна быть запись:
<Directory> Require all granted </Directory>
- Права на каталоги:
# chown -R apache2:apache2 /var/www/webapps # chmod -R 771 /var/www/webapps # namei -mol /var/www/webapps/zabbix/ drwxrws--x apache2 apache2 webapps
- Права рекурсивно на файлы и каталоги:
# find /var/www/webapps/zabbix -type f -exec chmod 644 {} \; # find /var/www/webapps/zabbix -type d -exec chmod 755 {} \;
- Просмотр прав каталога zabbix:
# namei -mol /var/www/webapps/zabbix/frontends/php/ drwxrws--x apache2 apache2 webapps drwxr-xr-x apache2 apache2 zabbix drwxr-xr-x apache2 apache2 frontends drwxr-xr-x apache2 apache2 php -rw-r--r-- apache2 apache2 zabbix.php
- Проверить наличие символической ссылки
//или # mcedit ----------------------------------------- Имя существующего файла (для ссылки): /etc/httpd2/conf/addon.d/A.zabbix.conf Имя символической ссылки: /etc/httpd2/conf/extra-enabled/A.zabbix.conf -------------------------------------------- //или # ln -s /etc/httpd2/conf/addon.d/A.zabbix.conf /etc/httpd2/conf/extra-enabled # ls -la /etc/httpd2/conf/extra-enabled/ ... lrwxrwxrwx 1 root root 38 апр 21 21:47 A.zabbix.conf -> /etc/httpd2/conf/addon.d/A.zabbix.conf lrwxrwxrwx 1 root root 39 апр 9 21:25 httpd-autoindex.conf -> ../extra-available/httpd-autoindex.conf lrwxrwxrwx 1 root root 37 апр 9 21:25 httpd-default.conf -> ../extra-available/httpd-default.conf lrwxrwxrwx 1 root root 35 апр 9 21:25 httpd-icons.conf -> ../extra-available/httpd-icons.conf lrwxrwxrwx 1 root root 39 апр 9 21:25 httpd-languages.conf -> ../extra-available/httpd-languages.conf lrwxrwxrwx 1 root root 34 апр 9 21:25 httpd-mime.conf -> ../extra-available/httpd-mime.conf lrwxrwxrwx 1 root root 33 апр 9 21:25 httpd-mpm.conf -> ../extra-available/httpd-mpm.conf lrwxrwxrwx 1 root root 48 апр 9 21:25 httpd-multilang-errordoc.conf -> ../extra-available/httpd-multilang-errordoc.conf # cat /etc/httpd2/conf/extra-enabled/A.zabbix.conf Alias /zabbix /var/www/webapps/zabbix/frontends/php <Directory "/var/www/webapps/zabbix"> Options FollowSymLinks AllowOverride AuthConfig Limit Order allow,deny Allow from all </Directory> # service httpd2 restart //или # systemctl restart httpd2
Редактирвать php
# mcedit /etc/php/5.x/apache2-mod_php/php.ini max_execution_time = 600 max_input_time = 600 memory_limit = 256М post_max_size = 32M upload_max_filesize = 20M date.timezone = Europe/Moscow always_populate_raw_post_data= -1 # service httpd2 restart # service httpd2 on //или # systemctl restart httpd2 # systemctl enable httpd2
Пользователь zabbix
Для управления zabbix-процессами, выделена специальная учётная запись, имя=zabbix
- Пользователь zabbix и группа zabbix создаётся автоматически, при установке zabbix-agent
# apt-get install zabbix-agent # id zabbix uid=xxx(zabbix) gid=xxx(zabbix) группы=xxx(zabbix),19(proc)
Ручная установка учётной записи имя=zabbix
# groupadd zabbix # useradd -g zabbix zabbix //Права на каталоги # namei -mol /var/log/zabbix/ drwxr-xr-x root root / drwxr-xr-x root root var drwxr-xr-x root root log drwxrwxr-t root zabbix zabbix # namei -mol /var/run/zabbix/ drwxr-xr-x root root / drwxr-xr-x root root var drwxr-xr-x root root run drwxr-xr-x zabbix zabbix zabbix
Установка пароля, только для серверной учётной записи, имя=zabbix
# passwd zabbix ........... Enter new password: zabbix Re-type new password: zabbix
Настройка MySQL
Запускаем mysql
# service mysqld start # chkconfig mysqld on //или # systemctl start mysqld # systemctl enable mysqld
Устанавливаем пароль mysql
# mysqladmin -u root password zabbix
Создание БД, имя zabbix
# mysql -uroot -pzabbix # mysql> create database zabbix character set utf8;
создание суперпользователя БД zabbix; имя zabbix, пароль zabbix
# mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; # mysql> exit
Импорт шаблонов zabbix в БД mysql
# ls -l /usr/share/doc //смотрим какая версия MySQL # cd /usr/share/doc/zabbix-server-mysql-x.x.x //или # cd /usr/share/doc/zabbix-common-database-mysql-x.x.xx
Выполняем импорт:
# mysql -uroot -pzabbix zabbix < schema.sql # mysql -uroot -pzabbix zabbix < images.sql # mysql -uroot -pzabbix zabbix < data.sql
Перегружаем mysql
# service mysqld restart //или # systemctl restart zabbix_mysql
Проверка БД
# mysqlcheck -uroot -pzabbix --auto-repair --check --all-databases
Размер БД
# mysql -uroot -pzabbix mysql> SELECT table_schema "databases name", sum( data_length + index_length) / 1024 / 1024 "Data Base Size in MB" FROM information_schema.TABLES GROUP BY table_schema ; +--------------------+----------------------+ | databases name | Data Base Size in MB| +--------------------+----------------------+ | information_schema | 0.15625000 | | mysql | 2.28296661 | | performance_schema | 0.00000000 | | sys | 0.01562500 | | zabbix | 1623.98437500 | +--------------------+----------------------+ 5 rows in set, 48 warnings (0,80 sec) mysql> quit
Переходим в режим GUI, заключительного этапа установки Zabbix
Запустите Firefox и введите адрес
- http://ip/zabbix/frontends/php (В дистрибутиве 8.2 с версией Zabbix 3.0 пришлось ввести "http://ip/zabbix", где ip это адрес сервера)
- Мастер предварительной настройки севера zabbix проведёт Вас по шагам и задаст вопросы.
- После того, как на все вопросы мастера настройки будут получены ответы, возникнет окно с приглашением ввести логин и пароль для первого входа
- логин admin
- пароль zabbix
- Не забудьте изменить пароль
Сохранение и Восстановление Zabbix
Для того, чтобы сделать резервную копию необходимо определить файловую структуру резервного копирования. Вероятнее всего нам потребуется сохранить БД, файл конфигурации Zabbix сервера и файл настроек серверного агента. Создадим инструкцию которая будет по расписанию crontab, примерно раз в неделю в 00ч 00м запускать файл zabb_bk с правами:
home]# chmod 744 zabb_bk
Поместим файл zabb_bk в каталог /usr/local/bin
# crontab -e #minute (0-59), #| hour (0-23), #| | day of the month (1-31), #| | | month of the year (1-12), #| | | | day of the week (0-6 with 0=Sunday). #| | | | | commands 00 00 * * 0 zabbix_bk
Инструкция zabb_bk
#!/bin/bash TEMPDIR=/tmp/zb_bk/ BACKUPDIR=/home/ mkdir -p $TEMPDIR # Стор Apache2 systemctl stop httpd2 # Стоп zabbix mysql systemctl stop zabbix_mysql # Создать dump MySQL и копировать во временный каталог mysqldump -uroot -pzabbix -A > $TEMPDIR/all_bd.sql # Старт Apache2 systemctl start httpd2 # Старт zabbix mysql systemctl start zabbix_mysql # Копировать каталоги во временную директорию cp -r /etc/zabbix/zabbix_server.conf $TEMPDIR cp -r /var/www/webapps/zabbix/frontends/php/conf/zabbix.conf.php $TEMPDIR # Сжать и добавить дату создания(максимально до 31 дня месяца) tar -cjf $BACKUPDIR/zabbix_`date +%d`_back.tar.bz2 $TEMPDIR # Очистить временный каталог rm -rf /tmp/zb_bk
Созданный архив, zabbix_23_back.tar.bz2, также можно хранить на специальном сервере для резервных копий вашей компании Для восстановления Zabbix после краха в следствии природных, техногенных явлений или после санкционного давления, необходимо при установке нового сервера zabbix полностью восстановить имя сервера, IP сервера, пароль root mysql сервера после чего выполнить все вышеуказанные манипуляции и действия по установке вашего Zabbix сервера, сам zabbix лучше той же версии, что был, всё проверить, после чего приступить к восстановлению выполнив последовательность команд:
# cd /home tar xvf zabbix_23_back.tar.bz2 cd /tmp/zb_bk mysql -uroot -pzabbix -A < all_bd.sql cp -r zabbix_server.conf /etc/zabbix/zabbix_server.conf cp -r zabbix.conf.php /var/www/webapps/zabbix/frontends/php/conf/zabbix.conf.php //перегрузить # systemctl restart mysqld # systemctl restart httpd2
Справочная информация
Конфиги
- Агент на сервере
# vim /etc/zabbix/zabbix_server.conf DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix
- Агент на клиентах ALT(овых)
# vim /etc/zabbix/zabbix_agentd.conf ListenPort=10050 ServerActive=zabbix.ivn Hostname=zabbix
- Основной Zabbix конфиг
# vim /var/www/webapps/zabbix/frontends/php/conf/zabbix.conf.php <?php // Zabbix GUI configuration file. global $DB; $DB['TYPE'] = 'MYSQL'; $DB['SERVER'] = 'localhost'; $DB['PORT'] = '0'; $DB['DATABASE'] = 'zabbix'; $DB['USER'] = 'zabbix'; $DB['PASSWORD'] = 'zabbix'; // Schema name. Used for IBM DB2 and PostgreSQL. $DB['SCHEMA'] = ''; $ZBX_SERVER = 'localhost'; $ZBX_SERVER_PORT = '10051'; $ZBX_SERVER_NAME = 'zabbix'; $IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG; ?>
Службы Zabbix
- Сервер Zabbix
# service zabbix_mysql start|stop|restart|status //или # systemctl start|stop|restart|status zabbix_mysql
- Агент Zabbix для ALT(овых)
# service zabbix_agentd start|stop|restart|status //или # systemctl start|stop|restart|status zabbix_agentd
- Сервер MySql
# service mysqld start|stop|restart|status //или # systemctl start|stop|restart|status mysqld
- Сервер Appache2
# service httpd2 start|stop|restart|status //или # systemctl start|stop|restart|status httpd2
Журналы Zabbix
# tail -f /var/log/zabbix/zabbix_server.log //сервер # tail -f /var/log/zabbix/zabbix_agentd.log //агент # journalctl -f //OC
Порты zabbix
# netstat -tulpn|grep zabbix
Версия агента Zabbix
# zabbix_agentd -V
Каталоги для архивации
# mysqldump -uroot -pzabbix -A>zabb_bk.sql # /etc/php # /etc/zabbix # /var/www/webapps/zabbix
Основная документация Zabbix [1]