Мониторинг Microsoft Hyper-V
Расширение предназначено для локального мониторинга кластеров, узлов и виртуальных машин Microsoft Hyper-V.
Назначение
Расширение собирает показатели Microsoft Hyper-V с помощью WMI и PowerShell непосредственно на узлах гипервизора.
С помощью расширения можно:
- контролировать состояние кластеров Hyper-V;
- анализировать загрузку процессора и памяти узлов;
- отслеживать количество и состояние виртуальных машин;
- контролировать использование процессора и памяти виртуальными машинами;
- анализировать физические и виртуальные накопители;
- отслеживать Cluster Shared Volumes;
- контролировать физические и виртуальные сетевые интерфейсы;
- выявлять нехватку вычислительных ресурсов и хранилища;
- связывать обнаруженные виртуальные машины с гостевыми ОС, контролируемыми ЕдинымАгентом;
- использовать готовую панель мониторинга и шаблоны оповещений.
Архитектура мониторинга
Расширение работает локально на каждом узле Hyper-V.
Удалённый запуск через АктивныйШлюз не поддерживается.
Для полноценного мониторинга кластера необходимо:
- установить ЕдиныйАгент на каждый узел Hyper-V;
- установить расширение в Ключ-АСТРОМ;
- разрешить запуск расширения от имени
LOCAL SYSTEM; - включить конфигурацию расширения на каждом узле кластера.
Расширение выполняет:
- WMI-запросы к локальному хранилищу показателей Windows;
- PowerShell-команды для получения конфигурации Hyper-V, сведений о кластере и дополнительных метрик;
- построение связей между кластерами, узлами, виртуальными машинами, дисками и сетевыми интерфейсами.
Поддерживаемые системы
Для работы расширения необходима 64-разрядная операционная система с включённой аппаратной виртуализацией:
- Windows 10 Enterprise, Pro или Education;
- Windows Server 2016 и более новые версии.
Версия конфигурации виртуальных машин Hyper-V должна быть 9.0 или выше.
Минимальная версия Ключ-АСТРОМ — 1.318.0.
Расширение выполняется только на Windows.
Требования
Перед установкой убедитесь, что:
- на каждом узле кластера установлен и работает ЕдиныйАгент;
- роль Hyper-V установлена и активна;
- аппаратная виртуализация включена в BIOS или UEFI;
- доступны локальные WMI-классы Hyper-V;
- PowerShell может выполнять команды управления Hyper-V;
- для кластерной конфигурации установлен компонент Failover Clustering;
- служба ЕдиныйАгент имеет доступ к WMI, системному реестру и PowerShell;
- расширению разрешён запуск от имени
LOCAL SYSTEM.
Настройка повышенных привилегий
Обычно Python-расширения выполняются от имени LOCAL SERVICE. Этой учётной записи недостаточно для выполнения части PowerShell-команд и чтения некоторых WMI-объектов Hyper-V.
Расширение должно выполняться от имени LOCAL SYSTEM.
На каждом узле Hyper-V откройте файл extensionsuser.conf в каталоге конфигурации ЕдиногоАгента и добавьте:
elevated_privileges_extensions=[ru.ruscomtech.extension.hyperv:*]
Если в параметре уже перечислены другие расширения, добавьте IBM Hyper-V через запятую, не удаляя существующие значения.
После изменения конфигурации перезапустите службу ЕдиногоАгента.
Проверьте этот параметр на каждом узле кластера, где должно выполняться расширение.
Установка расширения
- Откройте раздел управления расширениями в Ключ-АСТРОМ.
- Загрузите подписанный архив расширения.
- Убедитесь, что установлена версия
4.1.5. - Настройте запуск с повышенными привилегиями на узлах Hyper-V.
- Создайте конфигурацию мониторинга.
- Назначьте конфигурацию на все необходимые узлы Hyper-V.
- Выберите наборы функций.
- Сохраните и активируйте конфигурацию.
Настройка конфигурации
Частота сбора
Параметр Frequency определяет интервал сбора данных в минутах.
По умолчанию данные собираются каждую минуту.
Для крупных кластеров интервал можно увеличить, если сбор не успевает завершиться до начала следующего цикла.
Уровень журналирования
Доступны уровни:
INFO— обычная работа;DEBUG— подробная диагностика.
Используйте DEBUG только при устранении неполадок.
Режим фильтрации
Параметр Filter Mode определяет действие регулярных выражений:
| Режим | Описание |
|---|---|
ALLOW
|
Собираются только сущности, соответствующие регулярному выражению. |
DENY
|
Сущности, соответствующие регулярному выражению, исключаются из мониторинга. |
Значение по умолчанию — ALLOW.
Выражение .* в режиме ALLOW включает все сущности соответствующего типа.
Фильтры сущностей
Можно настроить отдельные регулярные выражения для:
| Параметр | Что фильтруется |
|---|---|
Cluster Filter
|
Кластеры Hyper-V. |
Host Filter
|
Узлы Hyper-V. |
VM Filter
|
Виртуальные машины. |
Network Interface Card Filter
|
Физические сетевые интерфейсы узлов. |
Storage Device Filter
|
Физические накопители узлов. |
Virtual Network Interface Card Filter
|
Виртуальные сетевые интерфейсы. |
Virtual Storage Device Filter
|
Виртуальные накопители. |
Например:
^.*-test$
В режиме ALLOW выражение включает только сущности, имена которых заканчиваются на -test. В режиме DENY такие сущности исключаются.
Ошибочное регулярное выражение может привести к отсутствию данных.
Наборы функций
Для работы конфигурации необходимо выбрать хотя бы один набор функций.
| Набор функций | Метрик | Назначение |
|---|---|---|
cluster-shared-volume
|
5 | Размер, свободное и используемое пространство, скорость чтения и записи Cluster Shared Volumes. |
host-virtual-machine
|
3 | Количество виртуальных машин, количество работающих машин и время работы узла. |
host-cpu
|
4 | Загрузка процессора, резерв процессора, количество физических и логических ядер. |
host-memory
|
4 | Общая, используемая и доступная память узла, процент использования. |
basic-network-interface-card
|
3 | Переданные, полученные и суммарные пакеты физических сетевых интерфейсов. |
advanced-network-interface-card
|
3 | Переданный, полученный и суммарный трафик физических сетевых интерфейсов. |
basic-storage-device
|
4 | Использование, общий размер, занятое и свободное пространство физических накопителей. |
advanced-storage-device
|
3 | Скорость чтения, скорость записи и IOPS физических накопителей. |
virtual-machine
|
9 | Процессор, память и давление на память виртуальных машин. |
basic-virtual-network-interface-card
|
3 | Переданные, полученные и суммарные пакеты виртуальных сетевых интерфейсов. |
advanced-virtual-network-interface-card
|
3 | Переданный, полученный и суммарный трафик виртуальных сетевых интерфейсов. |
basic-virtual-storage-device
|
4 | Использование и объём виртуальных накопителей. |
advanced-virtual-storage-device
|
3 | Скорость чтения, скорость записи и IOPS виртуальных накопителей. |
Для базового мониторинга рекомендуется включить:
host-virtual-machine;host-cpu;host-memory;virtual-machine;basic-storage-device;basic-virtual-storage-device;cluster-shared-volume— для кластерной конфигурации.
Расширенные наборы сетевых и дисковых показателей включайте при необходимости.
Собираемые данные
Расширение собирает:
- общий размер тома;
- используемое пространство;
- доступное пространство;
- скорость чтения;
- скорость записи.
Узлы Hyper-V
Для каждого узла собираются:
- количество виртуальных машин;
- количество работающих виртуальных машин;
- время работы;
- загрузка процессора;
- резерв процессора;
- количество физических процессоров;
- количество логических процессоров;
- общий объём памяти;
- используемая память;
- доступная память;
- процент использования памяти.
Виртуальные машины
Для виртуальных машин собираются:
- количество виртуальных процессоров;
- резерв процессора;
- использование процессора относительно ресурсов узла;
- фактическое использование процессора внутри виртуальной машины;
- общий объём памяти;
- используемая память;
- доступная память;
- процент использования памяти;
- давление на память.
Показатель фактической загрузки процессора отражает загрузку, видимую внутри виртуальной машины. Обычный показатель загрузки отражает использование относительно полной вычислительной мощности узла.
Накопители
Для физических и виртуальных накопителей собираются:
- общий размер;
- используемое пространство;
- свободное пространство;
- процент использования;
- скорость чтения;
- скорость записи;
- количество операций ввода-вывода в секунду.
Сетевые интерфейсы
Для физических и виртуальных сетевых интерфейсов собираются:
- отправленные пакеты;
- полученные пакеты;
- общий поток пакетов;
- отправленные байты;
- полученные байты;
- общий сетевой трафик.
Топология
Расширение создаёт сущности:
- кластер Hyper-V;
- узел Hyper-V;
- виртуальная машина;
- физический накопитель;
- виртуальный накопитель;
- физический сетевой интерфейс;
- виртуальный сетевой интерфейс.
Создаются следующие связи:
- узел входит в кластер;
- виртуальная машина работает на узле;
- физический накопитель относится к узлу;
- физический сетевой интерфейс относится к узлу;
- виртуальный накопитель относится к виртуальной машине;
- виртуальный сетевой интерфейс относится к виртуальной машине.
Если гостевая ОС также контролируется ЕдинымАгентом, расширение пытается связать обнаруженную виртуальную машину с соответствующим экземпляром гостевой ОС по IP-адресу.
Для гостевых Windows связь обычно определяется автоматически. Для Linux результат зависит от поддержки Microsoft Linux Integration Services и доступности IP-адресов гостевой системы.
Панели мониторинга
В пакет входят:
- классическая панель
Hyper-V Overview; - панель нового формата
Microsoft Hyper-V Infrastructure Overview; - аналитические представления кластеров, узлов, виртуальных машин, дисков и сетевых интерфейсов.
Панели позволяют анализировать:
- распределение ресурсов между виртуальными машинами;
- загрузку процессоров и памяти;
- заполнение физических и виртуальных дисков;
- состояние Cluster Shared Volumes;
- сетевую нагрузку;
- взаимосвязи между кластером, узлами и виртуальными машинами.
Оповещения
Расширение содержит десять шаблонов оповещений.
| Оповещение | Условие по умолчанию |
|---|---|
| Высокая загрузка процессора кластера | Выше 85%. |
| Высокое использование файловой системы кластера | Выше 80%. |
| Высокое использование памяти кластера | Выше 85%. |
| Мало свободного места на Cluster Shared Volume | Ниже 15%. |
| Высокая загрузка процессора узла | Выше 85%. |
| Высокое использование памяти узла | Выше 85%. |
| Высокая загрузка физического накопителя | Выше 85%. |
| Высокая загрузка виртуального накопителя | Выше 85%. |
| Высокая загрузка процессора виртуальной машины | Выше 85%. |
| Высокое использование памяти виртуальной машины | Выше 85%. |
Порог проверяется в окне из пяти измерений. По умолчанию достаточно одного нарушающего измерения для создания события.
Перед включением шаблонов адаптируйте пороговые значения к обычной нагрузке среды.
Проверка работы
После активации конфигурации:
- Проверьте состояние расширения на каждом узле Hyper-V.
- Убедитесь, что расширение запущено от имени
LOCAL SYSTEM. - Проверьте появление сущностей Hyper-V Host.
- Для кластерной среды проверьте появление Hyper-V Cluster.
- Убедитесь, что на каждом узле отображаются работающие виртуальные машины.
- Проверьте метрики процессора и памяти.
- Проверьте физические и виртуальные накопители.
- Откройте панель
Microsoft Hyper-V Infrastructure Overview. - Проверьте связи между кластером, узлами и виртуальными машинами.
Устранение неполадок
Расширение не запускается
Проверьте:
- установлен ли ЕдиныйАгент на узле;
- добавлено ли расширение в
elevated_privileges_extensions; - перезапущена ли служба ЕдиногоАгента после изменения конфигурации;
- соответствует ли имя расширения
ru.ruscomtech.extension.hyperv; - доступен ли PowerShell;
- включена ли роль Hyper-V;
- отсутствуют ли ошибки в журнале расширения.
Узел отображается, но виртуальные машины отсутствуют
Проверьте:
- набор функций
virtual-machine; - фильтр виртуальных машин;
- режим
ALLOWилиDENY; - права на выполнение команд Hyper-V PowerShell;
- доступ к WMI-классам Hyper-V;
- наличие работающих виртуальных машин на этом узле.
Расширение должно быть включено на каждом узле кластера. Один узел не собирает все локальные показатели виртуальных машин с остальных узлов.
Не определяется кластер
Проверьте:
- установлен ли компонент Failover Clustering;
- доступна ли команда получения сведений о кластере в PowerShell;
- фильтр кластера;
- выполнение расширения от имени
LOCAL SYSTEM.
Узлы, не входящие в кластер, могут контролироваться отдельно.
После миграции виртуальная машина видна на двух узлах
Версия 4.1.5 содержит исправления очистки устаревших данных о размещении виртуальных машин.
Проверьте:
- что на всех узлах используется одинаковая версия расширения;
- что конфигурация активна на всех узлах;
- что сбор данных завершается без ошибок;
- что фильтры виртуальных машин одинаковы на всех узлах.
Не создаётся связь с гостевой ОС
Связь определяется по IP-адресу.
Проверьте:
- установлен ли ЕдиныйАгент внутри гостевой ОС;
- передаёт ли Hyper-V IP-адрес виртуальной машины;
- совпадает ли IP-адрес с адресом гостевой ОС;
- установлен ли Microsoft Linux Integration Services для Linux-гостя.
История изменений
| Версия | Изменения |
|---|---|
| 4.1.5 | Перепакованы Python-библиотеки для будущей совместимости с Python 3.14. |