Поддержка мониторинга сред VMware доступна в Zabbix, начиная с версии 2.2.0.
Zabbix может использовать правила низкоуровневого обнаружения для автоматического обнаружения гипервизоров и виртуальных машин VMware, а затем создавать узлы сети для наблюдения за ними, основываясь на предустановленных прототипах узлов сети.
Поставляемый с Zabbix начальный набор данных предлагает несколько готовых к использованию шаблонов для мониторинга VMware vCenter и ESX гипервизоров.
Минимально требуемой версией VMware vCenter или vSphere является 5.1.
Мониторинг виртуальных машин выполняется в два шага. Первый, данные о виртуальных машинах собираются Zabbix процессами vmware collector. Эти процессы получают необходимую информацию с веб служб VMware через SOAP протокол, подготовалиивают эту информацию и записывают в разделяемую память Zabbix сервера. Затем эти данные извлекаются с помощью поллеров с использованием VMware ключей простых проверок Zabbix.
Начиная с версии Zabbix 2.4.4, собираемые данные разделены на 2 типа: данные конфигурации VMware и данные счётчиков производительности VMware. Оба эти типа собираются независимо vmware коллекторами. В связи с этим рекомендуется активировать больше коллекторов, чем служб VMware на мониторинге. В противном случае получение статистики, основанной на счетчиках производительности VMware, может задерживаться из-за получения данных конфигурации VMware (что занимает длительное время на больших инсталляциях).
В настоящее время только статистика по хранилищам данных, сетевым интерфейсам и дисковым устройствам, а также элементы данных пользовательских счетчиков производительности основываются на информации со счётчиков производительности VMware.
Для того чтобы мониторинг виртуальных машин заработал, необходимо, чтобы Zabbix был скомпилирован с опциями сборки --with-libxml2 и --with-libcurl.
Можно использовать следующие опции из файла конфигурации для оптимизации мониторинга виртуальных машин:
Для получения более подробной информации смотрите страницы файлов конфигурации Zabbix сервера и прокси.
Чтобы поддерживать метрики объёмов хранилищ данных, Zabbix требуется, чтобы значение параметра VMware vpxd.stats.maxQueryMetrics было по меньшей мере 64. Смотрите также статью [en] в базе знаний VMware.
Zabbix может использовать правило низкоуровневого обнаружения для автоматического обнаружения гипервизоров и виртуальных машин VMware.
Все обязательные поля ввода отмечены красной звёздочкой.
Ключом правила обнаружения на снимке экрана выше является vmware.hv.discovery[{$VMWARE.URL}].
Прототипы узлов сети можно создать с помощью правила низкоуровневого обнаружения. Когда виртуальные машины обнаруживаются, на основе этих прототипов генерируются реальные узлы сети. Прототипы, до момента обнаружения, не могут иметь своих собственных элементов данных и триггеров, кроме тех, которые унаследованы из присоединённых шаблонов.
Чтобы узлы сети, созданные из прототипа, имели уникальные имена узлов сети, поле Имя узла сети должно содержать по крайней мере один макрос низкоуровневого обнаружения.
Начиная с Zabbix 5.2, обнаруженные узлы сети можно настраивать с пользовательскими интерфейсами или наследовать IP адрес узла сети, которому принадлежит правило обнаружения (по умолчанию). Чтобы добавить один и более пользовательских интерфейсов, переключите параметр Интерфейс из режима Наследовать на Пользовательское, затем нажмите на (Добавить) и выберите тип требуемого интерфейса в появившемся выпадающем меню. Прототипу узлов сети можно добавить все поддерживаемые типы интерфейсов: Zabbix агент, SNMP, JMX, IPMI. Поля интерфейсов поддерживают низкоуровневые макросы и пользовательские макросы. Если задано несколько пользовательских интерфейсов - используйте колонку По умолчанию, чтобы определить основной интерфейс.
Примечания:
Узел сети не будет создан, если интерфейс узла сети содержит некорректные данные
LLD макросы также можно использовать в видимом имени, полях прототипа групп узлов сети, значениях тегов, а также значениях пользовательских макросов прототипов узлов сети.
Другие параметры, которые можно задать прототипу узлов сети:
Если Создать активированным выбрано, узел сети добавится в активированном состоянии. Если не выбрано, узел сети добавится, но в деактивированном состоянии.
Если опция Обнаружение выбрана (по умолчанию), узел сети будет создан. Если опция не выбрана, узел сети не будет создаваться, если только этот параметр не переопределён в правиле обнаружения. Эта возможность даёт дополнительную гибкость при создании правил обнаружения.
В списке узлов сети обнаруженные узлы сети имеют префикс с именем правила обнаружения, которым они были созданы. Обнаруженные узлы сети могут быть удалены вручную. Обнаруженные узлы автоматически удаляются, основываясь на значении Период хранения потерянных ресурсов (в днях) правила обнаружения. Большинство опций конфигурации доступно только на чтение, исключая активацию/деактивацию узла сети и инвентарные данные.
Zabbix не поддерживает вложенность прототипов узлов сети, т.е. прототипы узлов сети не поддерживаются на узлах сети, которые сами созданы правилами низкоуровневого обнаружения.
Поставляемый с Zabbix начальный набор данных предлагает несколько готовых к использованию шаблонов для мониторинга VMware vCenter или мониторинга гипервизоров ESX напрямую. Эти шаблоны содержат преднастроенные правила низкоуровневого обнаружения, а также некоторое количество встроенных проверок для мониторинга виртуальных инсталляций.
Шаблоны для мониторинга VMware vCenter и ESX гипервизоров:
Для корректной работы шаблона VMware FQDN каждая VM должна иметь уникальное имя ОС, соответствующее правилам FQDN, и VMware Tools или Open Virtual Machine Tools должны быть установлены на каждой машине. Если эти условия соблюдены, рекомендуется использовать шаблон VMware FQDN. Создание шаблона VMware FQDN стало возможным после введения возможности создания узлов сети с пользовательскими интерфейсами в Zabbix 5.2.
Классический шаблон VMware всё ещё доступен и может быть использован, если требования FQDN не соблюдаются. Пожалуйста, имейте в виду, что у шаблона VMware имеется известная проблема. Узлы сети обнаруженных виртуальных машин создаются с именами, которые хранятся в vCenter (например, VM1, VM2 и т.д.). Если активный Zabbix агент позже устанавливается на этих узлах сети с активированной опцией авторегистрации, процесс автоматической регистрации прочитает имена хостов так, как они были зарегистрированы при запуске (например, vm1.example.com, vm2.example.com и т.д.) и создаст новые узлы сети, так как совпадения не будут найдены. В результате будет два дубликата узлов сети с разными именами по каждой машине.
Обратите внимание:
Для того, чтобы использовать простые проверки VMware, на узел сети должны быть назначены следующие макросы:
Следующий пример демонстрирует, как можно быстро настроить мониторинг VMware в Zabbix:
Можно записывать в файл журнала сбор данных коллектором VMware, используя уровень отладки 5. Этот уровень можно задать в файлах конфигурации сервера и прокси или используя опцию выполнения административных функций (-R log_level_increase="vmware collector,N"
, где N является номером процесса). При условии, что уровень отладки 4 уже задан, расширенное журналирование можно запустить так, как демонстрируется в следующих примерах:
# Увеличение уровня журналирования по всем коллекторам vmware:
zabbix_server -R log_level_increase="vmware collector"
# Увеличение уровня журналирования по второму коллектору vmware:
zabbix_server -R log_level_increase="vmware collector,2"
Если расширенное журналирование данных коллекторов VMware не требуется, его можно остановить командой с опцией -R log_level_decrease
.
config.vpxd.stats.maxQueryMetrics
в настройки сервера vCenter. Значение этого параметра должно быть таким же, как и maxQuerysize
в VMware web.xml. Для получения более подробных сведений смотрите эту статью базы знаний VMware.