none
Server 2012R2 - % использования ЦП Хост/Гость RRS feed

  • Вопрос

  • Здравствуйте. Прошу подсказки.

    Имеется хост на 2012R2. Имеем 4 аппаратных ядра или 8 лог. процессоров.

    На хосте 3 гостя.



    По моему представлению 1-й гость может забрать себе 100% 6ти вирт. процессоров хоста или 75% всех его физ. процессоров, так?

    Но при этом если ЦП 1-го гостя загружено на 80%, т.е. 80% от 6ти вирт процессоров, то в эту же секунду ЦП хоста загружено на <10%.

    PerfMon дает теже результаты при длительном мониторинге.

    Как дать гостю больше загружать ЦП хоста?

    Или вообще диспетчер задач в данном случае не отражает реальной ситуации и надо смотреть в диспетчер Hyper-V?

    Спасибо.

    3 августа 2016 г. 7:08

Ответы

Все ответы

  • Не нужно никогда смотреть загрузку CPU в диспетчере задач виртуальной машины.

    https://msdn.microsoft.com/en-us/library/cc768535(v=bts.10).aspx


    http://OpsMgr.ru/

    • Помечено в качестве ответа Kirill Vakhrushev 3 августа 2016 г. 8:32
    3 августа 2016 г. 7:17
    Отвечающий
  • Дело в том, что диспетчер задач хоста покажет загрузку ЦП родительского раздела, но не будет учитывать загрузку ЦП, которую генерируют гостевые. Иными словами - диспетчер задач хоста не отражает реальную нагрузку на сервер.

    Чтобы понять на сколько у вас реально загружен ЦП, вам нужно воспользоваться счетчиками производительности группы Hyper-V Hypervisor Logical Processor. Вам нужен счетчик:

    Hyper-V Hypervisor Logical Processor(_Total)\% Total Run Time

    При этом группы счетчиков Processor и Processor Information на хосте в принципе бесполезны. Если на хосте установлена роль Hyper-V, для отслеживания показателей производительности ЦП родительского раздела (то есть самого хоста) нужна группа счетчиков Hyper-V Hypervisor Root Virtual Processor 

    Ну а чтобы увидеть нагрузку ЦП каждой виртуальной машины, на хосте нужно отслеживать группу счетчиков Hyper-V Hypervisor Virtual Processor. Там можно будет выбрать виртуальные процессоры только определенной ВМ. Вы заметите, что эти показатели немного будут отличаться от того, что вам покажет диспетчер задач внутри виртуалки

    3 августа 2016 г. 7:33
  • Понял.

    Значит сейчас проверю загрузку хоста Hyper-V Hypervisor Logical Processor

    и 

    загрузку ЦП ВМ с хоста через Hyper-V Hypervisor Root Virtual Processor

    3 августа 2016 г. 7:41
  • может быть вам поможет разобраться статья - http://blog.bissquit.com/windows/windows-server/hyper-v-host-cpu-monitoring/ Там есть полезная ссылка на документацию по архитектуре гипервизора - достаточно один раз всмотреться и все сразу встает на свои места - https://msdn.microsoft.com/en-us/library/cc768520(v=bts.10).aspx
    • Изменено Egor Vasilev 3 августа 2016 г. 7:44
    • Помечено в качестве ответа Kirill Vakhrushev 3 августа 2016 г. 8:32
    3 августа 2016 г. 7:43
  • Да тут график более адекватный получился.


    Отсюда видно что в общем то  загрузка соответствует соотношению лог. проц. к выделенным виртуальным. И нагрузка лог/вирт почти 1 к 1.
    3 августа 2016 г. 8:19
  • вы упоминали, что у вас первая виртуалка может быть по процу загружена на 80%. Это достаточно много и хорошо бы ей выдать дополнительные ресурсы. Но в таком случае у вас скорее всего ЦП хоста станет узким местом и могут пострадать другие виртуалки. 
    3 августа 2016 г. 8:26
  • Ввиду возросшей нагрузки и возникла необходимость разбираться в загруженности.

    Ресурсов на этом хосте больше нет. Поэтому будем видимо расширяться.


    3 августа 2016 г. 8:30
  • как вариант можно на серверах виртуализации комбинировать виртуалки по характеру нагрузки. Например одна виртуалка прожорливая на ЦП, но не требовательная к дискам. Другая виртуалка наоборот прожорливая на диски, но абсолютно не зависящая от ЦП. И так далее.

    Конечно если одна единственная виртуалка вылезает за максимальную мощность ЦП хоста, то тут уже ничего кроме замены ЦП или миграции на другой сервер виртуализации (с более производительным ЦП) не сделать 

    3 августа 2016 г. 8:43