Мониторинг виртуальных машин

Обзор

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

Zabbix также включает готовые к использованию шаблоны для мониторинга гипервизоров VMware vCenter или ESXi.

Минимальная необходимая версия VMware vCenter или vSphere — 5.1.

Сбор данных

Мониторинг виртуальных машин выполняется в два шага:

  1. Процессы Zabbix vmware collector собирают данные виртуальных машин — процессы получают необходимую информацию от веб-сервисов VMware по протоколу SOAP, предварительно обрабатывают её и сохраняют в разделяемой памяти сервера Zabbix.

  2. Процессы Zabbix poller извлекают данные при помощи ключей элементов данных мониторинга VMware простых проверок Zabbix.

Zabbix делит собранные данные на данные конфигурации VMware и данные счётчиков производительности VMware. Оба типа данных собираются независимо процессами vmware collector.

На основе данных счётчиков производительности VMware доступна статистика по следующим категориям:

  • Хранилище данных
  • Дисковое устройство
  • Процессор
  • Питание
  • Сетевой интерфейс
  • Элементы данных пользовательских счётчиков производительности

Для полного списка элементов данных, которые получают данные от счётчиков производительности VMware, обратитсесь к разделу Ключи элементов данных мониторинга VMware.

Обратите внимание, что частота получения событий VMware зависит от интервала опроса vmware.eventlog, но не может быть меньше 5 секунд.

Конфигурация

Если сервер Zabbix собран из исходных кодов, его необходимо собрать с параметрами конфигурации --with-libcurl --with-libxml2, чтобы включить мониторинг виртуальных машин. Пакеты Zabbix уже собраны с включенными этими параметрами.

Для мониторинга виртуальных машин можно изменить следующие параметры файла конфигурации сервера Zabbix:

Рекомендуется включить больше сборщиков, чем количество отслеживаемых служб VMware; в противном случае получение статистики счетчиков производительности VMware может задерживаться из-за получения данных конфигурации VMware (что занимает некоторое время в крупных установках).

Как правило, значение StartVMwareCollectors не должно быть меньше 2 и не должно превышать удвоенное количество отслеживаемых служб VMware: Количество служб < StartVMwareCollectors < (Количество служб * 2). Например, при мониторинге одной службы VMware задайте для StartVMwareCollectors значение 2; при мониторинге трех служб — 5.

Обратите внимание, что требуемое количество сборщиков также зависит от масштаба среды VMware, а также от параметров конфигурации VMwareFrequency и VMwarePerfFrequency.

Чтобы поддерживать метрики емкости хранилищ данных, убедитесь, что значение ключа VMware vpxd.stats.maxQueryMetrics установлено не ниже 64. Дополнительные сведения см. в статье базы знаний VMware.

Обнаружение

Zabbix может использовать правила обнаружения низкого уровня (например, vmware.hv.discovery[{$VMWARE.URL}]) для автоматического обнаружения гипервизоров VMware и виртуальных машин. Кроме того, Zabbix может использовать прототипы узлов сети для автоматического создания реальных узлов сети для обнаруженных сущностей. Дополнительную информацию см. в Прототипы узлов сети.

Configuration examples

For a basic example of how to set up Zabbix for monitoring VMware using the VMware FQDN template, see Monitor VMware with Zabbix.

For a more detailed example of how to create a host, a low-level discovery rule, and a host prototype for monitoring VMware, see Setup example.

Расширенное журналирование

Данные, собираемые процессами vmware collector, можно записывать в журнал для подробной отладки, используя уровень отладки 5. Уровень отладки можно настроить в файлах конфигурации server и proxy или с помощью параметра управления во время выполнения -R log_level_increase="vmware collector,N", где "N" — номер процесса.

Например, чтобы повысить уровень отладки с 4 до 5 для всех процессов vmware collector, выполните следующую команду:

zabbix_server -R log_level_increase="vmware collector"

Чтобы повысить уровень отладки с 4 до 5 для второго процесса vmware collector, выполните следующую команду:

zabbix_server -R log_level_increase="vmware collector,2"

Когда расширенное журналирование данных VMware collector больше не требуется, рекомендуется понизить уровень отладки до значения по умолчанию (3), выполнив команду -R log_level_decrease.

Устранение неполадок

  • В случае недоступности метрик убедитесь, что они не стали недоступны или не были отключены по умолчанию в последних версиях VMware vSphere, а также что на запросы к базе данных метрик производительности не наложены какие-либо ограничения. Дополнительные сведения см. в ZBX-12094.
  • Если config.vpxd.stats.maxQueryMetrics недопустим или возникает ошибка превышения максимального допустимого числа символов, добавьте параметр config.vpxd.stats.maxQueryMetrics в настройки vCenter Server. Значение этого параметра должно быть таким же, как значение maxQuerysize в файле web.xml VMware. Дополнительные сведения см. в статье VMware Knowledge Base.
  • Если вы подозреваете, что ваша установка Zabbix использует слишком много памяти, см. Профилирование чрезмерного использования памяти с tcmalloc.