Установка и настройка MPIO в Windows Server 2016/2012R2

В этой статье мы рассмотрим особенности реализации, установки и настройки MPIO в Windows Server 2016/2012 R2. MPIO ( Multi Path Input Output ) или многопутевой ввод-вывод, это технология для построения отказоустойчивого транспорта к системе хранения данных (СХД) или выполняющему эти функции серверу за счет использования избыточных путей. Дополнительные пути между сервером и хранилищем создаются с использованием избыточных физических компонентов (коммутаторы, кабели, адаптеры или сетевые карты). Обратная сторона такой избыточности – операционная система может видеть один и тот же LUN по разным путям и считать их разными устройствами.

Если сервер может получить доступ к логическому диску (LUN) через несколько адаптеров инициатора iSCSI или несколько портов Fibre Channel, то в диспетчере устройств/дисков на системе без установленного MPIO модуля будет присутствовать большее количество LUN, чем презентовано на самом деле ( = количество путей к LUN * количество презентованных LUN).

На следующем скриншоте видно (список подключенных дисков можно вывести с помощью get-disk ), что Windows видит без MPIO видит 2 диска по разным путям, которые по факту являются одним LUN:

Если ОС поддерживает MPIO, она будет видеть каждый из презентованных ей дисков в одном экземпляре. При включенном MPIO сервер может обращаться к данным на СХД по нескольким путям, что увеличивает скорость доступа к подключенному LUN и позволяет задействовать для доступа несколько сетевых или HBA-адаптеров.
MPIO может задействовать альтернативный логический путь при выходе из строя одного/нескольких компонентов, заставив операционную систему использовать для доступа к логическому диску (LUN) резервный маршрут, сохраняя непрерывность доступа к данным. Таким образом MPIO является важным компонентом при реализации отказоустойчивой системы доступа к данным, кроме того входящие в состав MPIO модули позволяют распределять нагрузку между различными путями к одному и тому же LUN-у.

Совет . Если ОС не поддерживает MPIO, то для предотвращения потери данных нужно уменьшить количество путей к LUN до 1. На сервере нужно оставить включенным только один порт Fiber Channel или адаптер iSCSI инициатора. Также нужно отключить дополнительные пути для данного LUN на уровне СХД и коммутаторов.

Установка MPIO в Windows Server 2016/2012R2

Windows Server поддерживает многопутевой ввод-вывода MPIO начиная с версии Windows Server 2008 R2. Технология Microsoft MPIO позволяет обеспечить высокую доступность и балансировку нагрузки посредством возможности организации нескольких подключений к СХД, не зависит от протоколов и поддерживает подключение дисковых массивов и хранилищ по iSCSI, Fiber Channel и хранилищ SAS.

MPIO-модуль в Windows Server по умолчанию не включен. Установить его в Windows Server 2016 можно двумя способами:

  • Из графического интерфейса с использованием консоли Server Manager
  • Из командной строки Powershell

Установка MPIO с помощью консоли Server Manager

  1. Откройте консоль Server Manager ;
  2. В списке компонентов (Features) найдите и активируйте опцию Multipath I/O ;
  3. Завершите установку компонента MPIO и перезагрузите сервер.

Установка MPIO с помощью Powershell

Запустите консоль PowerShell с правами администратора и для установки компонента выполните команду:

Add-WindowsFeature -Name 'Multipath-IO'

Чтобы убедиться, что модуль MPIO установлен в вашем Windows Server, выполните:

Get-WindowsFeature -Name 'Multipath-IO'

Примечание. Для отключения MPIO выполните команду:

Remove-WindowsFeature -Name 'Multipath-IO'

Настройка MPIO в Windows Server 2016

После установки MPIO модуля, необходимо активировать его для LUN, которые доступны по нескольким путям. По умолчанию ОС видит каждое подключение к диску как разные логические диски (LUN).

Совет . Одним из компонентов MPIO является специальный модуль MSDSM ( Microsoft Device Service Module ) , позволяющий управлять политиками балансировки нагрузки. По умолчанию MPIO устанавливается со стандартным Microsoft DSM, однако в большинстве случаев стоит установить DSM модуль, предоставляемый производителем СХД (IBM DSM, HP DSM MPIO и т.д.). Обычно скорость работы и функционал нативного DSM модуля выше, чем у стандартного DSM-модуля Microsoft (производитель пишет свои DSM модули с учетом специфики работы и особенностей своего железа)/

Разрешите модулю DSM от Microsoft (MSDSM) автоматически объединять SAN диски в зависимости от типа подключений. MSDSM автоматически определяет наличие LUN, имеющих несколько путей к СХД и поддерживает большинство популярных систем хранения.

Сделать это можно из командной строки:

  • Для SAS дисков: Enable-MSDSMAutomaticClaim -BusType SAS
  • Для iSCSI дисков: Enable-MSDSMAutomaticClaim -BusType iSCSI
