Как установить и настроить Zabbix в Debian 9 Linux

Установка и настройка Zabbix на Debian

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

Zabbix поддерживает мониторинг как с использованием агента, так и без него. Агент Zabbix занимает мало места и может работать на различных платформах, включая Linux, UNIX, macOS и Windows.

В этом руководстве объясняется, как установить и настроить последнюю версию Zabbix 4.0 на сервере Debian 9 Linux, используя MySQL в качестве бэкэнда базы данных. Мы также покажем, как установить агент Zabbix на удалённый хост и добавить его к серверу Zabbix.

Предпосылки

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

Создание базы данных MySQL

Zabbix поддерживает MySQL /MariaDB и PostgreSQL . В этом руководстве мы будем использовать MariaDB в качестве серверной базы данных.

Если на вашем сервере Debian не установлена MariaDB, установите ее, следуя этим инструкциям .

Войдите в консоль MySQL:

 sudo mysql

Выполните следующий оператор SQL для создания новой базы данных :

 CREATE DATABASE zabbix CHARACTER SET utf8 collate utf8_bin;

Затем создайте учетную запись пользователя MySQL и предоставьте доступ к базе данных :

 GRANT ALL ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'change-with-strong-password';

Обязательно измените change-with-strong-password на надежный пароль.

После этого выйдите из консоли MySQL, введя:

 EXIT;

Установка Zabbix на Debian

На момент написания этой статьи последней стабильной версией Zabbix была версия 4.0. Пакеты Zabbix, доступные в репозиториях Debian, часто устаревают, поэтому мы будем использовать официальный репозиторий Zabbix .

1. Установка Zabbix

Загрузите последний пакет репозитория Zabbix .deb с помощью следующей команды wget :

 wget https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-2+stretch_all.deb

После загрузки файла установите его с помощью:

 sudo apt install ./zabbix-release_4.0-2+stretch_all.deb

Обновите список пакетов и установите сервер Zabbix, веб-интерфейс с поддержкой базы данных MySQL и агент Zabbix:

 sudo apt update sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent

Приведенная выше команда также установит Apache , PHP и все необходимые модули PHP.

2. Настройка PHP для интерфейса Zabbix

Во время установки создается файл конфигурации Apache со всеми необходимыми настройками Apache и PHP.

Откройте файл конфигурации, раскомментируйте строку timezone и измените её на свой часовой пояс. Полный список часовых поясов, поддерживаемых PHP, можно найти здесь .

/etc/apache2/conf-enabled/zabbix.conf

 ...  php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 php_value max_input_vars 10000 php_value always_populate_raw_post_data -1 php_value date.timezone America/Denver  ...

После этого сохраните файл и перезапустите службу Apache, чтобы изменения вступили в силу.

 sudo systemctl restart apache2

3. Настройка базы данных MySQL для сервера Zabbix

Импортируйте файл дампа MySQL, который включает начальную схему и данные для сервера Zabbix с MySQL.

 gunzip < /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix

При появлении запроса введите ранее созданный пароль пользователя. В случае успешного входа вывод не производится.

Далее откройте конфигурацию Zabbix и задайте пароль базы данных:

 sudo nano /etc/zabbix/zabbix_server.conf

Найдите следующий раздел, раскомментируйте директиву DBPassword и добавьте пароль базы данных.

/etc/zabbix/zabbix_server.conf

 ... ### Option: DBPassword # Database password. # Comment this line if no password is used. # # Mandatory: no # Default: DBPassword = change-with-strong-password ...

Сохраните и закройте файл.

Перезапустите и включите службы сервера и агента Zabbix:

 sudo systemctl restart zabbix-server zabbix-agent sudo systemctl enable zabbix-server zabbix-agent

Убедитесь, что сервер Zabbix запущен:

 sudo systemctl status zabbix-server
 ● zabbix-server.service - Zabbix Server Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-01-28 15:37:21 CST; 35s ago Main PID: 27632 (zabbix_server) CGroup: /system.slice/zabbix-server.service ...

