Нагрузочное тестирование SDS в zVirt 4.2
В рамках нагрузочного тестирования было проведено исследование производительности SDS на базе Gluster в различных условиях.
Тестирование выполнялось в гиперконвергентной среде с 3 хостами. Характеристики хостов следующие:
-
2 процессора Intel® Xeon® Gold 5320 CPU по 52 vCPU.
-
1 TiB RAM.
-
Сетевые интерфейсы для Gluster: MT2894 Family [ConnectX-6 Lx] 10 Gbit/s. Коммутация по SFP+. Собран LACP из 2 интерфейсов.
-
8 SSD SAMSUNG MZ7LH960 960GB подключенных по SATA 3.
Характеристики SSD, заявленные производителем:
-
Sequential Read: 550 MB/s.
-
Sequential Write: 520 MB/s.
-
Random Read: 98K IOPS.
-
Random Write: 28K IOPS.
Характеристики среды:
-
Версия zVirt: 4.2
-
Версия ядра: 4.18.0-553.6.1.el8.x86_64
-
Версия GlusterFS: glusterfs-11.1-2.el8.x86_64
-
Версия libvirt: libvirt-8.0.0-23.module_el8+785+dceced31.x86_64
-
Версия qemu-kvm: qemu-kvm-6.2.0-47.module_el8+890+5e1fb8d4.x86_64
Для тестирования использовалась утилита fio со следующими параметрами:
-
Характер нагрузки: 50% случайное чтение, 50% случайная запись
-
Количество потоков: 4
-
Глубина очереди: 32
Результаты представлены в таблице ниже.
Параметры тестирования |
IOPS |
Пропускная способность (MiB/s) |
||
Read |
Write |
Read |
Write |
|
Исследования на уровне хоста |
||||
Определение контрольных показателей производительности LVM + xfs на хосте. |
39600 |
39600 |
155 |
155 |
Определение показателей производительности реплицированного тома (replica 3, по 1 SSD в брике, блок 4K):
|
1357 |
1352 |
5.4 |
5.4 |
1339 |
1373 |
5.4 |
5.5 |
|
1383 |
1313 |
5.5 |
5.3 |
|
1251 |
1376 |
5.0 |
5.5 |
|
1410 |
1388 |
5.6 |
5.6 |
|
1274 |
1335 |
5.1 |
5.3 |
|
Определение показателей производительности реплицированного тома (replica 3, по 1 SSD в брике) c разными размерами блока:
|
4268 |
4280 |
33.3 |
33.4 |
4133 |
3988 |
64.6 |
62.3 |
|
3803 |
3730 |
119 |
117 |
|
3456 |
3453 |
216 |
216 |
|
2227 |
2303 |
278 |
288 |
|
1137 |
1123 |
284 |
281 |
|
Определение показателей производительности распределенного реплицированного тома (replica 3 по 2 SSD в группе репликации, блок 8K). ВМ не запущены. |
866 |
843 |
6.9 |
6.7 |
Определение показателей производительности распределенного реплицированного тома (replica 3 по 4 SSD в группе репликации, блок 8K). ВМ не запущены. |
1023 |
1015 |
8.2 |
8.1 |
Определение показателей производительности распределенного реплицированного тома (replica 3 по 4 SSD в группе репликации, блок 8K) при увеличении MTU сети Gluster до 9000. ВМ не запущены. |
1091 |
1125 |
8.7 |
9.0 |
Определение показателей производительности распределенного реплицированного тома (replica 3 по 4 SSD в группе репликации, блок 8K) при увеличении MTU сети Gluster до 9000. Запущено 1500 ВМ. |
1105 |
1111 |
8.8 |
8.9 |
Исследования на уровне гостевой ОС |
||||
Определение показателей производительности реплицированного тома (replica 3, по 1 SSD в брике, блок 8K):
Замеры производительности выполнялись внутри контрольной ВМ. |
425 |
428 |
3.4 |
3.4 |
429 |
419 |
3.4 |
3.4 |
|
416 |
409 |
3.3 |
3.3 |
|
381 |
377 |
3.0 |
3.0 |
|
Определение показателей производительности распределенного реплицированного тома (replica 3 по 2 SSD в группе репликации, блок 8K):
Замеры производительности выполнялись внутри контрольной ВМ. |
457 |
424 |
3.7 |
3.4 |
435 |
427 |
3.5 |
3.4 |
|
376 |
410 |
3.0 |
3.3 |
|
384 |
380 |
3.1 |
3.0 |
|
Определение показателей производительности распределенного реплицированного тома (replica 3 по 4 SSD в группе репликации, блок 8K):
Замеры производительности выполнялись внутри контрольной ВМ. |
432 |
424 |
3.5 |
3.4 |
434 |
422 |
3.5 |
3.4 |
|
376 |
403 |
3.0 |
3.2 |
|
336 |
386 |
2.7 |
3.0 |
|
Также дополнительно был проведен тест на стабильность в рамках которого создавалась нагрузка в течение суток. Результаты теста показали, что Gluster стабильно работает на полной и длительной нагрузке. При этом, если нагрузка равномерная (без всплесков), производительность увеличивается (тесты показали 6.5k IOPS на чтение и 6.4k IOPS на запись).
Ключевые выводы, которые можно сделать исходя из результатов тестирования:
-
Параллельное выполнение виртуальных машин на одном томе Gluster не приводит к значительному снижению производительности.
-
Оптимальный размер блока при использовании Gluster составляет 8К-16К.
-
Использование Jumbo frame с MTU 9000 увеличивает производительность Gluster в среднем на 6%.
-
На одном домене хранения Gluster могут стабильно работать до 1500 виртуальных машин, что соответствует лимитам для доменов хранения других типов.
-
Gluster стабильно работает на длительных нагрузках, показывая увеличенную производительность при отсутствии всплесков.