Zabbix мониторинг ESXi: полное руководство по настройке

Содержание статьи

Зачем нужен мониторинг VMware ESXi и что он дает

VMware monitoring — Zabbix — изображение номер один

Настройка наблюдения за гипервизором через Zabbix позволяет держать под контролем здоровье кластера и вовремя замечать угрозы стабильности. Без такого инструмента администратор узнаёт о проблеме лишь после падения сервиса, когда пользователи уже столкнулись с недоступностью систем.

Что даёт внедрение системы оповещения на практике:

  • Отслеживание нагрузки на процессор и оперативную память в реальном времени;
  • Контроль температуры и состояния аппаратных компонентов хоста;
  • Мониторинг работы хранилищ и задержек при обращении к дискам;
  • Автоматические уведомления о перегрузках и сбоях до того, как они станут критическими.

Своевременная реакция на тревожные сигналы снижает время простоя и продлевает срок службы оборудования.

Какие метрики ESXi критичны для контроля в Zabbix

При наблюдении за гипервизором важно отслеживать не только загрузку CPU, но и специфические параметры планировщика. Ключевые показатели стоит разделить на группы.

  • Процессор: суммарное время ожидания (ready time), процент использования ядер, нагрузка на гипервизор от виртуальных машин.
  • Память: объём сжатия (memory compression), своппинг на диск, давление на NUMA-узлы.
  • Хранилище: задержки чтения/записи на датастор, глубина очереди команд контроллера.
  • Сеть: дропы пакетов на виртуальных коммутаторах, переполнение буферов.

Особое внимание уделите значению CPU Ready — если оно стабильно превышает 5–10%, пора перераспределять ресурсы между гостями. Также контролируйте температуру и статус аппаратных датчиков через CIM-модуль.

Преимущества Zabbix перед штатными средствами vCenter

Встроенный мониторинг vCenter хорош для быстрого взгляда на состояние, но ему не хватает гибкости. Он замыкает данные внутри своей экосистемы, что мешает сопоставлять метрики виртуальной инфраструктуры с работой физических серверов или сетевого оборудования. Zabbix выступает как единая точка сбора, позволяя строить сводные отчёты и сложные триггеры, выходящие за пределы одной платформы. К тому же, настройка оповещений в vCenter часто требует дополнительных лицензий, тогда как открытый код снимает этот вопрос.

Подготовка ESXi к подключению к Zabbix

Перед тем как гипервизор начнет отдавать метрики, нужно открыть доступ для опроса. Обычно достаточно включить SSH-сервис и разрешить подключения к нему через файрвол. Удобнее всего это сделать в веб-клиенте хоста: перейдите в раздел управления службами и активируйте автозапуск.

Также стоит проверить, что на машине, где крутится сервер мониторинга, сетевые правила не блокируют порт 22. Если планируется сбор данных через API, дополнительно потребуется настроить права для технического аккаунта.

Включение SSH и настройка прав пользователя для мониторинга

Настройка Zabbix для мониторинга standalone ESXi server / Sandbox / Habr - изображение номер два
Настройка Zabbix для мониторинга standalone ESXi server / Sandbox / Habr — изображение номер два

Для снятия метрик с хоста ESXi по протоколу HTTPS часто требуется активировать доступ по SSH. Это делается в консоли управления через «Services» → «SSH» → «Start». Однако для безопасности лучше создать отдельного юзера с минимальными привилегиями, а не использовать root. Подойдёт роль с правами только на чтение.

Порядок действий:

  1. В веб-клиенте перейдите в раздел «Manage» → «Security and users».
  2. Добавьте нового пользователя, задав сложный пароль.
  3. Назначьте ему роль «ReadOnly» (только просмотр).
  4. Убедитесь, что в файроле разрешён входящий трафик на 22-й порт.

Этих шагов достаточно, чтобы Zabbix мог опрашивать гипервизор без лишних рисков.

Проверка доступности хоста по протоколам HTTPS и SSH

Для контроля управляемости гипервизора удобно использовать встроенные проверки Zabbix. Они позволяют убедиться, что веб-интерфейс и командная оболочка отвечают на запросы.

  • HTTPS: применяется агентский ключ web.page.perf["/ui/",,,https] — он возвращает время загрузки страницы. Если ответа нет, триггер перейдёт в состояние проблемы.
  • SSH: подойдёт ключ ssh.run["echo ok"]. Правда, для него потребуется настроить пару ключей на стороне сервера мониторинга, чтобы не хранить пароли в открытом виде.