Установка и настройка Zabbix Frontend

Веб-интерфейс Zabbix написан на PHP и позволяет настраивать сервер, просматривать собранные данные и добавлять узлы сети, которые вы хотите отслеживать.

Чтобы начать установку, откройте ваш любимый браузер и введите доменное имя вашего сервера или публичный IP-адрес, а затем /zabbix :

 http(s)://your_domain_or_ip_address/zabbix

На первом экране вы увидите приветственное сообщение. Нажмите Next step , чтобы продолжить.

Экран приветствия Zabbix

Далее вы увидите информационную страницу со списком необходимых PHP-пакетов для запуска Zabbix Frontend. Прокрутите страницу вниз, чтобы убедиться, что всё установлено и настроено правильно. После проверки нажмите Next step , чтобы продолжить.

Проверка предварительных условий Zabbix

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

Настройка подключения к базе данных Zabbix

Ввод имени сервера необязателен. Укажите его, если у вас несколько серверов мониторинга Zabbix. Если вы укажете имя, оно будет отображаться в строке меню и заголовках страниц.

Нажмите Next step , чтобы продолжить.

Подробности сервера Zabbix

На следующем экране вы увидите сводку предустановочных данных.

Краткий обзор предварительной установки Zabbix

Нажмите Next step , и после завершения установки вы будете перенаправлены на страницу с сообщением об установке веб-интерфейса Zabbix. Чтобы открыть страницу входа в Zabbix, нажмите кнопку « Finish .

Установка Zabbix

Пользователь по умолчанию — «Admin», пароль — «zabbix». Введите имя пользователя и пароль и нажмите кнопку « Log in .

Экран входа в Zabbix

После входа в систему вы будете перенаправлены на панель администрирования Zabbix.

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

Добавление нового хоста на сервер Zabbix

Процедура добавления нового узла для мониторинга на сервер Zabbix состоит из двух шагов.

Сначала вам необходимо установить агент Zabbix на удаленном хосте, а затем добавить хост к серверу Zabbix через веб-интерфейс.

Установка агента Zabbix

В этом руководстве предполагается, что на хост-машине также установлен Debian 9.

Как и при установке сервера Zabbix, выполните следующие команды, чтобы включить репозиторий Zabbix:

 wget https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-2+stretch_all.deb sudo apt install ./zabbix-release_4.0-2+stretch_all.deb

Обновите список пакетов и установите пакет агента Zabbix:

 sudo apt update sudo apt install zabbix-agent

Zabbix поддерживает два метода шифрования связи между сервером и клиентом: с помощью предварительных ключей (PSK) и на основе сертификатов. В этом руководстве мы будем использовать метод предварительных ключей (PSK) для защиты соединения между сервером и агентом.

Выполните следующую команду, чтобы сгенерировать предварительный ключ и сохранить его в файле:

 openssl rand -hex 32 | sudo tee /etc/zabbix/zabbix_agentd.psk

Ключ PSK будет выглядеть примерно так:

 fc3077ed3db8589ec920ac98a7ddea96aca205eb63bbd29c66ae91743a7ecbb6

Откройте файл конфигурации агента Zabbix:

 sudo nano /etc/zabbix/zabbix_agentd.conf

Найдите IP-адрес Server и измените его значение по умолчанию на IP-адрес вашего сервера Zabbix:

/etc/zabbix/zabbix_agentd.conf

 ... ### Option: Server # List of comma delimited IP addresses, optionally in CIDR notation, or DNS names of Zabbix servers and Zabbix proxies. # Incoming connections will be accepted only from the hosts listed here. # If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally # and '::/0' will allow any IPv4 or IPv6 address. # '0.0.0.0/0' can be used to allow any IPv4 address. # Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com # # Mandatory: yes, if StartAgents is not explicitly set to 0 # Default: # Server= Server = 127.0.0.1 ...

Затем найдите параметр TSLConnect , раскомментируйте его и установите для него значение psk :

