Версия Zabbix: 7.4
ОС: Debian 13 (Trixie)
Подключение репозитория Zabbix 7.4:
wget https://repo.zabbix.com/zabbix/7.4/release/debian/pool/main/z/zabbix-release/zabbix-release_latest_7.4+debian13_all.deb
dpkg -i zabbix-release_latest_7.4+debian13_all.deb
apt update
Установка Zabbix Agent 2:
apt install -y zabbix-agent2
Включаем и запускаем сервис:
systemctl enable zabbix-agent2
systemctl start zabbix-agent2
systemctl status zabbix-agent2
Все правки делаем через sed — не открывая редактор вручную.
Задаём переменные под свою среду:
ZABBIX_SERVER="192.168.1.100" # IP или HOSTNAME вашего Zabbix Server
AGENT_HOSTNAME="my-debian-host" # Имя хоста (должно совпадать с именем в веб-интерфейсе)
CONF="/etc/zabbix/zabbix_agent2.conf"
Применяем настройки:
# Zabbix Server — принимать пассивные запросы только от этого IP
sed -i "s/^Server=.*/Server=${ZABBIX_SERVER}/" $CONF
# Zabbix Server — куда отправлять активные данные
sed -i "s/^ServerActive=.*/ServerActive=${ZABBIX_SERVER}/" $CONF
# Имя хоста — должно точно совпадать с Host name в веб-интерфейсе Zabbix
sed -i "s/^Hostname=.*/Hostname=${AGENT_HOSTNAME}/" $CONF
Перезапускаем агент:
systemctl restart zabbix-agent2
Для пассивных проверок Zabbix Agent должен быть доступен по сети для Zabbix Server или Zabbix Proxy
Hostname из конфига агента (регистр важен)Linux by Zabbix agent10050ПроксиДоступность загорелось зелёным ZBX.Если сервер не доступен со стороны Zabbix Server или Zabbix Proxy, но обратно сеть есть - используйте активные проверки.
Hostname из конфига агента (регистр важен)Linux by Zabbix agent activeПроксиДоступность загорелось зелёным ZBX.Быстрым способом будет использование встроенного плагина, но у него есть ряд недостатков, главный - отсутствие поддержки старых версий PostgreSQL, а SQL-Запросы жёстко "зашиты" внутри бинарника. Кроме того, для сбора кастомных метрик всё равно необходимо править когфигурацию на сервере, добавляя SQL-запросы. Поэтому я рекомендую использовать шаблоны от 1-го агента.
Устанавливаем плагин для Zabbix Agent 2:
apt install -y zabbix-agent2-plugin-postgresql
Перезапускаем агент:
systemctl restart zabbix-agent2
Создадим пользователя в базе данных (вместо SOMEPASSWORD укажите надёжный пароль):
CREATE USER zbx_monitor WITH PASSWORD 'SOMEPASSWORD' INHERIT;
GRANT pg_monitor TO zbx_monitor;
В Web-интерфейсе необходимо подключить шаблон PostgreSQL by Zabbix agent 2 или PostgreSQL by Zabbix agent 2 active. Так же в самом шаблоне, либо во всех хостах необходимо изменить макрос {$PG.CONNSTRING.AGENT2} на значение tcp://127.0.0.1:5432, т.к. localhost часто возвращаеть IPv6, а он далеко не всегда включён в PostgreSQL. Так же заполните макрос {$PG.PASSWORD} созданным ранее паролем.
Добавьте в конфигурацию nginx для defult server следующийlocation:
location = /basic_status {
stub_status;
allow 127.0.0.1;
allow ::1;
deny all;
}
Перезапустим nginx:
systemctl restart nginx
В Web-интерфейсе необходимо подключить шаблон Nginx by Zabbix agent. Для активного ангента шаблона не предусмотрено, но его легко сделать самому - склонировав Nginx by Zabbix agent и поменяв Zabbix агент на Zabbix агент (активный).
| Параметр | Значение |
|---|---|
| Конфиг агента | /etc/zabbix/zabbix_agent2.conf |
| Лог агента | /var/log/zabbix/zabbix_agent2.log |
| Порт пассивных проверок | 10050/tcp |
| Порт активных проверок | 10051/tcp |
| Systemd сервис | zabbix-agent2 |
Перезапуск агента
systemctl restart zabbix-agent2
Логи в реальном времени
tail -f /var/log/zabbix/zabbix_agent2.log
Версия агента
zabbix_agent2 -V
Тест конкретного ключа
zabbix_agent2 -c /etc/zabbix/zabbix_agent2.conf -t system.uptime
zabbix_agent2 -c /etc/zabbix/zabbix_agent2.conf -t agent.ping