При попытке заняться наукой ответь на этот вопрос, Я взял гостевую систему Windows 7 на хосте Server 2008 R2, управляемом SCVMM 2012, и запустил на нем Prime95, чтобы просто увеличить загрузку ЦП.
Вот Гость:
Хост Hyper-V показывает 12%, что составляет 1/8 ядра (это то, что выделено), так что это выглядит правильно:
Но SCVMM показывает 0%:
Я оставил стресс-тест запущенным на долгое время, думая, что, возможно, SCVMM усредняет за долгое время (я думал, что это было 9 минут, но, как известно, я ошибался; просто не говорите моей жене).
Почему SCVMM показывает 0%, когда все остальное не согласуется?
Из инженерного блога SCVMM:
Узлы Hyper-V предоставляют определенные счетчики производительности для физического узла и виртуальных машин, находящихся на нем. Сервер SCVMM обращается к каждому узлу Hyper-V через WSMAN, чтобы собрать эти метрики производительности для узла и его виртуальных машин. SCVMM собирает метрики производительности виртуальной машины непосредственно со своего хоста из-за некоторых ограничений того, что виртуальная машина понимает о своей истинной производительности. Здесь объясняется несколько интересных показателей.
1 - Среднее значение ЦП хоста отображается в консоли SCVMM в виде счетчика «% общего времени работы» набора счетчиков «Логические процессоры гипервизора Hyper-V (_Total)» ***, усредненного за последние 9 минут. Этот счетчик фиксирует загрузку процессора, вызванную хостом (родительским разделом) и виртуальными машинами. Это значение и другие метрики производительности хоста можно обновить по запросу в рамках задачи Refresh-VMHost или Refresh в консоли SCVMM. Обратите внимание, что это значение отличается от того, что показывает счетчик диспетчера задач хоста или% загруженности процессора (_Total), который учитывает только использование родительского раздела.
2 - Среднее значение ЦП виртуальной машины отображается в консоли SCVMM как счетчик «% времени работы гостя» набора счетчиков «Виртуальный процессор гипервизора Hyper-V (_Total)». Это процент времени, затрачиваемого виртуальным процессором (ами), на котором работает виртуальная машина. Поскольку Hyper-V позволяет контролировать, сколько процессоров и какой процент их мощности можно назначить виртуальной машине, значение счетчика Guest Run Time никогда не может превышать указанный предел (см. Изображение ниже). Обратите внимание, что это сильно отличается от% ЦП виртуальной машины, отображаемого в консоли Hyper-V, в которой загрузка ЦП отображается как загрузка логических процессоров узла виртуальной машины.
Таким образом, SCVMM использует WinRM (который является реализацией WSMan в Windows) для сбора этих счетчиков производительности. Можете ли вы установить сеанс WinRM с вашего сервера SCVMM на хост Hyper-V? Можете ли вы затем запросить эти счетчики удаленно? (Они могут находиться в пространстве имен виртуализации, а не в пространстве имен CIMV2.)
Есть ли что-нибудь в журналах о том, что SCVMM не может собирать данные для этих счетчиков?
Кроме того, попробуйте "winrm quickconfig" или "winrm qc" на вашем хосте Hyper-V, если он еще не включен и не прослушивает.
Тестирование удаленной функциональности WinRM
В командной строке с повышенными привилегиями введите:
идентификатор Winrm –r: удаленный сервер
Это должно привести к выводу, подобному приведенному ниже:
идентификатор Winrm -r: vmmr2lab-cl20
IdentifyResponse
ProtocolVersion = http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
ProductVendor = Microsoft Corporation ProductVersion = OS: 6.1.7201 SP: 0.0 Стек: 2.0
Если вместо этого появляется ошибка, подобная приведенной ниже, это означает, что WinRM неправильно настроен на удаленном компьютере или что-то препятствует обмену данными через порт WinRM между двумя системами. Это может быть брандмауэр или антивирусные / вредоносные программы.
WSManFault
Сообщение = Клиент WinRM не может завершить операцию в течение указанного времени. Убедитесь, что имя машины допустимо и доступно по сети, а исключение брандмауэра для службы удаленного управления Windows включено.
Номер ошибки: -2144108250 0x80338126
Клиент WinRM не может завершить операцию в течение указанного времени. Проверьте
если имя машины допустимо и доступно по сети, а исключение брандмауэра для службы удаленного управления Windows включено.
В этом случае протестируйте локальную функциональность WinRM в удаленной системе. Если WinRM настроен правильно в удаленной системе, то, скорее всего, причиной является сетевое взаимодействие между двумя машинами. Устраните эту проблему, как и любую проблему с сетью.