Рассмотрим следующую схему:
Windows 2008 R2, установлена функция MPIO. Две сетевые карты iSCSI (не связаны), по 1 Гб каждая.
Хранилище: отличное, 2 порта iSCSI 1 Гб, один контроллер.
В своих тестах я подтвердил, что при использовании Round Robin MPIO обе сетевые карты iSCSI на хосте активны во время теста IOMETER для одного рабочего. Обе сетевые карты iSCSI в хранилище также активны во время этого теста. Я вижу от 50% до 60% использования каждой сетевой карты хоста, и я ожидал бы большего. Я использую дрянной переключатель D-Link в данный момент, и это определенно не помогает, так что я пока не особо обеспокоен этим.
Мой вопрос таков: вместо «как я могу заставить эту конкретную настройку работать», я хотел бы знать, в более общем плане, позволяет ли циклический (активный / активный) MPIO получить пропускную способность более 1 Гб от хоста к хранилищу , используя один поток ввода-вывода (например, копирование файла или выполнение теста IOMETER для одного рабочего).
Если да, то почему? Если нет, то почему?
Для MPIO доступны различные политики. Как отмечает Coding Gorilla, большинство этих политик позволяют балансировать нагрузку между несколькими подключениями для совокупной пропускной способности. Однако и ваш инициатор, и цель должны иметь несколько соединений, чтобы на самом деле быть быстрее, чем скорость одиночного канала. Раунд Робин - плохой выбор политики; следует использовать взвешенное распределение или наименьшую глубину очереди.
ISCSI SAN и сервер, которые у меня есть, имеют по 4 порта каждый, и я действительно могу получить ~ 3,2 Гбит / с при довольно идеальных обстоятельствах. Если вам нужно что-то более быстрое, вы бы обратились к FC или IB.
Кроме того, не используйте транкинг / агрегацию каналов и т. Д. На каналах iSCSI. Когда одна ссылка не работает, соединение не удастся. Вы должны использовать MPIO для обеспечения избыточности каналов.
Я не специалист по функциям MPIO и iSCSI, но из technet: (http://technet.microsoft.com/en-us/library/dd851699.aspx)
Round Robin - политика балансировки нагрузки, которая позволяет модулю устройства (DSM) использовать все доступные пути для MPIO сбалансированным образом. Это политика по умолчанию, которая выбирается, когда контроллер хранилища следует модели «активный-активный», а приложение управления специально не выбирает политику балансировки нагрузки.
Для меня это говорит о том, что он просто распределяет трафик между двумя, и он не собирается пытаться довести какой-либо один до своих пределов, чтобы повысить производительность.
Кроме того, с чисто сетевой точки зрения, если оба сетевых адаптера подключены к тем же switch, то больше 1Гб вы не получите. Большинство «потребительских» коммутаторов будут обрабатывать максимум 1 Гб трафика, а не на порт. Есть коммутаторы более высокого уровня, у которых есть лучшая объединительная плата, которая может обрабатывать больше трафика, но я все еще сомневаюсь, что вы получите от них гораздо больше. Было бы лучше поместить каждую сетевую карту в отдельный сегмент (например, коммутатор), чтобы устранить это потенциальное «узкое место».
Как я уже сказал, я не эксперт в этом вопросе, но это всего лишь моя первая реакция. Не стесняйтесь поправлять меня, где я ошибаюсь.
MPIO с Equallogic в основном выбирает лучший интерфейс iSCSI HBA, который нужно оставить, и лучший интерфейс в SAN на основе оцененной нагрузки. Насколько мне известно, вы получите только один поток на LUN, что означает, что вы не собираетесь разделять трафик пополам по каналу Ethernet. так что вы никогда не получите больше 1 Гб на одно соединение с этим LUN на хост. Теперь, если у вас несколько LUNS, вы можете подключиться к другим интерфейсам в SAN, чтобы сбалансировать пропускную способность. Однако это основано на моем понимании MPIO. Кроме того, как уже упоминалось, нет необходимости в агрегации каналов и коммутатор, вероятно, не ваша проблема (если только у него нет уровня пропускной способности, который вы достигли, т.е.
вот хороший документ по его настройке и рассмотрению различных вариантов.
http://www.dellstorage.com/WorkArea/DownloadAsset.aspx?id=2140