Тестируем 10G сетевые платы HP и Mellanox на серверах HP Proliant DL360 Gen9.
Задача - проверить пропускную способность 10G сети между виртуальными машинами на разных гипервизорах.
План работ:
- Вставляем 10G сетевуху от HP в первый гипервизор ESXi на сервере HP Proliant DL360 Gen9.
- Вставляем 10G сетевуху от Mellanox во второй гипервизор ESXi на сервере HP Proliant DL360 Gen9.
- Соединяем 10G сетевухи напрямую кабелем типа twinax.
- Настраиваем сеть в vCenter.
- Размещаем на каждом гипервизоре виртуальную машину Windows в новой сети.
- Определяем максимальную пропускную способность сети между виртуалками (HP - Mellanox).
- Меняем 10G сетевуху Mellanox на HP.
- Определяем максимальную пропускную способность сети между виртуалками (HP - HP).
- Делаем вывод, можно ли использовать Mellanox 10G сетевые платы SFP+ в серверах HP Proliant.
Вставляем 10G сетевуху от HP в первый гипервизор ESXi на сервере HP Proliant DL360 Gen9
В первый сервер HP Proliant DL360 Gen9 вставляем сетевую плату 560FLR-SFP+.
HP Proliant DL 360 Gen9 - установка 560FLR-SFP+ модуля
Вставляем 10G сетевуху от Mellanox во второй гипервизор ESXi на сервере HP Proliant DL360 Gen9
Для второго сервера HP Proliant DL360 Gen9 нам выделили на тестирование сетевуху Mellanox ConnectX-4 LX CX4121A.
HP Proliant DL 360 Gen9 - установка платы Mellanox ConnectX-4 LX CX4121A
Соединяем 10G сетевухи напрямую кабелем типа twinax
Включаем гипервизоры. Дальше ничего сложного. Обе сетевухи двухпортовые. Левые порты соединил кабелем. Линк поднялся.
Сетевухи определились в vCenter:
- HP - Intel(R) 82599 10 Gigabit Dual Port Network Connection
- Mellanox - Mellanox Technologies MT27630 Family [ConnectX-4 LX]
Да, да. В HP сетевухе стоял чип от Intel.
Настраиваем сеть в vCenter
Конфигурируем гипервизоры.
У первого сервера в разделе Configure > Physical adapters видим, что скорость на vmnic5 стала 10000 Mb:
У второго сервера в разделе Configure > Physical adapters также видим, что скорость на vmnic5 стала 10000 Mb:
У меня в vCenter настроен LACP и используется Distributed Switch. Переходим в раздел Networking, кликаем на Distributed Switch правой кнопкой. Выбираем Add and Manage Hosts:
Выбираем Manage host networking:
Next. Кликаем на Attached hosts...
Выбираем в списке два наших гипервизора, ОК:
Next:
Как мы уже выше выяснили, у обоих гипервизоров 10G появилось на vmnic5 интерфейсах. Поэтому каждому vmnic5 делаем Assign uplink и вешаем на Uplink 1, благо он у меня свободен:
Next, Next, Next, Finish, не буду лишние картинки загружать.
В вашем случае, если соберётесь повторить, конфигурация сети может быть другая. Теперь в нашем Distributed Switch делаем New Distributed Port Group...
Создаю группу test_10_G.
VLAN type делаю none:
В разделе Teaming and failover ставлю активным аплинком Uplink 1, lag1 (LACP) убираю в unused uplinks.
Замечу, что всё управление гипервизорами осуществляется у меня по lag1, Uplink 1 нигде больше не использовался, поэтому я смог выделить его на новую группу. Ok.
Размещаем на каждом гипервизоре виртуальную машину Windows в новой сети
Имею две виртуальные машины, по одной на каждом сервере. На обеих добавляю по новой сетевухе:
Тип адаптера VMXNET 3, вешаем туда же свежесозданную группу test_10_G. Операция происходит без перезагрузки, потому как на обоих виртуалках стоит VMware Tools и нет внешних PCI устройств.
В винде появляется вторая сеть:
Прописываем IP и маску. На первой виртуалке: 192.168.1.10 маска 255.255.255.0.
На второй 192.168.1.20 маска 255.255.255.0.
Шлюз и DNS в одной подсети нам не нужно указывать.
Пингуем с первой виртуалки вторую:
Всё в порядке, пинги есть.
Определяем максимальную пропускную способность сети между виртуалками (HP - Mellanox)
Для начала посмотрим какая будет скорость на 1G. Просто по самбе с одного сервера на другой копирую файлик:
Скорость 106 MB/s - ожидаемая скорость для 1G.
Отключаю гигабитную сеть, будем теперь пробовать копировать файлик по 10G:
Так, скорость 201 MB/s - это два гигабита. А где десятка?
Вспоминаю, что на гипервизорах крутятся и другие виртуалки - мигрирую их подальше. А наши тестовые виртуалки мигрирую на массив с дисками 15K. Пробую снова:
Получаю 523 MB/s. И скорость скачет от 3 гигабит до 6. Уже значительно лучше, но хотелось бы больше. Исключим диски из тестирования. На обе виртуалки устанавливаем утилиту iPerf3.
iPerf3 - измерение пропускной способности сети
На одной виртуалку запускаем:
iperf3.exe -s
На второй:
iperf3.exe -с 192.168.1.10 -P 5 -R
Будем тестировать сеть двунаправленной передачей в 5 потоков. Результат:
8.68 Gbits/sec - это уже замечательный результат для передачи данных между двуми виртуальными машинами.
Делаем промежуточный вывод:
Mellanox можно использовать в качестве SFP+ модуля.
А что будет, если данные гонять не между HP - Mellanox, а между HP - HP? Проверим.
Меняем 10G сетевуху Mellanox на HP
Выключаем всё, меняем Mellanox на HP. Теперь у нас в обоих серверах одинаковые платы 560FLR-SFP+. Включаем сервера.
Проводим те же тесты:
Поведение такое же. Пропускная способность одинаковая.
Вывод
Сетевухи - монопенисуальны по производительности:
- HP - Intel(R) 82599 10 Gigabit Dual Port Network Connection
- Mellanox - Mellanox Technologies MT27630 Family [ConnectX-4 LX]
Плюсы HP:
- Плата не занимает отдельный PCI слот, подключается к своему. Кроме HP модуля можно воткнуть ещё два PCI устройства.
- Прошивка в общем сервис-паке.
Минусы HP:
- Дорого.
Плюсы Mellanox:
- Дешёво.
Минусы Mellanox:
- В сервер можно воткнуть ещё только одно PCI устройство, т.к. Mellanox занимает один из слотов.
- Обновление прошивки непонятно.
Единственное, что не удалось проверить - это надёжность. HP платы пока ни разу у меня не выходили из строя. А Mellanox - тёмная лошадка?
Хотим сэкономить - берём Mellanox.
Есть бабло и не хотим возможным проблем или в сервер требуется пихать много PCI плат - берём HP.