Читать так же:  Glide конструктор приложений: создай свое приложение без кода

Обе проверки не требуют установки постороннего ПО на сам хост, что упрощает первоначальную настройку.

Способы добавления хоста ESXi в Zabbix

Подключение гипервизора к системе наблюдения выполняется двумя основными методами. Первый — через API VMware vSphere, что требует указания учетных данных и включения соответствующих разрешений на целевом сервере. Второй вариант — использование SNMP-протокола, если он активирован на узле. Оба пути предполагают создание записи в интерфейсе Zabbix с последующей настройкой макросов и шаблонов.

Обнаружение ESXi через Zabbix Agent и шаблон VMware

Для начала работы с гипервизором в Zabbix потребуется включить удалённый доступ к API на самом хосте. Обычно это делается через клиент vSphere или напрямую в конфигурации службы. После активации интерфейса нужно создать хост в системе мониторинга, указав IP-адрес управляющего сервера.

Дальше подключается готовый шаблон, который идёт в комплекте поставки. В нём уже прописаны все необходимые триггеры и элементы данных для сбора метрик с виртуальных машин и физических ресурсов. Остаётся только сопоставить макросы с учётными данными, чтобы система могла авторизоваться.

Мониторинг ESXi по SNMP: настройка ловушек и опроса

Для сбора данных с гипервизора по протоколу SNMP потребуется активировать агент в конфигурации хоста. В веб-клиенте vSphere перейдите в «Управление» → «Службы» и запустите демон snmpd. После этого укажите строку сообщества и адреса менеджеров, которым разрешено отправлять запросы.

Опрос выполняется по стандартным портам 161/UDP. Zabbix использует готовые шаблоны для получения метрик CPU, памяти и состояния виртуальных машин. Ловушки (traps) принимаются на 162/UDP — их нужно настроить в параметрах самого гипервизора, указав IP-адрес сервера мониторинга.

Проверка доступности узла по SNMP выполняется через ключ snmp.get. Если данные не приходят, проверьте межсетевой экран и права доступа к сообществу.

Использование API vCenter для сбора данных о кластере

Free Zabbix Monitoring for VMWare ESXi Hosts: Get Started - изображение номер три
Free Zabbix Monitoring for VMWare ESXi Hosts: Get Started — изображение номер три

Когда под рукой несколько хостов, объединённых в кластер, опрос каждого ESXi по отдельности становится неудобным. Быстрее дернуть данные через vCenter Server, который уже агрегирует состояние всех узлов. Для этого в Zabbix предусмотрен отдельный шаблон, работающий через REST API.

Суть подхода: система обращается к SDK-интерфейсу vCenter, получает JSON-ответ и раскладывает его по элементам данных. Так можно вытащить не только статус кластера, но и суммарную нагрузку на CPU, распределение памяти между хостами и даже текущие алерты.

Настройка сводится к нескольким шагам:

  1. Создать пользователя в vCenter с правами только на чтение (это важно для безопасности).
  2. В веб-интерфейсе Zabbix добавить хост с типом «VMware» и указать адрес vCenter, логин и пароль.
  3. Указать частоту опроса — обычно достаточно 60 секунд, чтобы не перегружать API лишними запросами.

Важный нюанс: если кластер большой, стандартный шаблон может генерировать избыточную нагрузку на vCenter. В таких случаях стоит увеличить интервал опроса или отключить сбор неиспользуемых метрик в макросах. В остальном это самый простой способ получить целостную картину по всей инфраструктуре без настройки агентов на каждом гипервизоре.

Настройка шаблонов и макросов для корректной работы

После импорта готовых правил сбора данных обычно требуется адаптировать их под конкретную инфраструктуру. Без этого возможны ложные срабатывания или пропуск важных событий.

Основные параметры, которые стоит проверить в первую очередь:

  • учётные данные для опроса гипервизора (обычно задаются через макросы уровня хоста или группы);
  • интервалы опроса — для критичных метрик их лучше сократить, для второстепенных — увеличить, чтобы снизить нагрузку на управляющий сервер;
  • пороги срабатывания триггеров — значения по умолчанию не всегда подходят для конкретного железа.

