среда, 19 декабря 2012 г.

Zabbix - проверка загрузки канала

Доброго времени суток. Мы с Вами продолжаем изучать систему для мониторинга узлов сети - Zabbix. Так мы с Вами научились устанавливать zabbix, познакомились с основными понятиями Zabbix, настроили простую проверку узла сети (на примере доступности), рассмотрели детальный мониторинг узла сети, используя SNMP. А в данной статье мы настроим мониторинг скорости на порту, научимся создавать графики, использовать множители в элементах данных, а также закрепим знания по созданию элементов данных.

И так, у нас есть узел сети, который может работать по SNMP (данный узел настроен, мы знаем пароль на чтение информации по SNMP). Настроим мониторинг скорости на порту.

  1. Создаем узел сети. Тут подробно я останавливаться не буду. В предыдущих статьях я уже подробно описал процесс создания узла в Zbbix. Только не забудьте добавить интерфейс SNMP
  2. Переходим в настройки нашего узла и создаем 2 элемента данных: первый собирает информацию о входящей скорости, второй собирает информацию о исходящей скорости.

Проверка загрузки канала - скорость на порту
 

На моем оборудовании OID 1.3.6.1.2.1.2.2.1.16.x отвечает за количество отправленных байт, что соответствует спецификации протокола SNMP, где x- это номер порта с которого мы снимаем статистику. Скорее всего и на Вашем оборудовании то же самое (но лучше посмотреть в документации).
Создаем элемент данных:

  1. Имя - я назвал upload - это по желанию
  2. Тип - SNMPv2 агент
  3. Ключ   - вводим 1.3.6.1.2.1.2.2.1.16.1, т.е. я снимаю статистику исходящих  пакетов с порта №1
  4. Интерфейс узла сети - выбираем интерфейс SNMP, который мы указали при создании узла сети
  5. SNMP OID - вводим 1.3.6.1.2.1.2.2.1.16.1
  6. SNMP community - вводим пароль на считывание информации по SNMP, смотрите конфигурацию Вашего оборудования.
  7. Тип информации - выбираем Числовой(с плавающей точкой)
  8. Единица измерения - я поставил bps (bit per second)
  9. Пользовательский множитель - ставим галочку.  Множитель считается по формуле 8/t, где t - интервал проверки в секундах. Например мы считываем информацию каждые 40 секунд, тогда множитель=8/40=0.2 Вписываем в поле множитель 0.2
  10. Интервал обновления ставим 40. Смотри пункт 9
  11. Хранение значения выбираем Дельта(простое изменение), т.к. нам нужно получать не общее количество, а разницу, между текущей проверкой и предыдущей.
  12. В поле Состояние выбираем активно.
  13. Жмем “Сохранить”
Мы с Вами создали элемент данных для нашего узла, который получает количество байт и преобразовывает эти данные в скорость.
По аналогии создаем второй элемент данных, единственное отличие будет в названии и в использовании OID: 1.3.6.1.2.1.2.2.1.10 -  получает количество принятых байт.
Таким образом мы настроили zabbix на мониторинг скорости на порту нашего узла сети.
Следующим шагом мы создадим и настроим графики для отображения скорости на порту.

Создание графика в Zabbix

Давайте создадим график загрузки нашего порта используя только, что созданные элементы данных: входящая и исходящая скорость.
Для этого в настройках нашего узла переходим по ссылке графики. Жмем по “Создать график”
В открывшемся окне:
  1. В поле “Имя” вводим название графика.
  2. В полях “Ширина” и “Высота” задаем размеры нашего графика
  3. В поле “Тип графика” выбираем тип графика: нормальный, стэкируемый, круговой, расширенный круговой.
  4. В полях “Показывать легенду”, “Показывать рабочее время”, “Показывать триггеры”, “Процентная линия (слева)”, “Процентная линия (справа)” ставим галочку напротив тех элементов какие хотим, чтобы отображались на графике.
  5. В полях “МИН значение оси y” и “МАКС значение оси y” выбираем как будут определяться минимальное и максимальное значение: вычисляемое, фиксированное или элемент данных.
  6. В поле “Элементы данных” добавляем те элементы данных значения, которых будут отображаться на графике.

Создадим график с именем “Загрузка”, а все остальные данные оставим по умолчанию. А в поле “Элементы данных” жмем по “Добавить”.
В открывшемся окне выбираем элемент данных, отвечающий за мониторинг исходящего трафика и жмем выбрать. В поле “Функция” выбираем, что отображать внизу графика: все, минимальное значение, максимальное значение или среднее значение. В поле “Стиль отрисовки” выбираем как будет рисоваться график. В поле “Расположение оси Y” указываем, где будет располагаться ось Y. В поле “Цвет” выбираем цвет графика.
 
 
В моем случае я выбрал, чтобы показывались все функции (внизу графика), стиль отрисовки выбрал градиентная линия (мне такой стиль отображения графика больше всего нравится), расположение оси Y по левой стороне. Аналогично сделал и для другого элемента данных, единственная разница - в цвете отображения.
После добавления всех элементов данных и их настройки жмем “Сохранить”.
Немного ждем ( в нашем случае 40 секунд). И смотрим, что получилось:
 И так, мы с Вами создали элементы данных, следящих за загрузкой канала и на основании их создали график. Теперь Вы всегда в курсе, когда пора расширять канал :)
И не забывайте, что все проделанное можно создать как шаблон и уже этот шаблон добавлять узлам сети, что существенно ускорит развертывание мониторинга. А на этом все.

Понравилась статья? Поблагодарить автора:

Введите e-mail адрес:



6 комментариев:

  1. Простите, а какой сакральный смысл тип информации ставить "Числовой(с плавающей точкой)"? Чем не устраивает "Числовой (целое положительное)"?

    ОтветитьУдалить
    Ответы
    1. Потому, что скорость может быть не целым числом.

      Удалить
  2. Нет уж, по полочкам разложите, может я что-то упускаю.
    Тип информации это то что отдаётся по SNMP, дельта, разница, в октетах. Оно целое. Если вы за единицу измерения берёте мегабит - ваше право и при скорости 120 Kbit вы дробное и получаете. Но тип информации - целое положительное и даже хранимое значение целое дельта (если правильно ошибаюсь 600000 для 120Kbit за 40 сек), а не 0.12 Mbit. Мне так кажется.

    ОтветитьУдалить
    Ответы
    1. За единицу скорости я беру бит.
      Дельта это разница в октетах (байтах) и она действительно получается целым. Но для получения скорости в битах в секунду мы эту дельту должны умножить на 8 и поделить на интервал в секундах. Вот тут и появляется множитель 8/40 = 0.2. Теперь нашу дельту мы умножаем на 0.2 и получаем скорость бит/с. А при умножении целого числа на дробное не всегда получается целое.

      Удалить
    2. Зачем лишние манипуляции с вычислением множителя, если можно выбрать поле "хранимое значение" как "дельта (скорость в секунду" вместо "дельта (простое изменение) и всегда ставить там 8, если уж так надо смотреть скорость в битах в секунду?
      И откуда такая странная цифра для интервала обновления? Не минута (60 секунд), не 5 минут (300 секунд), как принято в MRTG или какие-то части минут (30 секунд или 15)
      Только что пытался от коллеги получить объяснения этим числам, он просто эту статью привел - скопировал, не думая.

      Удалить
  3. А как сделать график общей производительности ?

    ОтветитьУдалить