Bagikan melalui


Использование Microsoft MPIO в Windows Server 2008 R2

К написанию этой заметки меня подтолкнула необходимость миграции одного из кластеров с виртуальными машинами в технологическом центре Microsoft с платформы Windows Server 2008 на Windows Server 2008 R2. Задача назрела уже давно, однако, на миграцию стабильно работающей продуктивной среды не было времени. К тому же заранее вырисовывалась одна техническая проблема: кластер использует различные внешние дисковые массивы, а в частности HP MSA 2012fc, который не поддерживается HP под Windows Server 2008 R2. Что означает «не поддерживается HP»? К сожалению, HP не предоставляет программного обеспечения для массивов MSA под новую ОС.

Что такое MPIO?

Как вы понимаете, большинство серверов, имеющие HBA для подключения к SAN, имеют несколько портов. И каждый сервер может (и в нормальной ситуации должен) подключаться к любому из устройств хранения через несколько портов одновременно. Кроме того, у системы хранения, как правило, тоже не одна точка подключения в сеть, а у некоторых из таких систем — ещё и по несколько контроллеров, каждый со своим набором портов. При правильной настройке SAN, каждый из портов сервера должен «видеть» каждый из портов системы хранения. При этом между ними ещё могут находиться не один, а несколько коммутаторов. Всё это служит, в первую очередь, для обеспечения избыточности — подключение к хранилищу более не является единой точкой сбоя. Кроме того, при определённых условиях эта схема может обеспечивать дополнительные преимущества — такие, например, как балансировку нагрузки между путями.

Однако при настройке по умолчанию операционная система ещё «не понимает», что то, что она «видит» по разным путям, на самом деле является не разными устройствами, а одним и тем же.  И для того, чтобы она «видела» каждый из представленных ей дисков в единственном экземпляре, мы устанавливаем во-первых, специальный компонент (Feature), который так и называется: Multi-Path Input-Output (MPIO). А во-вторых — специальное ПО, которое поставляется производителем системы хранения, встраивается в инфраструктуру Microsoft MPIO и обеспечивает работу с данной конкретной моделью оборудования. Этот компонент называется Device-Specific Module (DSM).

Проблема

Увы, для Windows Server 2008 R2 компания HP не предоставляет MPIO DSM, совместимого с массивами Modular Storage Array (MSA) 1000/1500/2000. А MPIO DSM для Windows Server 2008 не работает в Windows Server 2008 R2. В связи со сложившейся ситуацией передо мной возникает задача настройки MPIO без использования специального ПО.

Решение

Рассмотрим на реальном примере процесс установки и настройки Microsoft Multipath I/O в Windows Server 2008 R2. Для начала нам потребуется установить сам компонент ОС (Feature).

Просто установка компонента ещё никак не влияет на то, как система «видит» диски. Теперь нам предстоит настроить MPIO. Сейчас в Disk Manager мне доступны два LUN с MSA 2012fc — по двум путям каждый — и один LUN с NetApp — по четырём путям.

Для начала откроем панель управления MPIO.

Перейдя в закладку Discover Multi-Paths увидим те массивы, которые доступны системе по нескольким путям, но для которых MPIO еще не настроен.

Выделим требуемый массив, выберем Add и по требованию системы перезагрузим сервер.

После перезагрузки в панели управления MPIO мы уже увидим добавленные массивы, появившиеся в основной закладке MPIO Devices.

Уже сейчас в Disk Manager я вижу каждый LUN только один раз — задача выполнена.

Теперь при желании я могу настроить параметры выбора пути MPIO. Для этого в Device Manager выберем диск, и во вкладке MPIO можем настроить различные способы определения путей. По умолчанию выставлен режим Round Robin, пытающийся равномерно распределять запросы к диску по всем путям.

Лично я для Microsoft MPIO предпочитаю выбирать режим Fail Over Only. Для этого необходимо выбрать соответствующий путь в выпадающем списке — и для всех путей, кроме основного, выставить настройку Standby, оставив Active/Optimized только для основного пути.

Для конфигурации доступны и другие политики настройки MPIO, о которых вам следует внимательно почитать.

Если эта заметка вызовет интерес, я готов более подробно описать теорию различных политик настройки MPIO, а также отличия в настройке для Server Core и Hyper- V Server, не имеющих панели управления и диспетчера устройств.

