Недавно я писал о политиках multipathing касательно LUN в ESX/ESXi 4 и в заключение обещал описать настройку Round Robin. Держу обещание, статья ниже.
В данном примере я буду использовать хост на ESX 4, два физических сетевых адаптера выделенных для работы под трафик iSCSI и СХД HP MSA 2324i с двумя контролерами (что то по серьезней пока нет под рукой для свободного разделывания), работающими в режиме Active-Active ULP. Конфигурация из этого примера подойдет для настройки ESX/ESXi c другими типами СХД. Тут я затрону только настройку самого ESX, по умолчанию мы уже имеем несколько LUN на СХД(в моем примере 2 LUN).
Описывать настройку портов VMkernel, как и iSCSI инициатора в ESX/ESXi подробно не буду, а сразу перейду к настройки мультипатчинга и Round Robin.
Сама суть конфигурации для обеспечения multipathing в следующем. Каждый физический интерфейс отдаем только под использование 1-го порта VMkernel, в идеале вообще под монопольное использование. Т.е этот же интерфейс не должен быть задействован на другом порте VMkernel, который также будет использоваться для трафика iSCSI.
Есть два варианта конфигурации.
1. С одним vSwitch и несколькими портами VMkernel, а также несколькими привязанными физ. сетевыми к нему.
2. С несколькими vSwitch, в каждом из которых по 1-му порту VMkernel и к каждому привязана 1 физ. сетевая.
Оба варианта дают один и тот же результат. Я предпочитаю первый вариант, сделать отдельный vSwitch под нужды iSCSI трафика, он мне удобнее. Его я и опишу ниже.
Сама железная конфигурация выглядит так.
Далее конфигурируем хост для работы по iSCSI с мультипатчингом.
Создаем vSwitch с двумя портами VMkernel и привязываем к этому vSwitch 2-е физические сетевые карты.
Проделываем следующие: заходим в свойства порта VMkernel в моем примере iSCSI1 (Идем у нужного нам vSwitch в Properties -> выбираем нужный порт -> Edit) и переходим на вкладку NIC Teaming.
Включаем Failover Order, затем выбираем одну из сетевых карт которая будет не использована в данном подключение и перетаскиваем ее с помощью кнопки Move Down в секцию Unused Adapters. Этим действием мы оставили в использование под VMkernel порт только одну сетевую карту.
Далее проделываем тоже самое только с другим портом VMkernel. Разница лишь в том что, другому порту оставляем активной уже другую сетевую карту.
Теперь из консоли нужно выполнить следующую команду esxcli swiscsi nic add -n <port_name> -d <vmhba>, где port_name имя порта VMkernel, а vmhba имя iSCSI адаптера. Этим действием мы привязываем порты VMkernel к iSCSI инициатору хоста.
В моем примере я последовательно добавляю каждый порт
esxcli swiscsi nic add -n vmk1 -d vmhba34
esxcli swiscsi nic add -n vmk2 -d vmhba34
Далее командой esxcli swiscsi nic list -d <vmhba> можно просмотреть привязанные порты VMkernel к iSCSI адаптеру.
Теперь осталось сделать Rescan. Идем Configuration — > Storage Adapters. В правом верхнем углу жмем Rescan. По завершению процедуры у нас появятся 4 пути, по 2 на каждый LUN.
На вкладке Paths это хорошо видно.
По умолчанию для данного типа хранилищ работающих в режиме Active/Active политика multipathing является Fixed. О политиках multipathing можно прочесть в другой моей заметки.
Возвращаемся на вкладку Devices и щелкаем правой кнопкой мыши по первому LUN и выбираем Manage Paths.
Вот тут как раз и меняем политику multipathing с Fixed на Round Robin.
Затем тоже самое проделываем со следующим LUN.
В итоге у меня получилась вот такая картина.
Вот и все с настройкой.
Из скринов видно что с Round Robin одновременно активны сразу два контролера и оба контролера участвуют во операциях I/O, в отличие от политики Fixed где одновременно активны оба контролера, но в операциях I/O участвует только один контролер.
Михаил Коротько Архитектор/инженер по ИТ инфраструктуре, независимый консультант в области ИТ, а также блогер и энтузиаст виртуализации. VMware vExpert 2010/2011.














14 Май 2010 в 16:39
[...] Статья о том как настроить multipathing и Round Robin для iSCSI LUN в ESX… Categories: Статьи Tags: ESX, ESXi Комментарии (0) Уведомления (2) Написать комментарий Уведомление [...]
19 Июл 2010 в 10:47
[...] Конфигурация очень похожа чем то на конфигурацию софтверного iSCSI инициатора в ESX(i) с небольшими нюансами. Для информации моя статья о конфигурации софтверного iSCSI инициатора, а также статья о настройки multipathing и RR для софтверного iSCSI иници…. [...]
17 Сен 2010 в 04:34
Здравствуйте.
Я хотел с Вами посоветоваться.
У меня все настроено аналогично, только вместо двух свичей один, разделенный на 2 вилана. Проблема заключается в том, что если я отключаю один кабель, то все перестает работать, но примерно через 20 секунд все восстанавливается без потери данных. Скажите пожалуйста, как можно избежать этого делэя
Зарание огромное спасибо
С уважением
Слава
21 Сен 2010 в 20:44
Приветствую!
Я только вот не понял немного, как так все перестает работать, а через 20 сек все работает и без потери данных. Откуда вы это видите, с каких данных и источников?
Могу подозревать, дело в сторадже и уж совсем маловероятное это свитч.
Насчет стороджа есть такая штука, но не всегда(на недорогих стораджей начального и среднего уровня), что при падение одного или нескольких путей от хоста до СХД бывает кратковременная потеря производительности, опять же все это зависит от стораджа, какой у него режим работы контролеров, скорость его работы, как быстро он отрабатывает потерю пути, загруженность и т.п.
И конечно вариант номер два это свитч. Хотя мало вероятно, но для чистоты эксперимента можете взять другой свитч и попробовать смоделировать туже ситуацию.