Эта статья посвящена особенностям мониторинга сетевого оборудования с помощью протокола SNMPv3. Мы поговорим об SNMPv3, я поделюсь своими наработками по созданию полноценных шаблонов в Zabbix, и покажу, чего можно добиться при организации распределенного алертинга в большой сети. Протокол SNMP является основным при мониторинге сетевого оборудования, а Zabbix отлично подходит для мониторинга большого количества объектов и обобщения значительных объемов поступающих метрик.
Несколько слов об SNMPv3
Начнем с назначения протокола SNMPv3, и особенностей его использования. Задачи SNMP – мониторинг сетевых устройств, и элементарное управление, с помощью отправки на них простых команд (например, включение и отключение сетевых интерфейсов, или перезагрузка устройства).
Главное отличие протокола SNMPv3 от его предыдущих версий, это классические функции безопасности [1-3], а именно:
- аутентификация (Authentication), определяющая, что запрос получен от доверенного источника;
- шифрование (Encryption), для предотвращения раскрытия передаваемых данных при их перехвате третьими лицами;
- целостность (Integrity), то есть гарантия того, что пакет не был подделан при передаче.
SNMPv3 вводит понятие уровней безопасности — допустимых уровней безопасности, определяющих настройку оборудования и поведение SNMP-агента объекта мониторинга. Сочетание модели безопасности и уровня безопасности определяет, какой механизм безопасности используется при обработке пакета SNMP [4].
ZABBIX — Мониторинг сетевых устройств через SNMP
В таблице описаны комбинации моделей и уровней безопасности SNMPv3 (первые три столбца я решил оставить как в оригинале):
Соответственно, мы будем использовать SNMPv3 в режиме аутентификации с применением шифрования.
Настройка SNMPv3
Мониторинг сетевого оборудования предполагает одинаковую настройку протокола SNMPv3 и на сервере мониторинга, и на наблюдаемом объекте.
Начнем с настройки сетевого устройства Cisco, его минимально необходимая конфигурация выглядит следующим образом (для конфигурирования используем CLI, имена и пароли я упростил во избежание путаницы):
snmp-server group snmpv3group v3 priv read snmpv3name snmp-server user snmpv3user snmpv3group v3 auth md5 md5v3v3v3 priv des des56v3v3v3 snmp-server view snmpv3name iso included
Первая строка snmp-server group – определяет группу SNMPv3-пользователей (snmpv3group), режим чтения (read), и право доступа группы snmpv3group на просмотр определенных веток MIB-дерева объекта мониторинга (snmpv3name далее в конфигурации задает, к каким веткам MIB-дерева группа snmpv3group сможет получить доступ).
Вторая строка snmp-server user – определяет пользователя snmpv3user, его принадлежность к группе snmpv3group, а так же применение аутентификации md5 (пароль для md5 — md5v3v3v3) и шифрования des (пароль для des — des56v3v3v3). Разумеется, вместо des лучше использовать aes, здесь я его привожу просто для примера. Так же при определении пользователя можно добавить список доступа (ACL), регламентирующий IP-адреса серверов мониторинга, имеющих право осуществлять мониторинг данного устройства – это так же best practice, но я не буду усложнять наш пример.
Huawei. Настройка SNMP. Проверка утилитой snmpwalk.
Третья строка snmp-server view определяет кодовое имя, которое задает ветки MIB-дерева snmpv3name, чтобы их могла запрашивать группа пользователей snmpv3group. ISO, вместо строгого определения какой-то одной ветки, позволяет группе пользователей snmpv3group получать доступ ко всем объектам MIB-дерева объекта мониторинга.
Аналогичная настройка оборудования Huawei (так же в CLI) выглядит следующим образом:
snmp-agent mib-view included snmpv3name iso snmp-agent group v3 snmpv3group privacy read-view snmpv3name snmp-agent usm-user v3 snmpv3user group snmpv3group snmp-agent usm-user v3 snmpv3user authentication-mode md5 md5v3v3v3 snmp-agent usm-user v3 snmpv3user privacy-mode des56 des56v3v3v3
После настройки сетевых устройств, необходимо проверить наличие доступа с сервера мониторинга по протоколу SNMPv3, я воспользуюсь snmpwalk:
snmpwalk -v 3 -u snmpv3user -l authPriv -A md5v3v3v3 -a md5 -x des -X des56v3v3v3 10.10.10.252
Более наглядный инструмент для запроса конкретных OID-объектов, с использованием MIB-фалов – snmpget:
Теперь перейдем к настройке типового элемента данных для SNMPv3, в рамках Zabbix-шаблона. Для простоты и независимости от MIB, я использую цифровые OID:
Я использую в ключевых полях пользовательские макросы, поскольку они будут одинаковы для всех элементов данных в шаблоне. Задавать их можно в рамках шаблона, если в Вашей сети у всех сетевых устройств параметры SNMPv3 одинаковы, или в рамках узла сети, если параметры SNMPv3 для разных объектов мониторинга отличаются:
Обратите внимание, система мониторинга располагает только именем пользователя, и паролями для аутентификации и шифрования. Группа пользователей и область MIB-объектов, к которым разрешен доступ, задается на объекте мониторинга.
Теперь перейдем к наполнению шаблона.
Шаблон опроса в Zabbix
Простое правило при создании любых шаблонов опроса – делать их максимально подробными:
Я уделяю большое внимание инвентаризации, чтобы с большой сетью было удобнее работать. Об этом немного позднее, а пока – триггеры:
Для удобства визуализации триггеров в их названия заложены системные макросы , чтобы на дашборде в разделе алёртинга выводились не только имена устройств, но и IP-адреса, хотя это больше вопрос удобства, чем необходимости. Для определения недоступности устройства, помимо обычного echo-запроса, я использую проверку на недоступность узла по протоколу SNMP, когда объект доступен по ICMP, но не отвечает на SNMP-запросы – такая ситуация возможна, например, при дублировании IP-адресов на разных устройствах, из-за некорректно настроенных межсетевых экранов, или неверных настроек SNMP на объектах мониторинга. Если использовать проверку доступности узлов только по ICMP, в момент расследования инцидентов в сети, данных мониторинга может не оказаться, поэтому их поступление нужно контролировать.
Перейдем к обнаружению сетевых интерфейсов – для сетевого оборудования это самая важная функция мониторинга. Поскольку на сетевом устройстве могут быть сотни интерфейсов, необходимо фильтровать ненужные, чтобы не загромождать визуализацию и не захламлять базу данных.
Я использую стандартную функцию обнаружения для SNMP, с большим количеством обнаруживаемых параметров, для более гибкой фильтрации:
discovery[,1.3.6.1.2.1.2.2.1.2,,1.3.6.1.2.1.31.1.1.1.18,,1.3.6.1.2.1.2.2.1.7]
При таком обнаружении, можно фильтровать сетевые интерфейсы по их типам, пользовательским описаниям «description», и административным статусам портов. Фильтры и регулярные выражения для фильтрации в моем случае выглядят следующим образом:
При обнаружении будут исключены следующие интерфейсы:
- выключенные вручную (adminstatus<>1), благодаря IFADMINSTATUS;
- не имеющие текстового описания, благодаря IFALIAS;
- имеющие в текстовом описании символ *, благодаря IFALIAS;
- являющиеся служебными или техническими, благодаря IFDESCR (в моем случае, в регулярных выражениях IFALIAS и IFDESCR проверяются одним регулярным выражением alias).
Итоги мониторинга
Для начала – инвентаризация небольшой сети:
Если подготовить шаблоны для каждой серии сетевых устройств – можно добиться удобной для анализа компоновки сводных данных по актуальному ПО, серийным номерам, и оповещении о приходе в серверную уборщицы (по причине малого Uptime). Выдержка моего списка шаблонов ниже:
А теперь – главная панель мониторинга, с распределенными по уровням важности триггерами:
Благодаря комплексному подходу к шаблонам для каждой модели устройств в сети, можно добиться того, что в рамках одной системы мониторинга будет организован инструмент для прогнозирования неисправностей и аварий (при наличии соответствующих датчиков и метрик). Zabbix хорошо подходит для мониторинга сетевых, серверных, сервисных инфраструктур, и задача обслуживания сетевого оборудования наглядно демонстрирует её возможности.
Список использованных источников:
1. Hucaby D. CCNP Routing and Switching SWITCH 300-115 Official Cert Guide. Cisco Press, 2014. pp. 325-329.
2. RFC 3410. tools.ietf.org/html/rfc3410
3. RFC 3415. tools.ietf.org/html/rfc3415
4. SNMP Configuration Guide, Cisco IOS XE Release 3SE. Chapter: SNMP Version 3. www.cisco.com/c/en/us/td/docs/ios-xml/ios/snmp/configuration/xe-3se/3850/snmp-xe-3se-3850-book/nm-snmp-snmpv3.html
Источник: habr.com
Русские Блоги
zabbix2.0 мониторинг экземпляра коммутатора Huawei Quidway S9306 [завершено]
1. Установка Zabbix 2.0
Пожалуйста, найдите способ установки zabbix 2.0 самостоятельно
2. Откройте приложение SNMP.
Сервер zabbix контролирует коммутатор по протоколу snmp. Поэтому сначала нужно включить на коммутаторе приложение SNMP:
system-view Enter system view, return user view with Ctrl+Z. [Quidway]snmp-agent [Quidway]snmp-agent local-engineid 800063A203000FE207F2E0 [Quidway]snmp-agent community read public [Quidway]snmp-agent sys-info version all [Quidway]snmp-agent target-host inform address udp-domain 133.96.7.248 udp-port 161 params securityname network(securityname) v2c [Quidway]snmp-agent trap enable basetrap Ноты: udp-domain 133.96.7.248 // ip-адрес zabbix сервера udp-port 161 // Мониторинг порта snmp-agent community read public // Имя сообщества public
в После того, как на коммутаторе будет включен протокол SNMP, вы можете проверить, можно ли найти коммутатор на сервере zabbix:
Из результата вывода команды «snmpwalk -v 2c -c public 133.96.7.254.1.3.6.1.2.1.1.0» видно, что поиск коммутатора Quidway S9306 был успешно выполнен.
Инструкции на приведенном выше рисунке: -v: номер версии SNMP; -c public: имя сообщества; IP-адрес: IP-адрес управляемого коммутатора; .1.3.6.1.2.1.1.0: oid (дополнительные сведения об OID см. В предыдущей статье Блог, в основном знакомит с snmp oid).
3. Создайте шаблон мониторинга.
Так как zabbix не имеет этого шаблона мониторинга по умолчанию, вам необходимо создать шаблон самостоятельно, что также является гибкостью zabbix. Адрес загрузки шаблона:http://down.51cto.com/data/743272
4. Импортируйте шаблон мониторинга.
Распакуйте загруженный сжатый пакет и откройте браузер.http://zabbix_server_ip/zabbix, Выберите «Конфигурация» -> «Шаблон» -> «Импортировать шаблон», как показано ниже:
Затем выберите «Предварительный просмотр», чтобы найти шаблон для локального импорта, и, наконец, выберите «Импорт». Как показано ниже:
5. Шаблон конфигурации
Возможно, устройство, которое вы хотите отслеживать, не является Quidway S9306, поэтому вам необходимо настроить импортированный шаблон и изменить следующие параметры:
Щелкните «iteam», чтобы изменить его. Чтобы
Этот шаблон в основном предназначен для мониторинга входящего и исходящего трафика коммутатора, поэтому порт должен иметь две задачи: «вход» и «выход».
, Щелкните порт, который нужно изменить:
name: имя элемента; тип: тип мониторинга; ключ: значение ключа; snmp oid: подробности см. в предыдущем блоге; snmp community: имя сообщества; port: номер порта snmp (по умолчанию — UDP-порт 161). Другие параметры могут быть заданы по умолчанию.
Значение ключа должно быть основано на информации о отслеживаемом устройстве в качестве ссылки. Вы можете просмотреть информацию о контролируемом устройстве с помощью команды snmpwalk на Zabbix сервере:
ifdescr. * Знак «*» соответствует номеру порта позади.
Наконец, нажмите «Сохранить», чтобы сохранить. Шаблон был изменен, и другие элементы также изменены таким образом.
6. Создайте хост (хост)
Теперь вы можете создать хост-хост. Нажмите «Конфигурация» -> «Хост» -> «Создать хост», как показано ниже:
Имя хоста: определяет имя хоста; группы: определяет группу, к которой они принадлежат; интерфейс snmp: IP-адрес + номер порта (IP-адрес — это IP-адрес управления отслеживаемого устройства, а номер порта — это номер порта протокола snmp). Другие параметры изменять не нужно, просто оставьте значение по умолчанию.
Затем выберите шаблон, конкретные шаги заключаются в следующем:
Выбери первым Нажмите кнопку «Добавить», а затем выберите только что созданный шаблон «Квидвей». Наконец, нажмите «Сохранить», чтобы сохранить. Теперь вы можете вернуться к «Просмотр статуса списка хостов».
По статусу snmp можно узнать, что теперь он может нормально работать. Теперь вам нужно создать график отслеживаемого устройства. Мониторинг Zabbix отличается от мониторинга Cacti.После настройки в Cacti диаграмма будет автоматически сгенерирована. Но zabbix нужно создавать вручную.
7. Создайте значок
Нажмите «Конфигурация» -> «Шаблон» -> «Диаграмма» -> «Создать диаграмму», как показано ниже:
name: имя диаграммы; items: добавить параметры для отслеживания в диаграмму.
Теперь, когда вся настройка завершена, вы можете увидеть блок-схему портов коммутатора Quidway:
На этом вся настройка завершена.
Источник: russianblogs.com
#Автоматизация #Технологии #Процессы #ИТ #Записки #Журнал #Блог #Форум
Net Huawei VRP SNMPv2
Группа элементов данных
Net Huawei VRP SNMPv2 — Группы
ЦП
Температура
Модуль шаблона ICMP Ping: Статус
Интерфейсы модуля шаблона SNMPv2, Модуль шаблона EtherLike-MIB SNMPv2: Сетевой интерфейс
Память
Модуль шаблона общий SNMPv2: Общий
Инвентарь
Вентиляторы
Net Huawei VRP SNMPv2 — Элементы данных
Модуль шаблона ICMP Ping: ICMP ping Пинг Триггеры 1 icmpping 60 1w 365d Простая проверка Статус Активировано
Модуль шаблона ICMP Ping: Потери пакетов ICMP Триггеры 1 icmppingloss 60 1w 365d Простая проверка Статус Активировано
Модуль шаблона ICMP Ping: ICMP response time Время отклика ICMP Триггеры 1 icmppingsec 60 1w 365d Простая проверка Статус Активировано
Модуль шаблона общий SNMPv2: SNMP traps (fallback) SNMP-ловушек (резервный) snmptrap.fallback 14d SNMP trap Общий Активировано
Модуль шаблона общий SNMPv2: Контактные данные устройства system.contact 3600 14d SNMPv2 агент Общий Активировано
Модуль шаблона общий SNMPv2: Описание устройства system.descr 3600 14d SNMPv2 агент Общий Активировано
Модуль шаблона общий SNMPv2: Расположение устройства system.location 3600 14d SNMPv2 агент Общий Активировано
Модуль шаблона общий SNMPv2: Имя устройства system.name 3600 14d SNMPv2 агент Общий Активировано
Модуль шаблона общий SNMPv2: Идентификатор системного объекта System object ID system.objectid 3600 14d SNMPv2 агент Общий Активировано
Модуль шаблона общий SNMPv2: Время бесперебойной работы устройства Триггеры 1 system.uptime 30 14d 0d SNMPv2 агент Статус Активировано
Модуль шаблона общий SNMPv2: Доступность SNMP Триггеры 1 zabbix[host,snmp,available] 60 14d 0d Внутренний Zabbix Статус Активировано
Net Huawei VRP SNMPv2 — Триггеры
Внимание/Предупреждение Модуль шаблона общий SNMPv2: был перезапущен
Зависит от:
Template Net Huawei VRP SNMPv2: Нет сбора данных SNMP
Внимание/Предупреждение Модуль шаблона ICMP Ping: Высокая потеря пинга ICMP
Зависит от:
Template Net Huawei VRP SNMPv2: Недоступно ICMP ping
> and
Внимание/Предупреждение Модуль шаблона ICMP Ping: Высокий пинг Время отклика
Зависит от:
Template Net Huawei VRP SNMPv2: Высокая потеря пинга ICMP
Template Net Huawei VRP SNMPv2: Недоступно ICMP ping
> Активировано
Высокая Модуль шаблона ICMP Ping: Недоступно ICMP ping =0 Активировано
Внимание/Предупреждение Модуль шаблона общий SNMPv2: Нет сбора данных SNMP
Зависит от:
Template Net Huawei VRP SNMPv2: Недоступно ICMP ping
)>=0 Активировано
Net Huawei VRP SNMPv2 — Правила обнаружения
Модуль шаблона EtherLike-MIB SNMPv2: EtherLike-MIB Discovery Эфир как — открытие МИБ Прототипы элементов данных 1 Прототипы триггеров 1 Прототипы графиков Прототипы узлов сети net.if.duplex.discovery 3600 SNMPv2 агент Активировано
Интерфейсы модуля шаблона SNMPv2: Обнаружение Сетевых Интерфейсов Прототипы элементов данных 9 Прототипы триггеров 6 Прототипы графиков 1 Прототипы узлов сети net.if.discovery 3600 SNMPv2 агент Активировано
Обнаружение вентилятора Прототипы элементов данных 1 Прототипы триггеров 1 Прототипы графиков Прототипы узлов сети discovery.fans 3600 SNMPv2 агент Активировано
Обнаружение Entity Прототипы элементов данных 1 Прототипы триггеров Прототипы графиков Прототипы узлов сети entity.discovery 3600 SNMPv2 агент Активировано
Обнаружение MPU Прототипы элементов данных 6 Прототипы триггеров 6 Прототипы графиков 2 Прототипы узлов сети mpu.discovery 3600 SNMPv2 агент Активировано
Источник: diyit.ru