Перейти к содержанию
Innovialabs

Мониторинг сети офиса: SNMP, Zabbix и оповещения

Продвинутое4 мин

Коротко

Собирайте состояние каналов, коммутаторов, точек доступа, ИБП, NAS и принтеров по SNMP в систему вроде Zabbix и отправляйте в Telegram только алерты, требующие действия, с задержками и зависимостями против шума.

Коротко

Мониторинг сети офиса — это сервер, который регулярно опрашивает устройства, хранит метрики и поднимает тревогу, когда что-то сломалось или вот-вот сломается. С большинства устройств данные приходят по SNMP, инструмент вроде Zabbix превращает их в графики и триггеры, а бот в Telegram доставляет алерты тем, кто может действовать.

Цель — не собрать всё подряд, а узнать о проблеме раньше, чем позвонят пользователи.

Что мониторить

УстройствоКлючевые метрики
Интернет-каналыПотери и задержка до внешних узлов, трафик интерфейса, какой канал активен при резервировании
Роутер или firewallДоступность, CPU, память, ошибки интерфейсов, uptime (внезапный сброс — признак перезагрузки)
КоммутаторыСтатус аплинк-портов, ошибки и отбросы, бюджет мощности PoE
Точки доступаОнлайн-статус, число клиентов, загрузка канала, если контроллер её отдаёт
ИБПРабота от батареи, заряд, оставшееся время, флаг замены батареи
NAS и файловые серверыСтатус RAID, здоровье дисков (SMART), свободное место, температура
ПринтерыУровень тонера, замятие бумаги, ошибки
ВидеорегистраторДоступность, состояние дисков, идёт ли запись с камер

Начните с каналов, ядрового коммутатора, ИБП и NAS: их отказы затрагивают всех.

Основы SNMP

  • Сервер мониторинга (manager) опрашивает агента на устройстве по UDP-порту 161.
  • Устройства могут сами отправлять traps на UDP-порт 162 при событии.
  • У каждого значения есть OID — числовой адрес. OID описаны в MIB: стандартных вроде IF-MIB для интерфейсов, HOST-RESOURCES-MIB, UPS-MIB и Printer-MIB, а также в MIB производителей.
  • На быстрых интерфейсах используйте 64-битные счётчики (ifHCInOctets и подобные): 32-битные слишком быстро переполняются.

Версия важна для безопасности. SNMPv1/v2c используют community-строку, которая передаётся открытым текстом. SNMPv3 добавляет аутентификацию и шифрование. Используйте v3, где устройство поддерживает; иначе — community только для чтения, не public, и разрешите SNMP только с IP сервера мониторинга.

Проверьте, что устройство отвечает, до добавления в систему:

snmpget -v2c -c your-ro-community 192.168.10.2 1.3.6.1.2.1.1.3.0
snmpwalk -v3 -l authPriv -u monitor -a SHA -A 'auth-pass' -x AES -X 'priv-pass' 192.168.10.2 1.3.6.1.2.1.1

Первая команда возвращает uptime устройства, вторая обходит группу system по SNMPv3.

Выбор инструмента

ИнструментПодходит дляУчтите
ZabbixПолноценный мониторинг: шаблоны SNMP, триггеры, зависимости, прокси для филиаловТребует времени на настройку и доводку
LibreNMSСетевой мониторинг, автообнаружение SNMP-устройствМенее гибок для несетевых проверок
Prometheus + snmp_exporter + GrafanaКоманды, которые уже используют PrometheusБольше ручной сборки
PRTGГотовые сенсоры, работает на WindowsКоммерческий, лицензия по числу сенсоров
Uptime KumaПростые проверки доступности с уведомлениямиВ основном «работает / не работает», без глубоких метрик

Для офиса с несколькими десятками устройств Zabbix — надёжный выбор по умолчанию: бесплатный, хорошо документирован и имеет шаблоны для типового сетевого оборудования, ИБП и принтеров.

Zabbix на практике

  1. Установите сервер Zabbix с базой данных на небольшую Linux-VM или в контейнеры.
  2. Добавьте хосты с SNMP-интерфейсом и привяжите подходящий шаблон (общий SNMP, от производителя, ИБП, принтер).
  3. Храните community или учётные данные SNMPv3 в макросах, а не в каждом элементе.
  4. Дайте low-level discovery автоматически найти интерфейсы и диски.
  5. Пересмотрите триггеры и пороги, пришедшие с шаблонами.
  6. Для филиала поставьте там Zabbix proxy, чтобы опрос шёл локально.

Оповещения в Telegram

  1. Создайте бота через @BotFather и надёжно сохраните токен.
  2. Добавьте бота в группу IT-команды и узнайте chat ID группы.
  3. В Zabbix включите тип оповещений Telegram и укажите токен.
  4. Добавьте chat ID как media пользователям, которые должны получать алерты.
  5. Создайте действие: отправлять только проблемы выбранной важности и выше, включая сообщения о восстановлении.

Хорошее сообщение содержит хост, проблему, время начала и текущее значение.

Как не утонуть в алертах

Если Telegram пищит весь день, чат отключают и пропускают настоящую аварию.

  • Алертьте только то, что требует действия. Остальное — на дашборды.
  • Используйте важность. High и Disaster — в Telegram, предупреждения — в отдельный чат или ежедневную сводку.
  • Добавьте задержки. Срабатывание после нескольких неудачных проверок или по среднему за несколько минут, а не на единичный всплеск.
  • Используйте зависимости. Если упал ядровой коммутатор, подавляйте алерты по всем точкам доступа за ним.
  • Планируйте окна обслуживания на время работ.
  • Пересматривайте раз в месяц: донастройте или удалите триггеры, которые срабатывают без последствий.

Частые ошибки

  • Community public с правом записи.
  • Мониторинг только изнутри офиса: когда пропадает интернет, алерты не могут уйти. Добавьте внешнюю проверку или резервный канал.
  • Никто не следит за самим сервером мониторинга.
  • Об ИБП вспоминают только при отключении света.

Частые вопросы

Не обязательно, но может хватить и более простого инструмента с ping-проверками и уведомлениями в Telegram. Zabbix окупается, когда нужны метрики вроде здоровья дисков, тонера или времени работы ИБП.

Поможем с этим

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

Обсудить проект

Читайте также

Есть идея или задача? Расскажите нам

Ответим в течение рабочего дня и предложим решение. Консультация бесплатная.