/etc/zabbix/zabbix_agentd.conf

 ... ### Option: TLSConnect # How the agent should connect to server or proxy. Used for active checks. # Only one value can be specified: # unencrypted - connect without encryption # psk - connect using TLS and a pre-shared key # cert - connect using TLS and a certificate # # Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection) # Default: TLSConnect = psk ...

Найдите параметр TLSAccept , раскомментируйте его и установите для него значение psk :

/etc/zabbix/zabbix_agentd.conf

 ... ### Option: TLSAccept # What incoming connections to accept. # Multiple values can be specified, separated by comma: # unencrypted - accept connections without encryption # psk - accept connections secured with TLS and a pre-shared key # cert - accept connections secured with TLS and a certificate # # Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection) # Default: TLSAccept = psk ...

Затем найдите параметр TLSPSKIdentity , раскомментируйте его и задайте для него значение PSK 001 Значение должно быть уникальной строкой:

/etc/zabbix/zabbix_agentd.conf

 ... ### Option: TLSPSKIdentity # Unique, case sensitive string used to identify the pre-shared key. # # Mandatory: no # Default: TLSPSKIdentity = PSK 001 ...

Наконец, найдите параметр TLSPSKFile , раскомментируйте его и настройте так, чтобы он указывал на ранее созданный общий ключ:

/etc/zabbix/zabbix_agentd.conf

 ... ### Option: TLSPSKFile # Full pathname of a file containing the pre-shared key. # # Mandatory: no # Default: TLSPSKFile = /etc/zabbix/zabbix_agentd.psk ...

После этого сохраните и закройте файл.

Запустите службу агента Zabbix и настройте ее на запуск при загрузке с помощью:

 sudo systemctl start zabbix-agent sudo systemctl enable zabbix-agent

Затем добавьте правило брандмауэра, которое разрешит трафик с вашего сервера Zabbix через TCP-порт 10050 .

Предположим, что вы используете UFW для управления своим брандмауэром и хотите разрешить доступ с IP-адреса 192.168.121.70 вам следует выполнить следующую команду:

 sudo ufw allow proto tcp from 192.168.121.70 to any port 10050

Настройте новый хоста

Теперь, когда агент на удаленном хосте, который вы хотите отслеживать, установлен и настроен, следующим шагом будет регистрация хоста на сервере Zabbix.

Войдите в веб-интерфейс Zabbix сервера как администратор:

 http(s)://your_domain_or_ip_address/zabbix

Оказавшись внутри, в верхней панели навигации нажмите Configuration , а затем Hosts

Затем нажмите синюю кнопку Create host в правом верхнем углу экрана, и откроется страница конфигурации хоста:

Zabbix hosts хост

Введите имя хоста и IP-адрес удалённого хоста, который вы хотите отслеживать. Добавьте хост в одну или несколько групп, выбрав нужную группу из списка, или введите имя несуществующей группы, чтобы создать новую. Рекомендуемая группа — « Linux Servers .

Шаблоны хостов Zabbix

После этого перейдите на вкладку Templates . Выберите Template OS Linux и нажмите ссылку Add , чтобы добавить шаблон на хост.

Затем перейдите на вкладку Encryption . Выберите PSK для параметров Connections to host и Connections from host .

Установите значение PSK identity на PSK 001 , значение параметра TLSPSKIdentity агента Zabbix, которое вы настроили на предыдущем шаге.

В поле PSK value добавьте ключ, сгенерированный вами для агента Zabbix, который хранится в файле /etc/zabbix/zabbix_agentd.psk .

Шифрование хостов Zabbix

Наконец, чтобы добавить хост, нажмите синюю button Добавить.

Заключение

Вы успешно установили последнюю версию Zabbix в своей системе Debian и узнали, как добавлять новые хосты, которые вы хотите отслеживать.

Теперь вам следует ознакомиться с документацией Zabbix и узнать больше о настройке и использовании Zabbix.

Если у вас возникла проблема или вы хотите оставить отзыв, оставьте комментарий ниже.

Мониторинг Debian Zabbix Не используете Debian 9?
Выберите другую ОС:
центос 7 убунту 18.04

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *