Искал какое-то время и не может найти ответ или даже направления, чтобы смотреть вперед.
Так. Кластер XCP-NG из трех серверов HP DL360p G8, MSA 2060 iSCSI NAS с 12 дисками SAS 10K, QNAP TS-1273U-RP, коммутатор Mikrotik CRS317. Сеть хранения находится в выделенном мосту в микротике. Все устройства подключены 3-метровым медным кабелем. Все устройства показывают, что ссылка 10G. Я даже настроил MTU на 9000 для всех устройств. Каждый сервер имеет карту Ethernet с двумя интерфейсами. Один используется только для сети хранения (eth1 на всех трех серверах). Разные подсети для сети хранения и сети управления. Серверная часть сети Xen — openvswitch.
Джамбо-фреймы работают:
ping -M do -s 8972 -c 2 10.100.200.10 -- QNAP
PING 10.100.200.10 (10.100.200.10) 8972 (9000) байт данных.
8980 байт от 10.100.200.10: icmp_seq=1 ttl=64 время=1,01 мс
8980 байт от 10.100.200.10: icmp_seq=2 ttl=64 время=0,349 мс
--- Статистика пинга 10.100.200.10 ---
2 пакета передано, 2 получено, 0% потери пакетов, время 1001 мс
rtt min/avg/max/mdev = 0,349/0,682/1,015/0,333 мс
ping -M do -s 8972 -c 2 10.100.200.8 -- MSA 2060
PING 10.100.200.8 (10.100.200.8) 8972(9000) байт данных.
8980 байт из 10.100.200.8: icmp_seq=1 ttl=64 время=9,83 мс
8980 байт из 10.100.200.8: icmp_seq=2 ttl=64 время=0,215 мс
--- Статистика пинга 10.100.200.8 ---
2 пакета передано, 2 получено, 0% потери пакетов, время 1001 мс
rtt min/avg/max/mdev = 0,215/5,023/9,832/4,809 мс
Проблема: когда я копирую виртуальную машину из одного хранилища (QNAP) в другое (MSA), скорость записи составляет около 45 МБ/с. Когда я копирую большой файл из QNAP (например, установка iso) в локальное хранилище сервера, скорость составляет около 100 МБ/с, а на этом сервере хтоп
показывает одно ядро при 100% загрузке
Хорошо видно, что сеть работает как сеть 1G.
Немного информации об оборудовании.
ethtool -я eth1
драйвер: ixgbe
версия: 5.5.2
версия прошивки: 0x18b30001
расширение-rom-версия:
информация о шине: 0000:07:00.1
поддержка-статистика: да
поддержка-тест: да
поддерживает доступ к eeprom: да
поддерживает регистрацию дампа: да
поддерживает-приват-флаги: да
эттул эт1
Настройки для eth1:
Поддерживаемые порты: [FIBER]
Поддерживаемые режимы связи: 10000baseT/Full
Поддерживаемое использование кадра паузы: Симметричный
Поддерживает автосогласование: Нет
Поддерживаемые режимы FEC: не сообщается
Рекламируемые режимы ссылки: 10000baseT/Full
Рекламируемое использование кадра паузы: Симметричный
Рекламируемое автосогласование: Нет
Заявленные режимы FEC: не сообщается
Скорость: 10000 Мбит/с
Дуплекс: Полный
Порт: медь прямого подключения
ПЬЯД: 0
Приемопередатчик: внутренний
Автосогласование: выключено
Поддерживает пробуждение: d
Пробуждение: д
Текущий уровень сообщения: 0x00000007 (7)
ссылка на датчик drv
Ссылка обнаружена: да
лспци | grep сеть
07:00.0 Контроллер Ethernet: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (версия 01)
07:00.1 Контроллер Ethernet: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (версия 01)
Затем я запустил сервер iper3 на этом хосте: iperf3 -s -4
Результаты на хосте сервера:
[ID] Пропускная способность интервальной передачи
[ 5] 0,00–10,04 с 0,00 байт 0,00 бит/с отправитель
[ 5] 0,00–10,04 с 5,48 ГБ 4,69 Гбит/с приемник
[ 7] 0,00–10,04 с 0,00 байт 0,00 бит/с отправитель
[ 7] 0,00–10,04 с 5,44 ГБ 4,66 Гбит/с приемник
[SUM] 0,00–10,04 с 0,00 байт 0,00 бит/с отправитель
[СУММА] 0,00–10,04 с 10,9 Гбайт 9,35 Гбит/с приемник
И клиент на другом хосте: iperf3 -c 10.100.200.20 -P 2 -t 10 -4
Результаты на клиентском хосте:
[ID] Интервальная передача пропускной способности Retr
[ 4] 0,00–10,00 с 5,49 ГБ 4,72 Гбит/с 112 отправитель
[ 4] 0,00–10,00 с 5,48 ГБ 4,71 Гбит/с приемник
[ 6] 0,00–10,00 с 5,45 ГБ 4,68 Гбит/с 178 отправитель
[ 6] 0,00-10,00 с 5,44 ГБ 4,67 Гбит/с приемник
[SUM] 0,00–10,00 с 10,9 Гбайт 9,40 Гбит/с 290 отправителей
[СУММА] 0,00–10,00 с 10,9 Гбайт 9,38 Гбит/с приемник
Что тестировать дальше или как найти узкое место?
iperf3 показывает, что ссылка работает со скоростью 10 Гбит или я неправильно интерпретирую результаты?
Версии программного обеспечения:
xe параметры списка хостов = версия программного обеспечения
версия программного обеспечения (MRO): версия_продукта: 8.2.0; product_version_text: 8.2; product_version_text_short: 8.2; имя_платформы: XCP; платформа_версия: 3.2.0; product_brand: XCP-ng; build_number: выпуск/стокгольм/мастер/7; имя хоста: локальный; дата: 20.05.2021; дбв: 0,0,1; хапи: 1,20; xen: 4.13.1-9.11.1; линукс: 4.19.0+1; xencenter_min: 2,16; xencenter_max: 2,16; network_backend: openvswitch; db_schema: 5.602
версия программного обеспечения (MRO): версия_продукта: 8.2.0; product_version_text: 8.2; product_version_text_short: 8.2; имя_платформы: XCP; платформа_версия: 3.2.0; product_brand: XCP-ng; build_number: выпуск/стокгольм/мастер/7; имя хоста: локальный; дата: 20.05.2021; дбв: 0,0,1; хапи: 1,20; xen: 4.13.1-9.11.1; линукс: 4.19.0+1; xencenter_min: 2,16; xencenter_max: 2,16; network_backend: openvswitch; db_schema: 5.602
версия программного обеспечения (MRO): версия_продукта: 8.2.0; product_version_text: 8.2; product_version_text_short: 8.2; имя_платформы: XCP; платформа_версия: 3.2.0; product_brand: XCP-ng; build_number: выпуск/стокгольм/мастер/7; имя хоста: локальный; дата: 20.05.2021; дбв: 0,0,1; хапи: 1,20; xen: 4.13.1-9.11.1; линукс: 4.19.0+1; xencenter_min: 2,16; xencenter_max: 2,16; network_backend: openvswitch; db_schema: 5.602
Два других сервера имеют карты HP 530FLR-SFP+:
лспци | grep сеть
03:00.0 Контроллер Ethernet: Broadcom Inc. и дочерние компании NetXtreme II BCM57810 10 Gigabit Ethernet (версия 10)
03:00.1 Контроллер Ethernet: Broadcom Inc. и дочерние компании NetXtreme II BCM57810 10 Gigabit Ethernet (версия 10)
ethtool -я eth1
драйвер: bnx2x
версия: 1.714.24 шторм 7.13.11.0
версия прошивки: bc 7.10.10
расширение-rom-версия:
информация о шине: 0000:03:00.1
поддержка-статистика: да
поддержка-тест: да
поддерживает доступ к eeprom: да
поддерживает регистрацию дампа: да
поддерживает-приват-флаги: да
эттул эт1
Настройки для eth1:
Поддерживаемые порты: [FIBER]
Поддерживаемые режимы связи: 1000baseT/Full
10000baseT/полный
Поддерживаемое использование кадра паузы: Симметричный Только для приема
Поддерживает автосогласование: Нет
Поддерживаемые режимы FEC: не сообщается
Рекламируемые режимы ссылки: 10000baseT/Full
Рекламируемое использование кадра паузы: Нет
Рекламируемое автосогласование: Нет
Заявленные режимы FEC: не сообщается
Скорость: 10000 Мбит/с
Дуплекс: Полный
Порт: медь прямого подключения
ПЬЯД: 1
Приемопередатчик: внутренний
Автосогласование: выключено
Поддерживает пробуждение: g
Пробуждение: g
Текущий уровень сообщения: 0x00000000 (0)
Ссылка обнаружена: да
Редактировать 1:
Тест локального хранилища:
dmesg | grep сда
[ 13.093002] sd 0:1:0:0: [sda] 860051248 Логические блоки по 512 байт: (440 ГБ/410 ГБ)
[13.093077] sd 0:1:0:0: [sda] Защита от записи отключена
[ 13.093080] sd 0:1:0:0: [sda] Значение режима: 73 00 00 08
[ 13.093232] sd 0:1:0:0: [sda] Кэш записи: отключен, кеш чтения: включен, не поддерживает DPO или FUA
[ 13.112781] sda: sda1 sda2 sda3 sda4 sda5 sda6
[ 13.114348] sd 0:1:0:0: [sda] Подключенный диск SCSI
[ 15.267456] EXT4-fs (sda1): монтирование файловой системы ext3 с использованием подсистемы ext4
[ 15.268750] EXT4-fs (sda1): смонтированная файловая система с режимом упорядоченных данных. Опции: (нулевой)
[ 17.597243] EXT4-fs (sda1): перемонтирован. Опции: (нулевой)
[ 18.991998] Добавлен своп 1048572k в /dev/sda6. Приоритет: -2 экстента: 1 через: 1048572k
[ 19.279706] EXT4-fs (sda5): монтирование файловой системы ext3 с использованием подсистемы ext4
[ 19.281346] EXT4-fs (sda5): смонтированная файловая система с режимом упорядоченных данных. Опции: (нулевой)
дд, если=/dev/sda of=/dev/null bs=1024 count=1000000
1000000+0 записей в
1000000+0 записей
Скопировано 1024000000 байт (1,0 ГБ), 11,1072 с, 92,2 МБ/с
Это странно, потому что на сервере стоит контроллер Smart Array P420i с 2 ГБ кэш-памяти, аппаратный RAID10 из 6 дисков SAS 146 ГБ 15 000. iLo показывает, что с памятью все ок. На другом сервере результаты аналогичны Скопировано 1024000000 байт (1,0 ГБ), 11,8031 с, 86,8 МБ/с
Редактировать 2 (тест общего хранилища):
Qnap (SSD Raid10):
dd if=/run/sr-mount/23d45731-c005-8ad6-a596-bab2d12ec6b5/01ce9f2e-c5b1-4ba8-b783-d3a5c1ac54f0.vhd of=/dev/null bs=1024 count=1000000
1000000+0 записей в
1000000+0 записей
Скопировано 1024000000 байт (1,0 ГБ), 11,2902 с, 90,7 МБ/с
MSA (рейд HP MSA-DP+):
dd if=/dev/mapper/3600c0ff000647bc2259a2f6101000000 of=/dev/null bs=1024 count=1000000
1000000+0 записей в
1000000+0 записей
Скопировано 1024000000 байт (1,0 ГБ), 11,3974 с, 89,8 МБ/с
Не более 1 гигабитной сети...
Итак, если я передаю образы ВМ между общим хранилищем, локальное хранилище не задействовано. Может ли openvswitch быть узким местом?
Редактировать 3 (дополнительные тесты диска):
sda = Raid10 из 6 x 146 ГБ 15 КБ SAS, sdb = один 146 ГБ 15 КБ SAS в RAID0
дд, если=/dev/sdb of=/dev/null bs=1024 count=1000000
1000000+0 записей в
1000000+0 записей
Скопировано 1024000000 байт (1,0 ГБ), 16,5326 с, 61,9 МБ/с
[14:35 xcp-ng-em ssh]# dd if=/dev/sdb of=/dev/null bs=512k count=1000
1000+0 записей в
1000+0 записей
скопировано 524288000 байт (524 МБ), 8,48061 с, 61,8 МБ/с
[14:36 xcp-ng-em ssh]# dd if=/dev/sdb of=/dev/null bs=512k count=10000
10000+0 записей в
10000+0 записей
скопировано 5242880000 байт (5,2 ГБ), 84,9631 с, 61,7 МБ/с
[14:37 xcp-ng-em ssh]# dd if=/dev/sda of=/dev/null bs=512k count=10000
10000+0 записей в
10000+0 записей
скопировано 5242880000 байт (5,2 ГБ), 7,03023 с, 746 МБ/с