Как установить Zabbix Monitoring Tool на CentOS 8 / RHEL 8
Zabbix — это инструмент мониторинга с открытым исходным кодом, который можно развернуть локально или в облаке в зависимости от того, что вы собираетесь отслеживать. С помощью Zabbix вы можете отслеживать различные устройства: от физических серверов до сетевых устройств, таких как маршрутизаторы и коммутаторы, в вашей ИТ-инфраструктуре, а также облачной инфраструктуре.
Последний выпуск Zabbix — Zabbix 5.0 LTS. Zabbix дает пользователям возможность выполнять следующие задачи:
- Мониторинг веб-сервисов
- Мониторинг нескольких сетевых устройств с помощью протокола SNMP.
- Контролируйте различные серверы баз данных, такие как Oracle, PostgreSQL, MySQL и Microsoft SQL Server.
- Мониторинг виртуальных машин и платформ гипервизора, таких как VMware vCenter
- Отслеживайте важные системные показатели, такие как загрузка ЦП, использование сети и доступное дисковое пространство.
В этом руководстве мы обсудим, как установить и настроить инструмент мониторинга Zabbix на CentOS 8 / RHEL 8.
Предпосылки:
Перед началом работы убедитесь, что выполнены следующие требования:
- Экземпляр CentOS 8 с минимум 2 ГБ ОЗУ и 10 ГБ доступного дискового пространства.
- Обычный пользователь с правами sudo
- Стабильное интернет-соединение
Теперь приступим к установке.
Шаг 1) Примените обновления и отключите / выключите SELinux
Всегда рекомендуется применять все доступные обновления перед началом установки Zabbix, поэтому выполните следующую команду dnf:
$ sudo dnf update -y
Чтобы Zabbix работал без сбоев, рекомендуется выключить SELinux. SELinux включен по умолчанию, и вы можете проверить статус, выполнив команду:
$ sestatus
Чтобы отключить SELinux, выполните следующую команду sed:
$ sudo sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
Перезагрузите систему CentOS 8 или RHEL 8, чтобы изменения вступили в силу.
$ sudo reboot
Шаг 2) Установите стек LAMP
Zabbix — это как интерфейсный, так и внутренний инструмент, и для его работы требуется наличие веб-сервера, движка базы данных и PHP. Все эти компоненты составляют стек LAMP . Следовательно, вам потребуется установить веб-сервер Apache, механизм базы данных (предпочтительно MariaDB), PHP и необходимые модули PHP, как показано ниже:
$ sudo dnf install -y httpd mariadb-server php php-cli php-common php-mbstring php-mysqlnd php-xml php-bcmath php-devel php-pear php-gd
После успешной установки вышеуказанных пакетов запустите веб-сервер и ядро базы данных MariaDB, как показано.
$ sudo systemctl enable httpd --now $ sudo systemctl enable mariadb --now
Шаг 3) Создайте базу данных для Zabbix
После того, как стек LAMP установлен, вам необходимо настроить базу данных для Zabbix сервера для хранения его файлов.
Перед настройкой базы данных для Zabbix, сначала установите пароль root mysql, отключите удаленный вход в систему root и удалите тестовую базу данных. Выполните команду « mysql_secure_installation », пример показан ниже:
$ sudo mysql_secure_installation
Теперь войдите на сервер MariaDB.
$ mysql -u root -p
Используйте тот же пароль root, который вы установили в приведенной выше команде.
Чтобы создать и настроить базу данных (zabbix_db), выполните команду:
CREATE DATABASE zabbix_db CHARACTER SET utf8 collate utf8_bin;
Создайте пользователя базы данных (zabbix_user), а затем предоставьте все права на базу данных.
GRANT ALL ON zabbix_db.* TO 'zabbix_user'@'localhost' IDENTIFIED BY 'P@ssw0rd@123#';
Наконец, перезагрузите таблицу грантов, чтобы изменения вступили в силу, и выйдите.
FLUSH PRIVILEGES; EXIT;
База данных для Zabbix создана, теперь настройте репозиторий Zabbix и установите сервер Zabbix в следующих шагах.
Шаг 4) Настройте репозиторий Zabbix
Репозиторий Zabbix не включен по умолчанию, и по этой причине вам необходимо вручную добавить его в вашу систему. Для этого выполните
$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
Шаг 5) Установите Zabbix Server
Имея репозиторий Zabbix, теперь продолжайте и устанавливайте Zabbix и связанные с ним пакеты, выполнив команду ниже:
$ sudo dnf install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-apache-conf
Вы получите вывод ниже как подтверждение того, что Zabbix и связанные с ним зависимости были установлены.
Теперь вы можете продолжить и запустить Zabbix-сервер, агент, веб-сервер Apache и PHP-FPM.
$ sudo systemctl start zabbix-server zabbix-agent php-fpm httpd
Затем включите запуск служб при перезагрузке или при загрузке:
$ sudo systemctl enable zabbix-server zabbix-agent php-fpm
По умолчанию Zabbix сервер прослушивает порт 10050, в то время как агент Zabbix прослушивает порт 10051 . Вы можете проверить, прослушивают ли 2 службы, запустив команду netstat, как показано ниже:
Примечание. Если команда netstat не установлена в вашей системе, сначала установите ее с помощью команды:
$ sudo dnf install net-tools -y $ sudo netstat -tunlp
Шаг 6) Настройте Zabbix Server
Первым шагом в настройке Zabbix является импорт схемы базы данных в базу данных, созданную для Zabbix на шаге 2. Итак, выполните следующие команды:
$ cd /usr/share/doc/zabbix-server-mysql/ $ sudo zcat create.sql.gz | mysql -u zabbix_user -p zabbix_db
В приведенной выше команде укажите пароль zabbix_user, который мы создали во время создания базы данных Zabbix. (В моем случае пароль zabbix_user будет P@ssw0rd@123# )
Затем укажите информацию о базе данных Zabbix в файле zabbix.conf, как показано
$ sudo vi /etc/zabbix/zabbix_server.conf
Обратите внимание на следующие атрибуты базы данных — DBHost , DBName , DBUser и DBPassword и заполните их в соответствии с учетными данными базы данных.
DBHost=localhost DBName=zabbix_db DBUser=zabbix_user DBPassword=P@ssw0rd@123#
Сохраните и выйдите из файла.
Наконец, установите часовой пояс, отредактировав файл zabbix.conf в /etc/php-fpm.d/zabbix.conf .
Например, чтобы установить часовой пояс в Лондоне (Европа), отредактируйте файл, как показано
php_value[date.timezone] = Europe/London
Вот дополнительные часовые пояса, которые вы можете использовать.
Как только вы закончите, сохраните и выйдите. Затем перезапустите службы Zabbix и PHP-FPM, чтобы изменения вступили в силу.
$ sudo systemctl restart zabbix-server zabbix-agent php-fpm httpd
Шаг 7) Настройте правила брандмауэра для Zabbix
Чтобы разрешить агенту Zabbix с других серверов доступ к серверу Zabbix, вам необходимо открыть порты Zabbix и порт 80, связанные с веб-сервером Apache, на брандмауэре. Поэтому выполните следующие команды:
$ sudo firewall-cmd --permanent --add-port=10050/tcp $ sudo firewall-cmd --permanent --add-port=10051/tcp $ sudo firewall-cmd --permanent --add-port=80/tcp
Чтобы сохранить изменения, перезагрузите брандмауэр.
$ sudo firewall-cmd --reload
Шаг 8) Завершите установку Zabbix через браузер
После того, как все настройки настроены, остается только завершить установку через браузер. Поэтому запустите браузер и просмотрите адрес сервера, как показано:
http://server-ip/zabbix
Вы получите страницу приветствия, как показано: Нажмите « Следующий шаг », чтобы перейти к следующему шагу.
На следующей странице отображаются все предварительные условия, необходимые для установки Zabbix. Если отображаются какие-либо ошибки, нажмите кнопку « Назад » и установите недостающее. Если ошибок нет, как показано, нажмите « Следующий шаг », чтобы продолжить установку.
На следующем этапе предоставьте сведения о базе данных, как показано, и нажмите « Следующий шаг ».
Затем укажите имя вашего сервера базы данных, как указано в текстовом поле « Имя ». Оставьте остальные детали как есть и нажмите » Далее «.
На следующей странице представлена сводка предоставленной вами информации о базе данных. Если все в порядке, нажмите « Следующий шаг ». В противном случае вернитесь и при необходимости внесите исправления.
Если предоставленные вами данные верны, вы получите уведомление ниже о том, что вы успешно установили Zabbix сервер. Щелкните » Готово «.
Ниже отобразится страница входа в систему: Используйте Admin в качестве имени пользователя и zabbix в качестве пароля для входа.
Наконец, вы получите панель управления, как показано на рисунке.
Браво! вам успешно удалось установить Zabbix сервер на CentOS 8.