Удобно хранить переменные окружения в одном месте. Например, задать {$ESXI_USER} и {$ESXI_PASSWORD} на уровне группы узлов, а не прописывать их для каждой виртуальной машины отдельно. Это упрощает ротацию паролей и централизованное обновление.

Обратите внимание на макросы, отвечающие за пути к файлам логов или пороги по задержкам. Их значения должны соответствовать реальной конфигурации сети, иначе часть данных будет интерпретироваться неверно.

Импорт готового шаблона Template VM VMware и его адаптация

В официальном репозитории Zabbix есть готовый шаблон Template VM VMware. Он покрывает базовые метрики: состояние питания, загрузку CPU, потребление памяти и сетевой трафик. Импорт выполняется через раздел «Data collection» → «Templates» → кнопка «Import».

После загрузки XML-файла проверьте макросы {$VMWARE.URL}, {$VMWARE.USERNAME} и {$VMWARE.PASSWORD} — они должны указывать на vCenter или ESXi-хост. Если в вашей среде используется несколько кластеров, скопируйте шаблон и измените значения макросов для каждой группы хостов отдельно.

Обратите внимание на интервалы опроса: по умолчанию они составляют 60 секунд для обычных метрик и 300 секунд для discovery. При большом количестве виртуальных машин это создаёт заметную нагрузку на vCenter. Рекомендуется увеличить интервалы до 300 и 1800 секунд соответственно.

Читать так же:  Веб-приложения: 15 ярких примеров, которые изменят ваш бизнес

Для адаптации под конкретные задачи добавьте зависимые элементы данных — например, триггеры на недоступность VMware Tools или на рост latency дисков. Это делается в том же шаблоне через раздел «Triggers».

Заполнение макросов {$USERNAME} и {$PASSWORD} для доступа к хосту

После добавления хоста ESXi в систему наблюдения потребуется указать учётные данные для опроса по протоколу HTTPS. Вместо хранения пароля в открытом виде в каждом элементе данных, разумнее задать значения один раз на уровне хоста или шаблона.

В настройках узла сети перейдите во вкладку «Макросы» и создайте две пользовательские переменные:

  • {$USERNAME} — имя учётной записи с правами чтения (например, мониторинговый пользователь vCenter);
  • {$PASSWORD} — соответствующий секрет для входа.

Для защиты данных рекомендуется использовать функцию шифрования секретов, доступную в настройках Zabbix. После сохранения параметров проверьте доступность метрики через «Последние данные» — если значения не приходят, проверьте корректность введённых символов и сетевую достижимость хоста.

Какие показатели ESXi отслеживать в первую очередь

Начинать стоит с аппаратных ресурсов: загрузка CPU, потребление памяти, активность сетевых адаптеров и задержки на дисковых массивах. Для гипервизора критичны также показатели ожидания по CPU (co-stop) и давление на память через ballooning. Полезно контролировать состояние датчиков температуры и вентиляторов на хосте — перегрев часто приводит к внезапным перезагрузкам. Отдельно следят за количеством запущенных виртуальных машин и их консолидацией на физическом сервере.

Мониторинг CPU и памяти: суммарная нагрузка и потребление

Мониторинг ESXi 6 (zabbix 3.x) - описание, пошаговые инструкции - изображение номер четыре
Мониторинг ESXi 6 (zabbix 3.x) — описание, пошаговые инструкции — изображение номер четыре

Для оценки производительности гипервизора в Zabbix удобно использовать готовые шаблоны, которые агрегируют данные по всем физическим ядрам. Суммарная загрузка процессора считается как среднее арифметическое по каждому ядру, а потребление памяти — через ключ vmware.hv.memory.used. Эти метрики позволяют быстро выявить нехватку ресурсов.

При анализе стоит учитывать:

  • пиковые значения нагрузки в разное время суток;
  • соотношение выделенной памяти к фактически используемой;
  • наличие ballooning или swapping на хосте.

Контроль дисковых операций и задержек на хранилище

Для оценки состояния дисковой подсистемы на хосте ESXi в Zabbix удобно использовать ключи, возвращающие накопленные счетчики. Например, параметр vmware.hv.datastore.read[] отдает количество операций чтения, а vmware.hv.datastore.write[] — записи. Чтобы получить задержку в миллисекундах, применяются элементы данных с суффиксом latency. Эти метрики снимаются агентом VMware, поэтому дополнительная установка ПО на гипервизор не требуется.

