Показатели производительности дисковой подсистемы ВМ на различных системах виртуализации
Эффективность работы приложений в виртуальных машинах зависит от скорости дисковой подсистемы. Недостаточная производительность приводит к задержкам в работе приложений или значительному снижению быстродействия. Для достижения оптимальной производительности виртуальных машин в среде виртуализации необходимо спланировать ресурсы, провести сайзинг систем хранения данных и выбрать оптимальный тип используемого хранилища. С целью демонстрации ниже представлены таблицы показателей производительности дисков виртуальных машин (профиль нагрузки в МБ/сек. и в операциях I/O в секунду).
Показатели получены с использованием свободно распространяемого ПО, позволяющим произвести автоматизированные нагрузочные тесты для оценки производительности виртуальных дисков с файловой системой.
Методика проведения нагрузочных тестов
Для проведения нагрузочных тестов создается ВМ (8 vCPU/16 RAM) с ОС Astra Linux 1.7.5 на одном из используемых типов хранилищ.
В ОС Astra Linux 1.7.5 устанавливается свободно распространяемое ПО для анализа производительности дисковой подсистемы. С помощью данного ПО запускаются автоматизированные нагрузочные тесты длительностью 5 минут со сценариями:
-
randread — случайное чтение.
-
randwrite — случайная запись.
-
read — последовательное чтение.
-
write — последовательная запись.
Оценка показателей производительности дисковой подсистемы ВМ производится на основе полученных показателей IOPS и используемого размера блока данных.
Профиль нагрузки используется с параметрами:
-
numjobs — 8 одновременных заданий.
-
threads — по 1 потоку на каждое задание.
-
iodepth — глубина очереди ввода-вывода 16.
-
size — объём данных для каждого задания в размере 2 Гб.
Системные характеристики стенда:
-
2 x Intel(R) Xeon(R) CPU E5-2660 v2 @ 2.20GHz.
-
148 Гб DDR3-1333MHz.
-
Kingston SSD SA400S37/480G.
-
Broadcom NetXtreme II BCM57712 10 Gigabit Ethernet.
Типы используемых хранилищ
-
ZFS.
Пояснения к полученным показателям
Представленные в таблице показатели производительности позволяют выделить основные сценарии использования систем виртуализации и типов хранилища:
- Развёртывание приложений с высокой интенсивностью IOPS.
- Кластерные системы с высокой доступностью приложений.
- Создание гиперконвергентной инфраструктуры.
- Реализация систем резервного копирования и файловых хранилищ.
Правильный выбор типа хранилища для системы виртуализации напрямую зависит от сценария использования и ваших требований к инфраструктуре. Например, в системах, где ключевым фактором является надёжность, отказоустойчивость и высокая доступность приложений, необходимо использовать кластерные файловые системы, такие как GFS2, или GlusterFS. При этом GlusterFS, как и ZFS, будет оптимальным решением для реализации гиперконвергентных инфраструктур.
Если же требования к хранилищу ограничиваются производительностью в рамках одного узла, то оптимальным выбором станут локальные SSD-хранилища или использование Direct LUN. Производительность при этом будет зависеть от аппаратных характеристик используемых дисков.