Пошаговая инструкция поможет установить Zabbix Agent или Agent 2, указать адрес сервера мониторинга, безопасно включить службу и убедиться, что узел доступен.
Настройка Zabbix Agent в Linux: короткий и прямой ответ
Настройка Zabbix Agent в Linux состоит из четырёх действий: установить агент, указать сервер мониторинга в конфигурации, включить системную службу и проверить связь. Для новой установки обычно выбирают Zabbix Agent 2; классический агент используют, когда этого требует существующая конфигурация или шаблоны.
Агент собирает показатели контролируемого компьютера: загрузку процессора, использование памяти, свободное место, состояние служб и другие параметры. Затем он передаёт значения на Zabbix Server или Proxy либо отвечает на их запросы. Версия агента должна поддерживаться используемой веткой Zabbix; при большой разнице версий отдельные возможности могут отсутствовать.
До редактирования сохраните копию конфигурационного файла. Не открывайте порт агента для всего интернета: доступ должен быть только у сервера или прокси мониторинга. Правила firewall безопаснее ограничить конкретным IP-адресом или подсетью, согласованной с администратором сети.
| Режим обмена | Параметр | Как проходит соединение |
|---|---|---|
| Пассивный | Server= | Сервер или прокси подключается к агенту на TCP-порт 10050 |
| Активный | ServerActive= | Агент подключается к серверу или прокси на TCP-порт 10051 |
| Оба режима | Оба параметра | Шаблон мониторинга использует оба способа |
Почему возникает проблема или зачем нужна эта настройка
Без правильных адресов и имени узла сервер Zabbix не сможет связать полученные данные с нужным компьютером. Поэтому zabbix agent linux настройка требуется даже после успешной установки пакета: запущенная служба ещё не означает, что показатели поступают в мониторинг.
Распространённая причина ошибки — неверное имя хоста. При активных проверках значение Hostname должно полностью совпадать с именем узла, созданного в веб-интерфейсе Zabbix, включая регистр букв. Если вместо него применяют HostnameItem=system.hostname, узел на сервере должен называться так, как фактически отвечает эта проверка. Для первого подключения надёжнее указать Hostname= явно.
В пассивном режиме сервер открывает соединение с агентом. Его IP-адрес или DNS-имя нужно добавить в Server=. В активном режиме соединение начинает Linux-компьютер, поэтому важны корректный ServerActive= и исходящий доступ к порту 10051. Если между сегментами есть межсетевой экран, заранее уточните нужное правило: отключение firewall целиком ради диагностики создаёт ненужный риск.
Есть два разных пакета. zabbix-agent — классический агент, а zabbix-agent2 — Agent 2 с системой плагинов. Одновременно запускать оба агента для одинаковых показателей обычно не требуется: выберите один вариант и привяжите подходящий шаблон. Имена служб различаются: zabbix-agent и zabbix-agent2.
Что проверить и подготовить перед основными действиями
До установки узнайте адрес сервера или прокси, имя будущего узла в Zabbix, режим проверок и точную версию дистрибутива. Эти сведения нужны заранее; случайный адрес в конфигурационном файле не позволит проверить работу и может направить данные не туда.
У администратора мониторинга уточните IP-адрес или DNS-имя, применяемый порт и необходимость TLS. По умолчанию агент слушает TCP 10050 для пассивных проверок, а Zabbix Server и Proxy используют TCP 10051 для активных агентов. Если в вашей сети порты изменены, указывайте согласованные значения явно; самовольная смена ListenPort= может нарушить работу шаблонов и сетевых правил.
В терминале определите семейство системы и проверьте, не установлен ли агент ранее:
```bash
cat /etc/os-release
systemctl status zabbix-agent
systemctl status zabbix-agent2
```
Сообщение о том, что служба не найдена, нормально для чистой системы. В Debian и Ubuntu используется пакетный менеджер APT, в RHEL, Rocky Linux и AlmaLinux — DNF; в старых системах может быть доступен YUM. Версию ядра Linux для обычной пакетной установки менять не нужно.
Подготовьте учётную запись с правами sudo и резервную копию файла до изменений. Для Agent 2 обычно используется /etc/zabbix/zabbix_agent2.conf, для классического агента — /etc/zabbix/zabbix_agentd.conf. Пакет из официального репозитория следует выбирать строго под свою версию ОС и ветку Zabbix: неподходящий пакет может не установиться из-за зависимостей.
Пошаговое решение для актуальных версий системы или устройства
Для актуальных Debian, Ubuntu и RHEL-совместимых систем порядок одинаков: подключить репозиторий нужной ветки Zabbix, установить один агент, изменить конфигурацию и запустить службу. Точную команду добавления репозитория берите на странице загрузки Zabbix для версии своего дистрибутива, потому что имя пакета репозитория зависит от ОС и её выпуска.
- Подключите официальный репозиторий выбранной ветки Zabbix по инструкции для своего дистрибутива. В Debian или Ubuntu обновите сведения о пакетах командой:
```bash
sudo apt update
```
- Для Agent 2 установите пакет одной из команд:
```bash
sudo apt install zabbix-agent2
sudo dnf install zabbix-agent2
```
Первая команда предназначена для Debian/Ubuntu, вторая — для RHEL-подобных систем. Для классического варианта замените zabbix-agent2 на zabbix-agent. Не устанавливайте оба варианта без согласованного плана миграции.
- Сделайте копию файла и откройте его в редакторе. Для Agent 2:
```bash
sudo cp /etc/zabbix/zabbix_agent2.conf /etc/zabbix/zabbix_agent2.conf.bak
sudo nano /etc/zabbix/zabbix_agent2.conf
```
- Найдите или добавьте параметры, заменив примерные значения на реальные:
```ini
Server=192.0.2.10
ServerActive=192.0.2.10:10051
Hostname=linux-host-01
```
192.0.2.10 и linux-host-01 — адрес и имя из диапазона примеров, они не подходят для реальной сети. Для пассивных проверок Server= обязателен: перечислите через запятую разрешённые адреса сервера и прокси. Для активных проверок укажите ServerActive=. Не передавайте в переписке строки с PSK, закрытыми ключами или содержимое сертификатов.
- Включите автозапуск и сразу запустите службу:
```bash
sudo systemctl enable --now zabbix-agent2
systemctl status zabbix-agent2 --no-pager
```
Для классического агента замените имя службы на zabbix-agent. Если в узле Zabbix задано шифрование TLS, агент должен использовать тот же режим. Сертификаты и PSK получайте только через принятый в организации защищённый канал: случайная замена ключей отключит обмен данными.
Типичные ошибки, безопасный откат и проверка результата
Успешный результат — служба находится в состоянии active, журнал не сообщает об отказах соединения, а в интерфейсе Zabbix появляются свежие данные. Проверяйте метрики после одного-двух интервалов обновления шаблона: одного зелёного статуса процесса недостаточно.
Для первичной диагностики используйте статус службы и последние записи журнала:
```bash
sudo systemctl status zabbix-agent2 --no-pager
sudo journalctl -u zabbix-agent2 -n 50 --no-pager
```
Для классического агента замените имя службы. Ошибка connection refused обычно означает, что целевой сервис недоступен по указанному адресу или порту. Timeout часто связан с маршрутизацией, DNS или firewall. Ошибки TLS говорят о несовпадении режима шифрования, сертификатов либо ключей.
При активных проверках журнал должен показать получение списка active checks. Для пассивного агента администратор сервера мониторинга может проверить его из своей сети командой zabbix_get -s 192.0.2.20 -k agent.ping. Ответ 1 подтверждает, что агент ответил на базовую проверку. Команду запускают со стороны сервера или прокси, откуда действительно будет выполняться мониторинг.
Если служба перестала запускаться после правки, верните сохранённую копию:
```bash
sudo cp /etc/zabbix/zabbix_agent2.conf.bak /etc/zabbix/zabbix_agent2.conf
sudo systemctl restart zabbix-agent2
```
Такой откат отменит ваши изменения конфигурации, но не удалит пакет и уже собранные сервером данные. Если файл до вас меняли другие специалисты, сначала выполните sudo diff -u /etc/zabbix/zabbix_agent2.conf.bak /etc/zabbix/zabbix_agent2.conf, чтобы не затереть их настройки.
FAQ
Почему Zabbix Agent запущен, но узел недоступен?
Проверьте совпадение Hostname с именем узла при активных проверках, а также адрес и порт в ServerActive=. Для пассивного режима адрес сервера или прокси должен присутствовать в Server=. Последние строки journalctl обычно позволяют отличить ошибку сети от ошибки TLS.
Можно ли использовать одновременно Zabbix Agent и Agent 2?
Технически пакеты могут быть установлены вместе, но двум агентам не следует без продуманной схемы обслуживать одинаковые показатели или один порт. Для обычного узла выберите один агент и совместимый шаблон. При миграции согласуйте порядок действий с администратором Zabbix.
Как безопасно проверить, что агент отвечает?
Сначала убедитесь, что служба работает, затем проверьте её журнал. Для пассивного режима администратор может выполнить с сервера мониторинга zabbix_get с ключом agent.ping и получить ответ 1. Открывать TCP-порт 10050 для всего интернета для такой проверки нельзя.
Когда лучше обратиться к специалисту?
Помощь нужна, если используется TLS с PSK или сертификатами, путь проходит через VPN, NAT или строгий корпоративный firewall, либо служба сообщает об ошибке синтаксиса конфигурации. Не меняйте ключи, сертификаты и сетевые правила наугад: это может отключить мониторинг других узлов.
