Назад | Перейти на главную страницу

Synology и vmware с 4-полосным MPIO медленными скоростями iSCSI

Я пытаюсь добиться высоких скоростей iSCSI между моим ESX-устройством и Synology NAS. Я надеюсь достичь максимальной скорости 300-400 Мб / с. Но пока все, что я достиг, составляет 150-170 МБ / с.

Основной тест, который я использую, - это создание виртуального диска объемом 20 ГБ Think Eager Zeroed в хранилище данных на основе твердотельного накопителя iSCSI. (И варианты этого.)

Некоторые вопросы:

  1. Я предполагаю, что создание этого диска будет последовательной записью?
  2. Synology никогда не пропускает 30% / 40% загрузки ЦП, а память почти используется. Я предполагаю, что Synology может писать на SSD с такой скоростью, верно?
  3. Кроме того, может ли ESX максимально увеличить доступную пропускную способность при создании виртуального диска через iSCSI?
  4. Что бы вы порекомендовали при использовании эталонного инструмента и как я могу быть уверен, что у меня не будет узкого места на стороне отправки данных? Могу ли я установить этот инструмент на виртуальную машину в хранилище данных SSD и запустить его «против самого себя»?

Это моя установка.

У меня Synology 1513+ со следующими дисками и конфигурацией:

  1. 3 диска WD емкостью 4 ТБ (Не используются)
  2. 1 Samsung EVO 860. (1 том, без рейда)
  3. 1 Samsung 256 ГБ SATA III 3D NAND. (1 том, без рейда)
  4. 2 цели iSCSI, по одной на SSD. (Всего подключено 8 инициаторов vmware iSCSI)

Конфигурация сети:

  1. Связь Synology 4000 Мбит / с. MTU 1500, полный дуплекс.

  2. Synology Dynamic Link Aggregation 802.3ad LACP.

  3. Cisco SG350 с агрегацией каналов, настроенной для 4 портов Synology.

  4. Сеть хранения и iSCSI физически отделена от основной сети.

  5. Кабели CAT 6.

VSphere:

  1. PowerEdge r610 (Xeon E5620 @ 2,40 ГГц, 64 ГБ памяти)
  2. Broadcom NetXtreme II BCM5709 1000Base-T (8 сетевых адаптеров)
  3. VSphere 5.5.0 1623387

Конфигурация VSphere:

  1. 4 vSwitch, по 1 сетевой карте для iSCSI.MTU 1500. Полный дуплекс.
  2. Программный инициатор iSCSI с 4-мя коммутаторами vmkernel в группе портов, все они соответствуют требованиям, а статус пути активен.
  3. 2 цели iSCSI с 4 путями MPIO каждая. Все активные и по круговой системе

Таким образом, 4 кабеля от NAS идут к Cisco LAG, а 4 iSCSI от ESX идут к обычным портам на коммутаторе.

Проведенные мною тесты и конфиги:

  1. Установка MTU на 9000 на всех vmswitches, vmkernel, Synology и cisco. Я также пробовал другие значения, такие как 2000 и 4000.
  2. Создание 1 (и 2, 3 одновременных) виртуальных дисков в 1/2 цели iSCSI для максимального увеличения рабочей нагрузки.
  3. Отключено / включено Дайджест заголовка и данных, отложенное подтверждение.

Я потерял счет всему, что пробовал. Я не уверен, где у меня узкое место или что я неправильно настроил. Прикрепил скриншоты.

Любая помощь приветствуется!

Пути iSCSI на ESX

Конфигурация сети на ESX

Пример конфигурации vmkernel

конфигурация сети инициатора iSCSI

Конфигурация Cisco LAG 1

Конфигурация Cisco LAG 2

  1. Это может быть ускорено с помощью примитива VAAI ZERO (я не могу точно сказать о вашей устаревшей версии vSphere). Но в любом случае это последовательная запись. Я также зависит от того, как вы создали цель iSCSI. Более новые DSM по умолчанию создают расширенные LUN, которые создаются поверх файловых систем. Старые версии по умолчанию напрямую использовали диски LVM и работали намного хуже.
  2. ~ 400 МБ / с должно быть доступно
  3. 400 МБ / с не проблема, если цель может обеспечить ввод-вывод
  4. Если вы смотрите на чистую последовательную пропускную способность, тогда подойдет dd на стороне Linux или простой CrystalDiskMark в Windows.

LAG и iSCSI обычно несовместимы. Отключите связывание на Synology и настройте как отдельные интерфейсы. Включите iSCSI с несколькими инициаторами на Synology. К сожалению, у меня нет Synology для получения точных инструкций.

Настройте vSphere следующим образом.

  • Инициатор vSphere -> целевой IP-адрес / порт 1 Synology
  • Инициатор vSphere -> целевой IP-адрес / порт 2 Synology
  • Инициатор vSphere -> целевой IP-адрес / порт 3 Synology
  • Инициатор vSphere -> целевой IP-адрес / порт 4 Synology

Отключите ненужные пути (оставьте один исходный IP-адрес vSphere на одном IP-адресе Synology), vSphere поддерживает (не принудительно) только 8 путей для каждой цели на iSCSI. Я не помню, можно ли ограничить целевой доступ для каждого источника на стороне Synology, скорее всего, нет. Кроме того, у вас уже достаточно путей для обеспечения надежности, и они не помогут, поскольку ваша пропускная способность ограничена.

Измените политику на более низкое значение, см. Здесь https://kb.vmware.com/s/article/2069356 В противном случае 1000 IOPS опустятся на один путь, пока не произойдет изменение пути.

Продолжайте использовать jumbo-кадры. Это примерно 5% выигрыша только за счет пропускной способности, а на гигабите вы легко можете потерять пропускную способность.

ОБНОВИТЬ:

Мне удалось решить свою проблему. Итог, это была 80% моя ошибка, 20% конфигурация.

В конце концов, синология и конфигурация коммутатора были правильными. Использование LACP на Synology и Cisco действительно помогло мне. У моего NAS есть только один IP-адрес, по которому доступны цели iSCSI, а у ESX есть 4 NIC / vMKernels, указывающие на него.

Настройте vSphere следующим образом.

  • vSphere ini. 10.10.74.11 |
  • vSphere ini. 10.10.74.12 |
  • vSphere ini. 10.10.74.13 |
  • vSphere ini. 10.10.74.14 | --4Cables -> [CISCO] - 4cables -> Synology IP (10.10.74.200)

Я использовал MPIO с циклическим перебором.

Основная проблема заключалась в том, что я недостаточно нагружал систему. Мой тест создания виртуальных обнуленных дисков и предположение, что хост ESX собирался использовать для этого всю доступную полосу пропускания, оказался неправильным.

Ключевым моментом была правильная настройка CrystalDiskMark! Также меняем IOPS согласно документации, расположенной по ссылке (https://kb.vmware.com/s/article/2069356) была частью решения. Сейчас я получаю около 450 Мбайт на чтение / 300 Мбайт на запись!