Каким образом можно зарегистрировать активные проверки в Zabbix?

Здравствуйте! До недавнего времени мне было достаточно использования пассивного метода мониторинга, но недавно на одном из серверов произошел инцидент, в результате которого служба зависла. К счастью, это случилось в нерабочее время, и инцидент удалось избежать. Тем не менее, важно предотвратить подобные ситуации в будущем. 

Я настроил активного агента, который, по всей видимости, функционирует, так как не выдает ошибок, но также не сообщает о том, что все проходит успешно. План состоял в том, чтобы в логах найти свидетельства его работы, например, сообщение типа "Active check complete" или информацию о том, что он собрал данные для сервера. После этого я хотел бы разобраться, как их извлекать и куда направлять.

К сожалению, агент не предоставляет никакой информации. Буду признателен за вашу помощь.
  • 23 декабря 2024 г. 9:23
Ответы на вопрос 2
В Zabbix активные проверки (active checks) работают несколько иначе, чем пассивные. В случае активных проверок Zabbix агент отправляет данные напрямую на сервер, а не ждет, пока сервер их запросит. Давайте разберёмся, как правильно настроить активные проверки и как убедиться, что они работают.

### Настройка активного агента Zabbix

1. **Конфигурация агента:**
   - Откройте конфигурационный файл агента Zabbix, обычно это `/etc/zabbix/zabbix_agentd.conf`.
   - Убедитесь, что у вас установлены параметры:
     ```plaintext
     Server=<IP_адрес_сервера_Zabbix>
     Hostname=<имя_хоста_в_Zabbix>
     ```
   - Убедитесь, что `EnableRemoteCommands` установлен в `1`, если вы хотите использовать удалённые команды.

2. **Настройка активных проверок:**
   - Убедитесь, что у вас в агента включено использование активных проверок. Для этого в конфигурационном файле добавьте:
     ```plaintext
     HostnameItem=system.hostname
     ```
   - Не забудьте перезапустить Zabbix агент после изменения конфигурации:
     ```bash
     sudo systemctl restart zabbix-agent
     ```

3. **Проверка логов:**
   - Логи агентов обычно находятся в `/var/log/zabbix/zabbix_agentd.log`. Если вы не видите никаких сообщений о «Active check complete», это может указывать на проблему с отправкой данных на сервер.
   - Проверьте, что в логах нет ошибок подключения. Если вы видите сообщения, похожие на `cannot connect to <IP_сервера>:10051`, это указывает на проблему сети или конфигурации.

### Настройка элементов (items) в Zabbix

1. **Создание активного элемента в Zabbix:**
   - Перейдите в интерфейс Zabbix, зайдите в раздел `Configuration` -> `Hosts`, выберите ваш хост и добавьте новый элемент.
   - Задайте тип элемента: `Zabbix agent (active)`.
   - Укажите ключ, например, `system.uptime` для проверки времени работы системы.
   - Убедитесь, что активные проверки настроены правильно.

2. **Проверка получения данных:**
   - После настройки элементов, можно проверить, получает ли сервер данные от агента. Для этого зайдите в раздел `Monitoring` -> `Latest Data`, выберите ваш хост и посмотрите, отображаются ли данные.

### Получение уведомлений при инцидентах

1. **Создание триггеров:**
   - Чтобы вы могли получать уведомления при зависании службы, создайте триггер, который будет срабатывать при определённых условиях, например, если `service.status` (или аналогичный параметр) будет равен `0` (что означает, что служба не работает).

2. **Настройка действий:**
   - Для инфраструктуры оповещений настройте действия, чтобы отправлять уведомления через email или другие механизмы, которые позволит вам оперативно реагировать на инциденты.

### Дополнительная информация

- Убедитесь, что на самом сервере Zabbix (где работает Zabbix Server) нет фаервола, блокирующего порт 10051, так как именно на этом порту осуществляется связь между агентом и сервером.
- Для более подробной информации по вашим активным проверкам в Zabbix, можно воспользоваться разделом документации [Zabbix Active checks](https://www.zabbix.com/documentation/current/manual/agent/active_check).

С этими настроенными параметрами ваш Zabbix сервер должен начать получать данные от агент-активов, и вы сможете следить за состоянием своих серверов и служб более эффективно.
Вы точно понимаете разницу между активным и пассивным режимом? Чтобы получить алерт даже когда заббикс-агент завис, нужно не режим менять, а настраивать триггеры с nodata().
Похожие вопросы