Влияние типа контроллера подключения диска на производительность Proxmox ВМ

 

Влияние типа контроллера подключения диска на производительность Proxmox ВМ

Эта публикация во много будет похожа с публикацией, где было проведено тестирование производительности дисков в зависимости от режима кеширования. Только с той лишь разницей, что в этой публикации протестируется влияние типа контроллера подключения диска на производительность Proxmox ВМ. Тип шины – это один из четырех возможных вариантов подключения диска в настройках виртуальной машины Proxmox.


Описание окружения

В качестве тестового стенда использовался сервер Proxmox, который установлен поверх физического сервера HP DL360 G8 с аппаратным RAID-контроллером HP Smart Array P420i.

Ниже приведены более детальные параметры.

Версия гипервизора: Proxmox VE 7.4.17

Версия ядра: Linux 5.15.116-1-pve

Физический сервер: HP DL360 G8.

ЦП: 2 х Intel Xeon E5-2670 v2

RAID-контроллер: HP Smart Array P420i + 1 ГБ кэш + BBU.

Логический диск: RAID0 1 x 960 GB SSD Intel D3-S4510. RAID собран средствами аппаратного RAID контроллера Smart Array. Дополнительной нагрузки на этом диске нет.

Методика тестирования

Для тестирования будет использоваться виртуальная машина с Ubuntu Server 20.04, которая расположена непосредственно на сервере Proxmox. Для тестирования подключен второй диск, отдельный от системного диска.


Тестирование будет осуществляться утилитой ioping.

Будут выполнены следующие тесты:

Производительность операции чтения с размеров блока 4 килотайта.

ioping -c 10 -s 4k /dev/vdb

Производительность операции чтения с размеров блока 1 мегабайт.

ioping -c 10 -s 1024k /dev/vdb

Производительность операции записи с размеров блока 4 килотайта.

ioping -WWW -c 10 -s 4k /dev/vdb

Производительность операции записи с размеров блока 1 мегабайт.

ioping -WWW -c 10 -s 1024k /dev/vdb

Производительность операции последовательного чтения с диска с размером блока 4 мегабайта:

ioping -L -s 4m -с 10 /dev/vdb

Производительность операции последовательной записи на диск с размером блока 4 мегабайта:

ioping -WWW -L -s 4m -с 10 /dev/vdb

Для более объективного результата влияние типа контроллера подключения диска на производительность каждый из тестов будет выполняться 10 раз и высчитывать среднее значение для результата. В качестве метрик будет использоваться количество iops и скорость чтения (записи) на диск. Например:

Политика кеширования диска – default (No cache).

Типы контроллера подключения диска в Proxmox

Краткая сводка по доступным типам контроллеров подключения образа диска приведена в таблице ниже.

Тип контроллера

Описание

IDE

Наиболее возрастной из всех представленных типов. Основное его преимущество – это поддержка стырами ОС. На этом преимущества заканчиваются. Самый медленный из всех. К контроллеру можно подключить до 4-х устройств.

SATA

Приемник IDE. Более высокая скорость. Можно подключить до 6-ти устройств к контроллеру.

SCSI

Контроллер SCSI в основном используется в серверах. Соответственно, позволяет подключить до 14-ти устройств. Proxmox эмулирует SCSI контроллер LSI 53C895A.

VirtIO Block

“Нарисованный” контроллер. Для его работы необходимо установить драйвера VirtIO в гостевой ОС. Наиболее производительный из всех типов контроллеров.

Результаты тестирования

В результаты по каждому из тестов будут приведены в одноименном разделе ниже.

Случайное чтение блоками 4 килобайта

Результаты тестирования случайного чтения блоками по 4 килобайта приведены ниже:

В целом здесь прослеживается тенденция, которая приведена в таблице ниже со сводной информацией по каждому из типов подключения. Самый быстрый – VirtIO. Режим IDE примерно в 1,5 раза медленнее.

Случайное чтение блоками 1 мегабайт

Диаграмма с результатами тестирования приведена ниже.

Здесь уже результаты не так однозначны. Особенно выделяется медленные показатели для режима SATA. Хотя ожидались подобные результатов для IDE.

Случайная запись блоками 4 килобайта

Результаты тестирования:

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

Случайная запись блоками 1 мегабайт

Сводные результаты приведены ниже:

Насколько SATA контроллер провалился в аналогичном тесте на чтение, настолько он вырвался в лидеры в тесте на запись. Между VirtIO и SCSI примерно паритет.

Линейное чтение блоками 4 мегабайта

Результаты:

И уже не в первый раз можно заметить, что SATA контроллер оказывается медленее IDE.

Линейная запись блоками 4 мегабайта

Результаты последнего теста:

В очередной раз SATA контроллер показал себя лучше всех в операции записи большими блоками (больше 1 мегабайта). IDE самый медленный. SCSI и VirtIO примерный паритет.

 

Итоги

Подводя итог можно резюмировать следующее. За исключением некоторых нюансов производительность контроллеров увеличивается в следующем порядке: IDE -> SATA -> SCSI – VirtIO.

Теперь к нюансам – контроллер SATA показывает самую маленькую скорость на чтение большими блоками, но в тоже время оказывается быстрее всех при записи большими блоками.

Поэтому самый оптимальный вариант – это контроллер VirtIO. Если для гостевой ОС по каким-то причинам нет драйвера для VirtIO или нет возможности его установить, то наиболее оптимальным вариантов будет SCSI контроллер. Контроллер IDE использовать только в самую последнюю очередь.

 

 

 

Источник.

Метаданные статьи

Идентификатор статьи:
21
Категория:
Дата добавления:
2024-02-29 20:44:56
Просмотры:
992
Рейтинг (Голоса):
(1)

Связанные статьи