img

Поиск и устранение проблем производительности виртуальной машины ESX/ESXi

В этой статье поговорим о локализации проблем функционирования ESXi/ESX.

Поиск и устранение проблем производительности виртуальной машины ESX/ESXi

Неисправности. Что может быть не так?

  1. ПО, работающее в гостевой виртуальной машине - медленно реагирует на команды управления;
  2. ПО, работающее в гостевой виртуальной машине, периодически прерывают работу;
  3. Гостевая виртуальная машина работает медленно или не отвечает на запросы.

Проблемы с производительностью могут случаться из-за ограничений центрального процессора (CPU), переполнения памяти или, например, задержкой сети. Если виртуалки работают плохо, скорее всего имеют место траблы с памятью. Устраним?


Решение (воркэраунд)

Ограничения центрального процессора (проблемы CPU)

Чтобы определить, связана ли низкая производительность виртуалки с ограничением центрального процессора, надо:

  1. Используйте команду esxtop для того, чтобы определить основные параметры производительности аппаратного сервера виртуалки
    1. Проверьте командой load average загрузку. Если среднее значение нагрузки равно 1.00 , то физические ЦП (центральные процессоры) гипервизора ESXi/ESX полностью используются, а среднее значение нагрузки, равное 0.5, значит, что используются наполовину. Логика, думаю, вам понятна. Значение нагрузки, равное 2.00, означает, что система в целом переполнена (бегите в серверную с огнетушителем 👀)
    2. Проверьте поле %READY на процент времени на момент, когда виртуальная машина была готова, но не смогла запуститься на физическом ЦП. При нормальных условиях эксплуатации это значение должно находиться в пределах 5%. Если это значение высокое, и виртуальная машина имеет плохую производительность, тогда проверьте ограничение центрального процессора:
      • Убедитесь, что на виртуальной машине не установлен предел ЦП.
      • Убедитесь, что на виртуальной машине не установлен пул ресурсов (Resource Pool).
      Если среднее значение нагрузки слишком высокое и время ожидания не вызвано ограничением центрального процессора, тогда отрегулируйте нагрузку ЦП на хост. Чтобы настроить нагрузку на хост, выполните следующие шаги:
      • Увеличьте значение физического ограничения ЦП на хост
      • Или уменьшите виртуальное ограничение ЦП, выделенное хосту. Чтобы уменьшить это ограничение, сделайте:
        • Уменьшите общее количество ЦП, выделенных всем виртуальным машинам, работающих на узле ESX
        • Или уменьшите количество виртуальных машин, работающих на хосте (но это весьма грубый способ, как мы считаем)
  2. Если Вы используете ESX 3.5, проверьте доступ к IRQ.

Переполнение памяти

Чтобы определить, связана ли низкая производительность с избыточностью памяти:

  1. Используйте команду esxtop для того, чтобы определить основные параметры производительности аппаратного сервера виртуалки.
    1. Проверьте параметр MEM в первой строке вывода. Это значение отражает отношение запрошенной памяти к доступной, минус 1. Например:
      • Если виртуальным машинам требуется 4 ГБ ОЗУ, а хост имеет 4 ГБ ОЗУ, то справедливо соотношение 1:1. После вычитания 1 (из 1/1) поле MEM overcommit avg считывает 0. Вывод - избытка нет и не требуется дополнительной оперативной памяти.
      • Если виртуальным машинам требуется 6 ГБ ОЗУ, а хост имеет 4 ГБ ОЗУ, то есть соотношение 1,5:1. После вычитания 1 (из 1,5/1), поле overcommit avg МЭМ считывает 0,5. Объем оперативной памяти превышен на 50%, что означает, что требуется на 50% больше доступной оперативной памяти.
      Если память перегружается, отрегулируйте нагрузку на хост. Чтобы настроить нагрузку на память, выполните следующие действия:
      • Увеличьте количество физической оперативной памяти на хосте
      • Или уменьшите объем оперативной памяти, выделенной виртуальным машинам. Для уменьшения объема выделенной оперативной памяти:
        • Уменьшите общий объем оперативной памяти, выделяемой всем виртуальным машинам на узле
        • Или уменьшите общее число виртуальных машин на узле.
  2. Определите, являются ли виртуальные машины "раздувающимися" или/и заменяемыми. Для обнаружения раздувания или замены:
    1. Запустите esxtop
    2. Введите m для просмотра памяти
    3. Введите f для управления колонками вывода (полями)
    4. Выберите букву J в поле Memory Swap Statistics "Статистика раздувания памяти" (MCTL)
    5. Посмотрите на значение MCTLSZ. MCTLSZ (MB)отображает объем физической памяти гостя, возвращаемой драйвером баллона (Memory Ballooning).
    6. Введите f для управления колонками вывода (полями)
    7. Выберите букву для статистики свопов памяти (SWAP STATS)
    8. Посмотрите на значение SWCUR. SWCUR (MB) отображает текущее использование обмена.
    Чтобы устранить эту проблему, убедитесь, что раздувание и/или замена не вызваны неправильно установленным пределом памяти