При настройке триггеров стоит учитывать, что значения счетчиков имеют накопительный характер. Для вычисления средней задержки за интервал используйте функцию change() в триггере. Пороговые значения подбираются индивидуально: для SSD-массивов критичной считается задержка выше 10–15 мс, для HDD — выше 30–40 мс. Ниже приведена таблица с рекомендуемыми прототипами элементов данных.

Метрика Ключ Zabbix Тип
Задержка чтения vmware.hv.datastore.read.latency[] Числовой
Задержка записи vmware.hv.datastore.write.latency[] Числовой
Операции чтения vmware.hv.datastore.read[] Числовой
Операции записи vmware.hv.datastore.write[] Числовой

Для наглядности добавьте графики, наложив задержки чтения и записи на одну ось. Это поможет быстро заметить аномалии, например, резкий рост времени отклика при деградации RAID-массива или перегрузке канала к хранилищу.

Отслеживание сетевого трафика и ошибок на виртуальных адаптерах

Для контроля за состоянием виртуальных сетевых интерфейсов в Zabbix удобно использовать предустановленные шаблоны для VMware. Они собирают данные о входящем и исходящем трафике, а также о потерянных пакетах. При настройке триггеров важно учитывать, что значения счетчиков могут сбрасываться после миграции виртуальной машины на другой хост.

Полезные метрики для анализа:

  • Скорость передачи и приема данных (bps);
  • Количество ошибок на интерфейсе;
  • Процент потерянных пакетов.

Для детального разбора аномалий стоит настроить отдельные графики, чтобы визуально сравнивать пиковые нагрузки с обычным уровнем трафика.

Настройка триггеров и оповещений о проблемах

Когда данные с хоста ESXi поступают в Zabbix, важно настроить реакцию на критические события. Триггеры позволяют отслеживать превышение пороговых значений, например, загрузку процессора или нехватку памяти. Для отправки уведомлений настраиваются действия (actions) с указанием условий и получателей.

Рекомендуется использовать несколько уровней severity:

  • Warning — для предупреждений о временных отклонениях;
  • Average — для устойчивых проблем;
  • High — для критических сбоев, требующих немедленного вмешательства.

Для каждого уровня можно задать свой сценарий оповещения: email, Telegram или интеграцию с тикет-системой.

Создание триггеров на недоступность хоста и отказ компонентов

Настройка Zabbix для мониторинга standalone ESXi server / Sandbox / Habr - изображение номер пять
Настройка Zabbix для мониторинга standalone ESXi server / Sandbox / Habr — изображение номер пять

Чтобы вовремя узнать о проблеме, настройте оповещения в Zabbix. Для контроля доступности гипервизора используйте ключ icmpping или агентский vmware.hv.availability. При отказе, например, хранилища или сети, сработает соответствующий макрос. Удобно группировать проверки по уровням критичности: предупреждение и высокая важность. Так вы не пропустите ни одного сбоя.

Настройка уведомлений о перегрузке CPU и нехватке памяти

Для контроля производительности виртуальной инфраструктуры в Zabbix удобно использовать триггеры на основе данных с хоста ESXi. Пороговые значения задаются в процентах или абсолютных величинах, а реакция системы настраивается через действия (actions).

Читать так же:  Как уменьшить программу: 7 способов освободить место

Пример логики оповещения:

  • Загрузка процессора выше 90% в течение 10 минут — уровень серьезности «Высокий».
  • Свободная оперативная память менее 5% от общего объема — уровень «Авария».

Уведомления отправляются через Telegram, email или Slack. Чтобы избежать ложных срабатываний, стоит добавить условие на длительность события и использовать макросы для подстановки имени хоста в текст сообщения.

Визуализация данных и построение дашбордов

Собранные метрики с хостов превращаются в наглядные панели. В веб-интерфейсе Zabbix создаются экраны, где удобно отслеживать состояние кластера в реальном времени. Для быстрого анализа пригодятся виджеты с графиками нагрузки на процессор, память и сетевые интерфейсы. Полезно выводить данные по нескольким гипервизорам на один экран для сравнения. Настройка триггеров позволяет сразу видеть проблемные зоны без ручного просмотра логов.