Comments

  • Anonymous
    January 01, 2003
    Связаться с авторами блога можно посредством формы обратной связи - blogs.technet.com/.../contact.aspx Предлагаемый Вами способ связи трудореализуем ввиду нескольких причин, уж извините. К сожалению, в роли Hyper-V на базе Windows Server 2008 R2 нет возможности использования виртуальных Fibre Channel адаптеров. В Вашем случае остается либо ждать выхода Server 8, либо искать другие способы решения подключения хранилищ к ВМ. Я правильно понимаю, что Вы хотите использовать кластер виртуальных машин?

  • Anonymous
    January 01, 2003
    Ошибок и потерь владения быть не должно. MPIO может быть настроен на одном или всех узлах, это не принципиально, на работу в нормально ситуации (когда все пути доступны) не влияет. Нужно копать логи, почему CSV переезжает и разбираться.

  • Anonymous
    January 01, 2003
    буду благодарен за более подробные разъяснения по поводу MPIO, особенно интересна ситуация, когда контроллера 2 по 2 порта, в iSCSI-инициаторе не понятно как настройка происходит

  • Anonymous
    January 01, 2003
    LEXX, наврядли можно ожидать какие-то общие цифры. Всё сильно зависит от конкретного DSM производителя и политики настройки. В реальной жизни производительность упирается в диски, а не в скорость порта. Обычно, если вы имеете двухпортовых FC адаптер, и каждый порт соединён через оптический свич к двум контроллерам, вы имеете четыре пути до дисков. Если брать 4Гбитные FC адаптеры, то будет до 8Гбит в случае Round Robin политики. Это 1 ГИГАБАЙТ в секунду. Никакие диски столько не дают. И, очевидно, что MPIO никак не влияет на скорось дисков. Принимайте MPIO решением отказоустойчивости (уровня порта или свича), но не решением для реального повышения производительсности.

  • Anonymous
    January 01, 2003
    Спасибо за статью. Будет интересно почитать еще статьи на эту тему.

  • Anonymous
    January 01, 2003
    Поправьте пожалуйста ссылки на скриншоты. Хочется на картинки посмотреть :)

  • Anonymous
    January 01, 2003
    Для MSA нету отдельного DSM, он (согласно примеру выше), сразу определяется как SPC-3 Compliant самой ОС 2008, 2008R2 и 2012 Не требуется ничего доставлять. Информацию я уже переспросил у инженера в HP и получил подтверждение.

  • Anonymous
    January 01, 2003
    Восстановить попробуем, но не факт, что получится. И, насколько понимаю, ничего особенного в скриншотах нет, в принципе.

  • Anonymous
    January 01, 2003
    Ставьте DSM от Fujitsu и выбирайте его для DX440 Для CX3-80 надо установить EMC Powerpath (доступен для скачивания после регистрации в EMC Powerlink) На один сервер можно ставить несколько DSM модулей. Для каждого LUN можно выбрать свой.

  • Anonymous
    January 01, 2003
    Есть интерес к Вашей заметке, есть сильное желание с Вами пообщаться по человечески, голосом, в скайпе или по телефону. Дайте знать о том как с Вами можно связаться. Задача у меня такая, хочу виртуализировать на Hyper-V оптические каналы к дисковой полке EVA4400 (HSV300) так, чтобы выход из строя идного или нескольких физических лезвий внутри c3000 корзины не влиял на процесс непрерывной записи в систему хранения. В сервере 8 это обещают, но есть пока только 2008 R2...

  • Anonymous
    January 01, 2003
    Для вашего сценария наиболее простым и масштабируемым видится использование HP P4000 VSA - трёх виртуальных машин с жесткой привязкой к блейду, которые берут нижестоящее RAW пространство с EVA и раздают его по iSCSI хостам и виртуальным машинам. Выход из строя любого VSA не влияет на доступность хранилища. Я описывал решение тут: blogs.technet.com/.../siterecoverylab-part2-p4000.aspx

  • Anonymous
    January 01, 2003
    Спасибо, будем ждать продолжения.

  • Anonymous
    January 01, 2003
    Скачать можно все что угодно с сайта поддержки, после регистрации. Оно требует ввода серийного номера. Если у вас PowerPath стоял где-нибудь, то берите номер оттуда (его можно скопировать из консоли PowerPath) Номер от версии к версии не отличается.

  • Anonymous
    June 15, 2010
    Про Server Core и Hyper- V Server интересно было бы почитать :)

  • Anonymous
    June 15, 2010
    было-б очень интересно и занятно прочитать об этом.

  • Anonymous
    June 16, 2010
    Очень интересно, обязательно пишите еще!

  • Anonymous
    June 17, 2010
    Теория различных политик настройки MPIO- очень интересно (как и эта статья)!

  • Anonymous
    June 23, 2010
    Сегодня первый раз столкнулся с применением MPIO,сейчас буду осваивать.Статья помогат своей наглядностью.Спасибо,будет интересно почитать продолжение темы.

  • Anonymous
    June 23, 2010
    Настроил давно всё это на своём хьюлете с MSA2312fc и w2k8eeR2 без статей - и так всё интуитивно понятно было. Мне подсказали лишь одно слово - MPIO, после того как я увидел множество дисков в Disk Management-е, гуглом нашёл как расшифровывается эта аббревиатура, а дальше всё интуитивно нашёл и настроил - кластер работает.

  • Anonymous
    June 23, 2010
    Доступно написана статья. Жду продолжения про настройки для Core и Hyper-V.

  • Anonymous
    June 30, 2010
    Интересно было почитать статью для настройки mpio под Hyper-v в режиме Core.

  • Anonymous
    September 02, 2010
    Спасибо. все смог настроить по вашей статье на msa1500, хотя полдня до этого бился об стенку .. спасибо .. сам делал все как в статье кроме настройки самого MPIO. Видно в этом была основная проблема, так как у меня round robin было настроено

  • Anonymous
    December 07, 2010
    Не знаю как добавить MPIO в кластер Windows 2008 R2. Используется iSCSI HP Storage Work MSA2012i. Пробую на одном узле развернуть MPIO. На остальных двух без него пока. Проверка кластера ругается, но узел типа живет. Однако CSV диски не принимает во владение. Дает ошибку о неожиданной потере владения. Причем вроде-как в начале даже работает, можно кинуть файл в CSV Volume но потом бац ... мувится волуме на другую ноду :( Блин... Толи нужно на всех узлах обновременно MPIO подымать? Боюсь переведу MPIO на всех узлах а кластер не заведется... Посоветуйте, пожалуйста, какая последовательность перевода уже существующего кластера на MPIO с одношлангового варианта...

  • Anonymous
    January 31, 2011
    20.09.2010 на hp.com выложили мануал, делается все просто ocsetup MultipathIo /norestart mpclaim -n -i -a bizsupport2.austin.hp.com/.../c02520790.pdf

  • Anonymous
    February 21, 2011
    Спасибо за статью! Интересно было бы прочитать о том как различные конфигурации MPIO влияют на скорость передачи данных на серверах баз данных, где каждый МБ/сек дорог

  • Anonymous
    November 07, 2012
    В первый раз столкнулся с SAN, MSA и иже с ними. Не знал как сделать отказоустойчивое подключение, знал что это возможно, но не представлял как. Уже начал догадываться и наткнулся на эту статью. Теперь многое стало понятно, спасибо!

  • Anonymous
    November 07, 2012
    Перечитал статью еще раз. Я дотошный:) полез проверять сайт HP на наличие DSM для MS Server 2008 и 2008R2. В статье говорится, что нет DSM для 2008 R2 и действительно нету, но и для 2008-го сервера я тоже не нашел DSM. Смотрел x86 и x64 редакции... Для 2003-го сервера есть.

  • Anonymous
    June 16, 2013
    Добрый день коллеги, у меня такая ситуация: физический сервер, к нему подключено 2 дисковые стойки DX440 и CX3-80. У первой есть свой DSM, а у второй нет. Как лучше поступить в этой ситуации? Поставить Windows MPIO и MS DSM для обоих хранилищ или для DX440 поставить Fujitsu MPIO а для EMC CX3-80 Windows MPIO? смогут ли они вместе работать? Просто Fujitsu MPIO не поддерживает ни чего кроме Fujitsu

  • Anonymous
    June 20, 2013
    Алексей, но EMC PowerPath платная, я в свое время что то не нашел даже возможности его скачать...

  • Anonymous
    December 18, 2013
    Согласен, с автором последнее поста - картинки хочется лицезреть