Период ожидания запоминающего устройства

Чтобы определить, связана ли низкая производительность с задержкой хранения данных:

  1. Определите, связана ли проблема с локальным хранилищем. Если связана, то перенесите виртуальные машины в другое место хранения.
  2. Уменьшите количество виртуальных машин на одно логическое устройство.
  3. Найдите записи журнала в Windows guests, которые выглядят следующим образом: The device, DeviceScsiPort0, did not respond within the timeout period.
  4. Используя esxtop, найдите высокое время задержки DAVG.
  5. Определите максимальную пропускную способность ввода-вывода, которую можно получить с помощью команды iometer.
  6. Сравните результаты iometer для виртуальной машины с результатами для физической машины, подключенной к тому же хранилищу.
  7. Проверьте наличие конфликтного обращения к ресурсу SCSI.
  8. Если вы используете ресурсы хранения iSCSI и группу данных jumbo, убедитесь, что все настроено правильно.
  9. Если вы используете ресурсы хранения iSCSI и передачу по нескольким трактам с использованием программного инициатора iSCSI, убедитесь, что все настроено правильно.

При выявлении проблемы, связанной с хранением:

  1. Убедитесь, что аппаратный массив устройства и платы HBA сертифицированы для ESX/ESXi.
  2. Убедитесь, что BIOS физического сервера обновлена.
  3. Убедитесь, что встроенное ПО вашего HBA-адаптера обновлено.
  4. Убедитесь, что ESX может распознать правильный режим и политику пути для типа массива хранения SATP и выбора пути PSP.

Задержка сети

На производительность сети может сильно влиять производительность ЦП. Исключите проблему производительности ЦП перед исследованием сетевой задержки.

Чтобы определить, вызвана ли низкая производительность задержкой сети, выполните следующие действия:

  1. Проверьте максимальную пропускную способность виртуальной машины с помощью инструмента Iperf.
    1. При использовании Iperf измените размер окон TCP на 64 K. Производительность также зависит от этого значения. Чтобы изменить размер окон TCP:
      1. На стороне сервера введите следующую команду: iperf –s
      2. На стороне клиента введите следующую команду: iperf.exe -c sqlsed -P 1 -i 1 -p 5001 -w 64K -f m -t 10 900M
    1. Запустите Iperf с компьютера вне хоста ESXi/ESX. Сравните результаты с ожидаемыми, в зависимости от физической среды.
    2. Выполните команду Iperf с другого компьютера вне хоста ESXi/ESX в той же VLAN на том же физическом коммутаторе. Если производительность хорошая, и проблему можно воспроизвести только на машине в другом географическом месте, то проблема связана с вашей сетевой средой.
    3. Выполните команду Iperf между двумя виртуальными машинами на одном сервере ESX/portgroup/vswitch. Если результат хороший, можно исключить проблему с ЦП, памятью или хранилищем.

Если вы определяете параметры, которые ограничивают производительность системы в сети:

  1. Если вы используете ресурсы хранения iSCSI и кадры jumbo, убедитесь, что все настроено правильно.
  2. Если вы используете Network I/O Control,то убедитесь, что общие ресурсы и ограничения правильно настроены для вашего трафика.
  3. Проверьте правильность настройки формирования траффика.
Ссылка
скопирована
Системное администрирование
Скидка 10%
Администратор Linux
Стань Linux администратором и сделай весомый шаг в сторону карьеры в DevOps. Самые важные знания от сертифицированного и практикующего тренера с 20 летним стажем
Получи бесплатный
вводный урок!
Пожалуйста, укажите корректный e-mail
отправили вводный урок на твой e-mail!
Получи все материалы в telegram и ускорь обучение!
img
Еще по теме:
img
Виртуализация серверов – это разделение одного физического сервера на несколько виртуальных серверов, каждый из которых работает
img
На базе нашего опыта и статей мы сделалем еще один полезный документ: руководство администратора по Linux/Unix системам. В докум
img
Удаленный доступ к системам давно стал необходимостью, и сейчас с трудом можно представить, что было бы, если бы мы не могли упр
img
Все мы любим компьютеры. Они могут делать столько удивительных вещей. За пару десятилетий компьютеры произвели самую настоящую р
img
Архитектуры х64 и х86 являются одними из наиболее широко используемых типов архитектур системы команд (АСК или ISA – Instr
img
Gzip – один из самых популярных алгоритмов сжатия, который позволяет сократить размер файла, но при этом сохранить исходный файл
Комментарии
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59