Перейти к основному содержимому

Ресурсы процессора на виртуальной машине утилизируются не в полном объеме

Описание проблемы

Может возникнуть ситуация, когда ресурсы процессора на виртуальной машине утилизируются не в полном объеме.

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

Внимание

Стоить обратить внимание на показатель очереди использования CPU (CPU Ready), который со временем начинает увеличиваться.

Пример повышенного использования процессора

Почему возникает проблема?

Проблемы с утилизацией процессора могут быть связаны с неправильными настройками выделения процессора на виртуальную машину для работы NUMA технологии (последнее утратило силу в ESXi 8 и более поздних версиях).

Проверка утилизации процессора

Проверка утилизации процессора в Cloud Director

Для диагностики и подтверждения проблемы полной утилизации процессора виртуальной машиной необходимо обратиться в техническую поддержку провайдера, чтобы сотрудники технической поддержки провайдера провели проверку графиков утилизации процессора виртуальной машиной в Cloud Director. (см. Как открыть новый тикет)

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

Варианты решения проблемы

Распределение ядер процессора

Проверка распределения ядер между физическими процессорами

Конфигурация ядер процессора должна быть распределена между двумя процессорами.

Базовая частота процессора для виртуального ЦОД

Проверка параметра vCPU speed в Cloud Director

Виртуальные дата-центры создаются по шаблону, в котором данный показатель прописан статично, поэтому вариант ошибки можно исключить, но не будет лишним попросить техническую поддержку провайдера дополнительно проверить данную информацию (см. Как открыть новый тикет)

CPU Limit на виртуальной машине после переноса виртуальной машины от другого провайдера

Чаще всего проблема может наблюдаться после переноса виртуальной машины от другого провайдера. Скорее всего, как основная причина, будет отличаться базовая частота процессора, которая была прежде. Данная настройка хранится в конфигурации виртуальной машины.

Для наглядности рассмотрим пример.

За основу берем виртуальную машину с 8 ядрами на кластере с базовой частотой процессора 2,6ГГц. Если перемножить тактовую частоту процессора на количество ядер, то в сумме мы должны получить 20,8ГГц для виртуальной машины. Но нужно посмотреть на фактические данные виртуальной машины в Advanced меню из панели администратора Cloud Director.

warning

Меню Advanced доступно только для специалистов технической поддержки провайдера. Необходимую информацию можно запросить через службу технической поддержки провайдера.

(см. Как открыть новый тикет)

Проверка параметра CPU Limit в Cloud Director

Как мы можем наблюдать, то виртуальная машина имеет установленный лимит в 8ГГц, что не дает виртуальной машине задействовать все выделенные виртуальной машине ресурсы в количестве 20,8ГГц в полном объеме. Такое возможно, если у виртуальной машины ранее не был изменён параметр vCPU Speed на верный, когда виртуальная машина располагалась у другого провайдера.

Стоит отметить, что при переносе виртуальной машины к новому провайдеру, этот параметр автоматически не меняется. Параметр vCPU Speed необходимо изменить хотя бы раз, чтобы конфигурация обновилась под новые значения.

Внимание

При изменении параметра vCPU Speed, нужно выставить правильные настройки для распределения ядер между процессорами (см. скриншот)

Пример распределения ядер по физическим процессорам в Cloud Director

После сохранения изменений в панели администратора Cloud Director можно увидеть, что конфигурация CPU Limit приняла верные значения.

Внимание

Меню Advanced доступно только для специалистов технической поддержки провайдера. Необходимую информацию можно запросить через службу технической поддержки провайдера.

(см. Как открыть новый тикет)

Проверка параметра CPU Limit в Cloud Director

Для проверки решения проблемы нужно запустить виртуальную машину, запустить стресс-тесты, и проверить текущие значения.

Проверка утилизации ресурсов процессора виртуальной машиной

Дополнительно необходимо запросить у службы технической поддержки провайдера проверку графиков виртуальной машины в Cloud Director (см. Как открыть новый тикет)

Проверка утилизации процессора в Cloud Director

Если обратиться к скриншоту, то мы можем наблюдать, что проблема была решена и ресурсы процессора утилизируются виртуальной машиной в полном объеме.