Примечание . Эту же операцию можно выполнить с помощью утилиты mpclaim (появившуюся в Windows 2008 R2). Следующая команда проанализирует все устройства, обнаруженные системой, определит какие из них имеют несколько путей и включит поддержку MPIO для них. Опция -r [automatically reboot (if needed) without prompting] разрешает автоматическую перезагрузку сервера:

mpclaim.exe -r -i -a ""

Также вы можете включить DSM через графический интерфейс. Откройте консоль управления Server Manager и в меню Tools выберите пункт MPIO (или выполните команду mpiocpl ).

Перейдите на вкладку Discover Multi Paths , включите опцию Add support for SAS devices (или Add support for iSCSI devices , если вы используете iSCSI хранилище ) и нажмите Add . После этого перезагрузите сервер.

После перезагрузки откройте диспетчер устройств или диспетчер дисков и убедитесь, что количество подключенных дисков (LUN), доступных серверу уменьшилось в 2 раза (при наличии подключений к СХД по двум путям).

Вы можете управлять списком устройств, для которых включена поддержка MPIO на вкладке MPIO Devices (или командой Get-MSDSMSupportedHw ).

Вы можете добавить новые MPIO устройства, нажав кнопку Add или из PowerShell:

New-MSDSMSupportedHw -VendorId <vend> -ProductId <product>

При настройке кластера конфигурацию MPIO необходимо выполнить на всех узлах.

Если вы подключаете iSCSI таргет по 2 путям и хотите использовать MPIO для этого подключения, нужно при подключении Target выбрать iSCSI LUN, нажать кнопку Connect и включить опцию Enable multi path .

Затем нажмите на кнопку Advanced и привяжите разные IP адреса инициатора к разным IP адресами target.

С помощью PowerShell можно получить текущие настройки MPIO:

Get-MPIOSetting

PathVerificationState     : Disabled_x000D_PathVerificationPeriod    : 30_x000D_PDORemovePeriod           : 20_x000D_RetryCount                : 3_x000D_RetryInterval             : 1_x000D_UseCustomPathRecoveryTime : Disabled_x000D_CustomPathRecoveryTime    : 40_x000D_DiskTimeoutValue          : 60_x000D_

Можно изменить настройки MPIO таймеров так (например, установим рекомендованные настройки для flash массива):

Set-MPIOSetting -NewPathRecoveryInterval 20 -CustomPathRecovery Enabled -NewPDORemovePeriod 30 -NewDiskTimeout 60 -NewPathVerificationState Enabled

Доступны следующие политики балансировки MPIO:

  • FOO — Fail Over Only
  • RR — Round Robin
  • LQD — Least Queue Depth
  • LB — Least Blocks

Чтобы задать политику балансировки (например, Round Robin):

Set-MSDSMGlobalLoadBalancePolicy -Policy RR

Также политику балансировки можно изменить в свойствах подключенного LUN на вкладке MPIO. В этом примере для массива выбрана политика Round Robin.

Чтобы увидеть полный список PowerShell команд, доступных в модуле MPIO, выполните команду:

Get-Command –Module Mpio

SAN Policy

В Windows имеется специальная политика дисков ( SAN Policy ), которая определяет, нужно ли автоматически монтировать диски при их подключении к хосту.

Текущую настройку SAN Policy можно получить с помощью diskpart. По умолчанию используется SAN политика Offline Shared.

Именно из-за этой политики SAN внешние диски, подключенные с СХД, могут при перезагрузке находиться в offline режиме. См. статью “ Диск отключен в соответствии с установленной администратором политикой ”.

Чтобы автоматически монтировать диски, нужно изменить значение SAN Policy на OnlineAll.

DISKPART> san policy=OnlineAll

Возможные значение SAN policy:

OfflineAll Все диски по умолчанию в offline режиме
OfflineInternal Все диски на внутренних шинах в offline
OfflineShared Все диски, подключенные через iSCSI, FC или SAS в offline
OnlineAll Все диски автоматически переводятся в онлайн режим (рекомендуется)
admin

Share
Published by
admin

Recent Posts

Apple: история логотипа

Как менялся логотип Apple на протяжении многих лет. Логотип Apple — это не просто символ,…

6 дней ago

Security Boot Fail при загрузке Acer — решение проблемы

Security Boot Fail при загрузке Acer — решение проблемы При загрузке ноутбука Acer с флешки,…

3 недели ago

Ноутбук не включается — варианты решения

Ноутбук не включается — варианты решения Если при попытке включить ноутбук вы обнаруживаете, что он…

3 недели ago

The AC power adapter wattage and type cannot be determined — причины и решение

The AC power adapter wattage and type cannot be determined — причины и решение При…

3 недели ago

Свистит или звенит блок питания компьютера — причины и решения

Свистит или звенит блок питания компьютера — причины и решения Некоторые владельцы ПК могут обратить…

3 недели ago

Мигает Caps Lock на ноутбуке HP — почему и что делать?

Мигает Caps Lock на ноутбуке HP — почему и что делать? При включении ноутбука HP…

3 недели ago