Zabbix это свободно распространяемое программное обеспечение с открытым исходным кодом, часто используемое для мониторинга IT инфраструктуры, разработанное с использованием PHP. Применяется для мониторинга сетей, серверов, приложений, сервисов а также облачных ресурсов. Также он применяется для мониторинга устройств хранения информации, баз данных, виртуальных машин, телефонии, защите информации и многого другого.
Для разработчиков, Zabbix содержит API которое обеспечивает доступ практически ко всем функциям определенным в нем. С его помощью несложно настроить двустороннюю интеграцию с любым программным обеспечением. Вы всегда сможете использовать API для интеграции функций Zabbix в стороннее программное обеспечение.
Содержание статьи
Установка Zabbix в Debian 10
Из этой инструкции вы узнаете как установить и настроить Zabbix 4.2 Server на Debian 10 с использованием базы данных MySQL для хранения данных, Apache в качестве веб сервера и PHP для построения веб-интерфейса.
Шаг 1: Установка веб-сервера Apache и PHP
1. Прежде чем устанавливать Zabbix, необходимо установить Apache вместе с некоторыми необходимыми модулями PHP, выполнив в консоли.
apt install apache2 php php-mysql php-mysqlnd php-ldap php-bcmath php-mbstring php-gd php-pdo php-xml libapache2-mod-php
В процессе установки, установщик инициирует автоматический запуск сервиса Apache, и дает ему разрешение на запуск при загрузке системы. Вы можете проверить запущен ли сервис использовав systemctl.
systemctl status apache2
Следующие несколько команд используются для управления сервисами Apache под systemd.
systemctl start apache2
systemctl stop apache2
systemctl restart apache2
Шаг 2: Установка сервера и клиента MariaDB.
Для хранения данных Zabbix необходима система управления базами данных. По умолчанию это MySQL, но в этом руководстве мы установим MariaDB как подходящую замену для MySQL.
apt install mariadb-server mariadb-client
После завершения установки, сервис MariaDB стартует автоматически, и будет добавлен в список сервисов стартующих при запуске системы. Проверить это можно, запустив следующую команду.
systemctl status mariadb
Далее, вам необходимо будет обеспечить безопасность сервера базы данных. Для этого нужно запустить скрипт который присутствует в установленном пакете сервера и следовать инструкциям по обеспечению безопасности.
mysql_secure_installation
В процессе работы скрипт предложит вам выполнить действия для удаления анонимных пользователей, запрете удаленного подключения с правами администратора, удаления тестовых баз данных и доступа к ним и применения всех изменений.
Теперь, когда сервер баз данных защищен, нужно создать базу данных для Zabbix. Прежде всего, нужно войти в консоль управления сервером базы данных введя в командной строке
mysql -u root -p
Затем нужно выполнить следующие команды для создания базы данных и открытия доступа к ней (не забудьте поставить надежный пароль) для zabbix:
Шаг 3: Установка и настройка Zabbix Server
Теперь установка zabbix на debian 10. Для этого вам нужно добавить официальный репозиторий Zabbix в список разрешенных репозиториев, сделать это можно выполнив следующие команды.
wget https://repo.zabbix.com/zabbix/4.2/debian/pool/main/z/zabbix-release/zabbix-release_4.2-2+buster_all.deb
dpkg -i zabbix-release_4.2-2+buster_all.deb
apt update
Теперь установите сервер Zabbix, веб интерфейс, пакеты агента используя следующие команды.
apt -y install zabbix-server-mysql zabbix-frontend-php zabbix-agent
После того как установка всех пакетов полностью завершится, внесите изменения в файл конфигурации MariaDB. Сначала откройте файл конфигурации, выполнив команду:
vim /etc/mysql/my.cnf
И добавьте в секцию [mysqld] следующую строку:
В результате содержимое файла должно выглядеть так:
Сохраните файл и закройте его. Затем импортируйте структуру и данные в базу данных Zabbix, созданную вами ранее.
После импорта базы строчку из конфига MySQL можно убрать. Это свежий баг, его уже исправили в бета версии, но на момент написания статьи Zabbix можно установить только так. Затем, выполните настройку сервиса Zabbix для использования созданной вами базы данных, для этого нужно будет отредактировать файл /etc/zabbix/zabbix_server.conf.
vim /etc/zabbix/zabbix_server.conf
Найдите следующие настройки конфигурации, и обновите их значения в соответствии с настройками базы данных. Заметьте, что вам нужно раскомментировать закоментированные опции, и установить для них корректные значения.
Затем сохраните изменения в файле, и закройте его. Вам нужно настроить корректную работу PHP с интерфейсом Zabbix, определив свой часовой пояс в файле /etc/zabbix/apache.conf.
vim /etc/zabbix/apache.conf
Найдите раздел конфигурации для вашей версии PHP, например, PHP 7.x. затем раскомментируйте следующую строку (удалив символ " # " в начале), чтобы включить часовой пояс для вашего сервера, как показано на скриншоте.
Сохраните изменения и закройте файл. Затем перезапустите сервер Apache чтобы применить внесенные изменения.
Благодаря правильной настройке среды, вы можете запустить процессы Zabbix server и agent, и включить их автозапуск при загрузке системы, как показано на рисунке.
systemctl start zabbix-server zabbix-agent
systemctl enable zabbix-server zabbix-agent
Затем, для верности, проверьте состояние Zabbix сервера, используя следующую команду.
systemctl status zabbix-server
Кроме того, убедитесь, что процесс zabbix agent загружен и активен, проверив его статус, как показано на рисунке. Помните, что агент, который вы запустили, работает и отслеживает локальную машину. Если вы хотите контролировать удаленные серверы, установите и настройте агенты на этих серверах.
systemctl status zabbix-agent
Для того чтобы получить доступ к веб-интерфейсу Zabbix, о котором пойдет речь в следующем разделе, и у вас запущен брандмауэр UFW, вам нужно настроить его, открыв порты 80(HTTP) и 443(HTTPS), чтобы разрешить трафик на сервер Apache.
ufw allow 80/tcp
ufw allow 443/tcp
ufw reload
Установка zabbix debian завершена.
Шаг 4: Настройка веб-интерфейса Zabbix
Дальше настройка zabbix debian. Прежде чем вы начнете использовать веб-интерфейс Zabbix для мониторинга, вам нужно будет настроить его с помощью веб-установщика. Чтобы получить доступ к установщику, откройте веб-браузер и укажите в адресной строке следующий URL.
Или:
Как только вы кликнете вперед или нажмете Enter, вы попадете на страницу приветствия, показанную на следующем скриншоте. Чтобы запустить процесс установки нажмите Next step.
20. Затем установщик проверит необходимые зависимости, как показано на скриншоте, если все необходимые модули PHP и параметры конфигурации в порядке (прокрутите вниз, чтобы просмотреть дополнительные требования), нажмите кнопку Next step, чтобы продолжить.
Затем введите параметры подключения к базе данных чтобы интерфейс Zabbix мог к ней подключиться. Выберите тип базы данных (MySQL), укажите хост базы данных, порт базы данных, имя базы, имя пользователя и пароль, как показано на скриншоте.
После этого, введите данные Zabbix сервера (имя хоста или IP-адрес хоста и номер порта хост-сервера). При необходимости задайте имя для установки.
23. Теперь установщик должен показать вам итоговую страницу с итоговыми настройками установки. Если все в порядке, нажмите кнопку Next step, для завершения установки.
Нажмите Finish, и вы будете перенаправлены на страницу входа, показанную на следующем снимке экрана.
Для входа, введите в поле Username строку Admin, и в поле Password строку zabbix
После того, как вы войдете в систему, вы увидите открытый раздел Monitoring и секцию Dashboard. На главном экране будет отображаться информация о системе, список проблем по степени серьезности, общий список проблем, местное время и другие параметры, как показано на скриншоте.
Важным шагом является смена пароля учетной записи администратора по умолчанию. Для этого перейдите в раздел Administration ==> Users.
В открывшемся списке пользователей, выберите пользователя Admin, чтобы открыть сведения о пользователе. На странице сведения о пользователе найдите поле Password и нажмите кнопку Change password. Затем введите надежный пароль, подтвердите его и нажмите кнопку Update, чтобы сохранить пароль.
Вот и все! В этой статье мы узнали, как установить Zabbix Debian 10. Как видите, всё достаточно просто, хотя в процессе установки могут возникнуть ошибки, всё можно исправить.
Мне если память не изменяет, на сайте заббикса можно через конфигуратор выбрать дистр и любую подходящую БД и конфигуратор даст инструкцию из 5-6 строк по установке "все в одном"...
Не пойму для чего усложнять процесс установки...
Как минимум для того, что в ваших 5-6 строках нет ни слова про баг с mariadb. Который в данной инструкции рассказывают как обойти.
innodb_strict_mode=OFF
Кажется ошибка в адресе конфига для apache, видимо вместо /etc/zabbix/apache.conf должно быть /etc/apache2/conf-available/zabbix-frontend-php.conf.
после zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -u zabbix -p zabbix
вот такая ошибка
ERROR 1118 (42000) at line 1284: Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current row format, BLOB prefix of 0 bytes is stored inline.
всё делал по вашему гайду
Такая же ошибка
/etc/mysql/my.cnf
[mysqld]
innodb_strict_mode = 0
и перезапускаем mysql.
если вы все правильно написали в /etc/mysql/my.cnf, то надо mysql перезапустить или ОС перезагрузить. У меня все получилось после этого.
все делал по инструкции, но при настройке через web на Configure DB connection пишит: "Details Cannot connect to the database.
The frontend does not match Zabbix database."
Куда копать?
Так же при выполнении zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -u zabbix -p zabbix
выдает ERROR 1050 (42S01) at line 1: Table 'users' already exists
Помогло пересоздания базы данных.
vim /etc/mysql/my.cnf команда не найдена :/
# dpkg -i zabbix-release_4.2-2+buster_all.deb
dpkg: предупреждение: «ldconfig» отсутствует в каталогах, перечисленных в PATH, или не является исполняемым
dpkg: предупреждение: «start-stop-daemon» отсутствует в каталогах, перечисленных в PATH, или не является исполняемым
dpkg: ошибка: в каталогах PATH не найдено 2 ожидаемые программы или исполняемых файла
Замечание: В PATH суперпользователя обычно должны присутствовать /usr/local/sbin, /usr/sbin и /sbin
Подскажите, как решить эту проблему. Спасибо!
export PATH=$PATH:/usr/sbin