Для улучшения работы сайта мы используем файлы cookies. Оставаясь на сайте, вы соглашаетесь с политикой обработки персональных данных.

Нагрузочное тестирование 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):

  • Без запущенных ВМ

  • Запущена 1 ВМ

  • Запущено 4 ВМ

  • Запущено 16 ВМ

  • Запущено 64 ВМ

  • Запущено 200 ВМ

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 разными размерами блока:

  • 8K

  • 16K

  • 32K

  • 64K

  • 128K

  • 256K

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):

  • Запущена 1 ВМ

  • Запущено 4 ВМ

  • Запущено 8 ВМ

  • Запущено 16 ВМ

Замеры производительности выполнялись внутри контрольной ВМ.

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):

  • Запущена 1 ВМ

  • Запущено 4 ВМ

  • Запущено 8 ВМ

  • Запущено 16 ВМ

Замеры производительности выполнялись внутри контрольной ВМ.

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):

  • Запущена 1 ВМ

  • Запущено 4 ВМ

  • Запущено 8 ВМ

  • Запущено 16 ВМ

Замеры производительности выполнялись внутри контрольной ВМ.

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 стабильно работает на длительных нагрузках, показывая увеличенную производительность при отсутствии всплесков.