Создание графиков нагрузки на ядра и пулы ресурсов

Для визуализации загрузки процессорных ядер и пулов ресурсов в веб-интерфейсе платформы мониторинга удобно использовать пользовательские графики. Понадобится перейти в раздел «Графики» и добавить новый элемент, указав хост гипервизора. В качестве параметров данных выбираются ключи, отвечающие за использование CPU на конкретном ядре (например, system.cpu.util[,cpu1,user]). Для пула ресурсов применяются элементы данных, собираемые через соответствующий шаблон или агент.

Настройка отображения сводится к выбору периода, типа линии и цвета. Рекомендуется группировать несколько ядер на одном графике для сравнения, а пулы ресурсов выносить на отдельные страницы. Ниже приведена примерная структура:

  • Выбор хоста и типа элемента данных.
  • Указание ключа для конкретного ядра или пула.
  • Настройка цвета и стиля линии.
  • Сохранение и просмотр результата.

Такой подход позволяет быстро выявлять неравномерность распределения нагрузки и узкие места в производительности.

Отображение состояния хостов ESXi на картах и экранах

Мониторинг сервера VMware ESXi в Zabbix - 3DLan.ru - изображение номер шесть
Мониторинг сервера VMware ESXi в Zabbix — 3DLan.ru — изображение номер шесть

Визуализация данных о гипервизорах в Zabbix реализуется через карты сети и пользовательские экраны. На карте удобно разместить иконки кластеров, связав их линиями с указанием триггеров. Для быстрого обзора подойдут экраны, где в виде слайд-шоу выводятся графики по загрузке CPU и памяти. Такой подход позволяет оперативно замечать аномалии, не углубляясь в табличные отчёты.

Типичные ошибки при мониторинге ESXi и их решение

Чаще всего проблемы возникают из-за неверно настроенных прав доступа. Агент Zabbix не может получить данные от API гипервизора, если пользователю не выдана роль с нужными привилегиями. Проверьте, что у учётной записи есть права на чтение.

Вторая распространённая ситуация — несовпадение версий протоколов. Устаревший шаблон или неподдерживаемая сборка агента приводят к пустым данным в графиках. Решение — обновить шаблон и проверить совместимость.

Также стоит обратить внимание на таймауты опроса. При большой нагрузке на хост стандартные 3 секунды могут не хватить, и опрос завершится ошибкой. Увеличьте таймаут в настройках элемента данных.

Ошибка авторизации при опросе хоста через API

При попытке получить данные с хоста через API часто всплывает сообщение о неверных учётных данных. Обычно причина кроется в несоответствии прав у технического аккаунта. Проверьте, что у пользователя есть роль только на чтение, а не администратора. Также убедитесь, что в настройках подключения указан корректный порт — 443, а не 80. Иногда помогает перезапуск службы на стороне гипервизора после смены пароля.

Пустые данные по метрикам из-за неверных прав пользователя

Когда агент на гипервизоре отвечает, но графики пустуют, чаще всего виновата учётная запись. Для опроса VMware требуется аккаунт с правами только на чтение (ReadOnly). Если выдать меньше — например, только просмотр списка виртуальных машин — система вернёт ноль по всем счётчикам производительности.

Проверьте роль в vCenter: она должна включать доступ к статистике и состоянию хоста. Также убедитесь, что в настройках хоста не включён режим строгой проверки, блокирующий запросы от Zabbix Server.

Проблемы с получением данных по SNMP и способы их устранения

При опросе гипервизора по SNMP часто возникают сбои. Типичная картина: узел сети отвечает на ping, но Zabbix не получает нужные OID. Причины обычно кроются в настройках коммуникации, а не в самом сервере виртуализации.

  • Проверьте, что на хосте ESXi запущен демон snmpd и он слушает порт 161/UDP.
  • Убедитесь, что community-строка в настройках системы мониторинга совпадает с той, что прописана в конфигурации гипервизора.
  • Иногда мешает файрвол — откройте доступ с IP-адреса сервера Zabbix.

Если данные всё равно не приходят, попробуйте перезапустить агента SNMP на хосте через командную строку или обновить прошивку управляющего контроллера. В редких случаях помогает сброс настроек до заводских с последующей перенастройкой.

Related Articles

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *