Настройка mpio в windows server 2016

В этой статье мы рассмотрим особенности реализации, установки и настройки MPIO в Windows Server 2016/2012 R2. MPIO (Multi-Path Input Output) или многопутевой

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

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

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

windows server видит дубли LUN дисков при подключении без mpio

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

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

Содержание:

  • Установка MPIO в Windows Server 2016/2012R2
  • Настройка MPIO в Windows Server 2016
  • SAN Policy

Установка 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;установка Multipath-IO в windows server 2016
  3. Завершите установку компонента MPIO и перезагрузите сервер.

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

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

Add-WindowsFeature -Name 'Multipath-IO'

Add-WindowsFeature Multipath-IO powershell

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

Get-WindowsFeature -Name 'Multipath-IO'

powershell проверить наличие модуля 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 MultiPaths, включите опцию Add support for SAS devices (или Add support for iSCSI devices, если вы используете iSCSI хранилище) и нажмите Add. После этого перезагрузите сервер.

mpio windows server - включить поддержку iscsi

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

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

доступные mpio устройства

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

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

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

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

включить поддержку mpio для iscsi LUN в Windows Server

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

привязка IP адресов iscsi target к iniciator

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

Get-MPIOSetting

Get-MPIOSetting

PathVerificationState     : Disabled
PathVerificationPeriod    : 30
PDORemovePeriod           : 20
RetryCount                : 3
RetryInterval             : 1
UseCustomPathRecoveryTime : Disabled
CustomPathRecoveryTime    : 40
DiskTimeoutValue          : 60

Можно изменить настройки 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.

настройка mpio балансировки для lun в свойствах диска

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

Get-Command –Module Mpio

Список posh команд для mpio модуля

SAN Policy

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

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

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

DISKPART> san policy=OnlineAll

san-policy OnlineAll

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

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

Webmasters can enable Multi-Path Input-Output or MPIO on a Windows server either from a graphical interface using the Server Manager console
or from the PowerShell command line.

As a part of our Server Management Services, we help our Customers with Windows related requests regularly.

Let us today discuss the possible steps to enable MPIO on the windows server.

Installing MPIO Installation on Windows Server 2016/2012 R2

Windows Server supports multi-path input-output (MPIO) starting from Windows Server 2008 R2.

By default, Windows Server disables MPIO module. There are two ways to install it in Windows Server 2016:

  • From a graphical interface using the Server Manager console
  • From the PowerShell command line

Enable MPIO Using Server Manager

  1. Open the Server Manager
  2. Find and check the Multipath I/O in the Features list
  3. Finish MPIO installation and restart the server

Installing Multipath-IO Using PowerShell

Run the PowerShell console as an administrator and use the following command to install the Windows Server feature:

Add-WindowsFeature -Name 'Multipath-IO'

To make sure that MPIO has been installed on the Windows Server, run this command:

Get-WindowsFeature -Name 'Multipath-IO'

To disable MPIO, enter the following command:

Remove-WindowsFeature -Name 'Multipath-IO'

Configuring MPIO on Windows Server 2016

After installing the MPIO module, we need to activate it for the LUNs that are available by multiple paths. By default, Windows sees each connection to a disk as different logical disks (LUNs).

Among MPIO components, there is a special module, MSDSM (Microsoft Device Service Module) that allows you to manage load balancing policies.

Typically, native DSM offers better performance and more features than Microsoft. Thus it would be a good idea to install the DSM module provided by the storage manufacturer (IBM DSM, HP DSM MPIO, etc.) though it is present with the standard Microsoft DSM by default.

Allow the DSM module by Microsoft (MSDSM) to automatically merge SAN disks based on the connection type. MSDSM automatically detects LUNs that have multiple paths to storage and supports the most popular storage devices.

We can do it from the command prompt:

  • For SAS disks: Enable-MSDSMAutomaticClaim -BusType SAS
  • For iSCSI disks: Enable-MSDSMAutomaticClaim -BusType iSCSI

We can do the same using the mpclaim tools. The following command will scan all devices detected by a system, find those that have multiple paths, and enable MPIO support for them:

mpclaim.exe -r -i -a ""

Enable DSM vi GUI

We can also enable DSM in the GUI. Open the Server Manager and select MPIO in the Tools menu (or run the command: mpiocpl).

Go to the Discover Multi—Paths tab, check to Add support for SASdevices (or Add supportfor iSCSI devices if you are using iSCSI storage), and click Add. Then restart your server.

After the restart, open the Device Manager (or the Disk Manager) and make sure that the number of connected disks (LUNs) available to your server has reduced twice (if there are two paths to your storage device).

We can manage the list of devices with MPIO support enabled in the MPIO Devices tab (or using the Get-MSDSMSupportedHw command).

We can add new MPIO devices by clicking Add or from PowerShell:

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

while deploying a cluster, configure MPIO on all nodes.

To use MPIO while we connect an iSCSI target via 2 paths, select iSCSI LUN while we connect a Target, click Connect, and check the Enable multi-path option.

Then click Advanced and bind different initiator IP addresses to different target IP addresses.

You can get current MPIO settings using PowerShell:

Get-MPIOSetting

PathVerificationState : Disabled
PathVerificationPeriod : 30
PDORemovePeriod : 20
RetryCount : 3
RetryInterval : 1
UseCustomPathRecoveryTime : Disabled
CustomPathRecoveryTime : 40
DiskTimeoutValue : 60

We can change MPIO timer settings as follows:

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

The following MPIO balancing policies are available:

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

To change a balancing policy:

Set-MSDSMGlobalLoadBalancePolicy -Policy RR

We can also select the balancing policy in the MPIO tab of the connected LUN properties. In this example, the Round Robin policy is selected for the array.
To view the full list of PowerShell commands available in the MPIO module, run this command:

Get-Command –Module Mpio

SAN (Disk) Policy on Windows Server

Windows has a special disk policy (SAN Policy) that determines whether disks must be mounted automatically when they are connected to a host.

We can get the current SAN Policy setting using diskpart. By default, Offline Shared policy for SAN is used:

diskpart
DISKPART>>san<

Due to this SAN policy, external storage LUNs may be disabled after a restart. To mount the drives automatically, change the SAN Policy value to OnlineAll.

DISKPART> san policy=OnlineAll

Possible SAN Policy values:

  • OfflineAll : All disks are offline by default
  • OfflineInternal : All disks on internal buses are offline
  • OfflineShared : All disks connected via iSCSI, FC, or SAS are offline
  • OnlineAll : All disks get online automatically (recommended)

[Need any further assistance to enable MPIO on windows server? – We’re available 24*7]

Conclusion

In short, webmasters can enable Multi-Path Input-Output or MPIO on a Windows server either from a graphical interface using the Server Manager console or from the PowerShell command line. Today, we saw how our Support Engineers perform this task.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = «owonCMyG5nEQ0aD71QM»;

In this article we will consider how to install and configure MPIO on Windows Server 2016/2012 R2. MPIO (Multi—Path Input Output) is a technology that allows to build fault-tolerant transport to a data storage system (or a storage server) by using redundant paths. Additional paths between a server and a storage are created using redundant physical components (switches, cables, adapters or NICs). This redundancy type has a drawback: an operating system may see the same LUN at different paths and treat it as different drives.

If a server can access a logical disk (LUN) using multiple iSCSI initiator adapter or multiple Fibre Channel ports, the Device/Disk Manager without the MPIO module will show more LUNs than there actually are (= the number of paths to a LUN * the number of presented LUNs) if an MPIO module is not installed .

The following screenshot shows that Windows without MPIO sees 2 drives with different paths, which are in fact the same LUN (the list of presented disks may be displayed using the Get-Disk PowerShell cmdlet).

get-disk - lun displaying as 2 drives

If the OS supports MPIO, it will see each of the disks presented to it in one copy. If MPIO is enabled, a server may access data on a storage using multiple paths that makes access to a connected LUN faster and allows using multiple network or HBA adapters.
MPIO may use an alternative logical path if one or more components fail, thus making an operating system use another route to access a logical disk (LUN) maintaining data access consistency. So, MPIO is an important component of a fail-tolerant storage and data access system, and MPIO modules can distribute the load on the same LUN across different paths.

Tip. If an OS doesn’t support MPIO, leave only one path to a LUN to prevent data loss. Enable only one Fibre Channel port or one iSCSI initiator adapter on a server. Also, disable additional paths to the LUN on the data storage system and SAN/network switch levels.

Contents:

  • Installing MPIO Installation on Windows Server 2016/2012R2
  • Configuring MPIO on Windows Server 2016
  • SAN (Disk) Policy on Windows Server

Installing MPIO Installation on Windows Server 2016/2012R2

Windows Server supports multi-path input output (MPIO) starting from Windows Server 2008 R2. Microsoft MPIO provides high availability and load balancing using multiple connections to a storage, doesn’t depend on any protocols and supports disk array and storage connection using iSCSI, Fiber Channel and SAS.

By default, MPIO module is disabled on Windows Server. There are two ways to install it in Windows Server 2016:

  • From a graphical interface using Server Manager console;
  • From the PowerShell command line.

Enable MPIO Using Server Manager

  1. Open the Server Manager;
  2. Find and check the Multipath I/O in the Features list ;Install MPIO feature on WIndows Server via Server Manager
  3. Finish MPIO installation and restart the server.

Installing Multipath-IO Using PowerShell

Run the PowerShell console as an administrator and use the following command to install the Windows Server feature:

Add-WindowsFeature -Name 'Multipath-IO'

Add-WindowsFeature -Name 'Multipath-IO' - enabling mpio on Windows Server

To make sure that MPIO has been installed on your Windows Server, run this command:

Get-WindowsFeature -Name 'Multipath-IO'

windows server - get 'Multipath-IO' powershell

Note. To disable MPIO, enter the following command:

Remove-WindowsFeature -Name 'Multipath-IO'

Configuring MPIO on Windows Server 2016

After installing the MPIO module, you need to activate it for the LUNs that are available by multiple paths. By default, Windows sees each connection to a disk as different logical disks (LUNs).

Tip. Among MPIO components, there is a special module, MSDSM (Microsoft Device Service Module) that allows you to manage load balancing policies. By default, MPIO is installed together with the standard Microsoft DSM. However, in most cases it is recommended to install the DSM module provided by your storage manufacturer (IBM DSM, HP DSM MPIO, etc.). Typically, native DSM offers better performance and more features than Microsoft (since the manufacturer builds its DSM based on the operating conditions and characteristics of its hardware).

Allow the DSM module by Microsoft (MSDSM) to automatically merge SAN disks based on the connection type. MSDSM automatically detects LUNs that have multiple paths to a storage and supports most popular storage devices.

You can do it from the command prompt:

  • For SAS disks: Enable-MSDSMAutomaticClaim -BusType SAS
  • For iSCSI disks: Enable-MSDSMAutomaticClaim -BusType iSCSI

Note. You can do the same using the mpclaim tools (it appeared in Windows 2008 R2). The following command will scan all devices detected by a system, find those that have multiple paths and enable MPIO support for them:

mpclaim.exe -r -i -a ""

You can also enable DSM in the GUI. Open the Server Manager and select MPIO in the Tools menu (or run the command: mpiocpl).

Go to the Discover Multi—Paths tab, check Add support for SASdevices (or Add supportfor iSCSI devices if you are using iSCSI storage) and click Add. Then restart your server.

discover multi-paths: Add support for SAS and iSCSI devices

After the restart, open the Device Manager (or the Disk Manager) and make sure that the number of connected disks (LUNs) available to your server has reduced twice (if there are two paths to your storage device).

You can manage the list of devices with MPIO support enabled in the MPIO Devices tab (or using the Get-MSDSMSupportedHw command).

mpio devices

You can add new MPIO devices by clicking Add or from PowerShell:

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

If you are deploying a cluster, configure MPIO on all nodes.

If you connect an iSCSI target via 2 paths and want to use MPIO for it, select iSCSI LUN when you connect a Target, click Connect and check the Enable multi—path option.

enable multipath for iscsi device on windows server 2016

Then click Advanced and bind different initiator IP addresses to different target IP addresses.

Windows Server 2016 multipath iscsi - bind different target IP addresses to different initiators

You can get current MPIO settings using PowerShell:

Get-MPIOSetting

Get-MPIOSetting

PathVerificationState     : Disabled
PathVerificationPeriod    : 30
PDORemovePeriod           : 20
RetryCount                : 3
RetryInterval             : 1
UseCustomPathRecoveryTime : Disabled
CustomPathRecoveryTime    : 40
DiskTimeoutValue          : 60

You can change MPIO timer settings as follows (for example, let’s enable recommended settings for the all-flash array):

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

The following MPIO balancing policies are available:

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

To change a balancing policy:

Set-MSDSMGlobalLoadBalancePolicy -Policy RR

You can also select the balancing policy in the MPIO tab of the connected LUN properties. In this example, the Round Robin policy is selected for the array.

change MPIO load balancing policy on Windows Server 2016

To view the full list of PowerShell commands available in the MPIO module, run this command:

Get-Command –Module Mpio

powershell mpio module

SAN (Disk) Policy on Windows Server

Windows has a special disk policy (SAN Policy) that determines whether disks must be mounted automatically when they are connected to a host.

You can get the current SAN Policy setting using diskpart. By default, Offline Shared policy for SAN is used:

diskpart
DISKPART>>san</code

To mount the drives automatically, change the SAN Policy value to OnlineAll.

DISKPART> san policy=OnlineAll

diskpart change san policy from offline shared to onlineall

Possible SAN Policy values:

OfflineAll All disks are offline by default
OfflineInternal All disks on internal buses are offline
OfflineShared All disks connected via iSCSI, FC or SAS are offline
OnlineAll All disks get online automatically (recommended)

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

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

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

windows Server видит дублированные диски LUN при подключении без mpio

Если операционная система поддерживает MPIO, она увидит каждый из дисков, представленных в копии. Когда MPIO включен, сервер может получать доступ к данным в системе хранения по различным путям, что увеличивает скорость доступа к подключенному LUN и позволяет использовать для доступа несколько сетевых адаптеров или HBA.
MPIO может использовать альтернативный логический путь в случае отказа одного или нескольких компонентов, вынуждая операционную систему использовать резервный маршрут для доступа к логическому диску (LUN), сохраняя непрерывность доступа к данным. Следовательно, MPIO является важным компонентом в реализации отказоустойчивой системы доступа к данным, кроме того, модули, включенные в MPIO, позволяют распределять нагрузку между разными путями к одному и тому же LUN.

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

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

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

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

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

  1. Откройте консоль Server Manager;
  2. В списке Features найдите и включите опцию multipath I / O;

    установка Multipath-IO в Windows Server 2016

  3. Завершите установку компонента MPIO и перезапустите сервер.

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

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

Add-WindowsFeature -Name 'Multipath-IO'

Add-WindowsFeature PowerShell для многопутевого ввода-вывода

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

Get-WindowsFeature -Name 'Multipath-IO'

powerShell проверяет наличие модуля Multipath-IO

Примечание. Чтобы отключить MPIO, выполните команду:

Remove-WindowsFeature -Name 'Multipath-IO'

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

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

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

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

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

  • Для дисков SAS:

    Enable-MSDSMAutomaticClaim -BusType SAS

  • Для дисков iSCSI:

    Enable-MSDSMAutomaticClaim -BusType iSCSI

Примечание. Эту же операцию можно выполнить с помощью утилиты mpclaim (представленной в Windows 2008 R2). Следующая команда просканирует все устройства, обнаруженные системой, определит, какие из них имеют несколько путей, и включит для них поддержку MPIO. Параметр

-r

[автоматический перезапуск (при необходимости) без запроса] включает автоматический перезапуск сервера:

mpclaim.exe -r -i -a ""

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

Перейдите на вкладку «Обнаружение нескольких путей», включите параметр «Добавить поддержку устройства SAS» (или «Добавить поддержку устройства iSCSI», если вы используете хранилище iSCSI) и нажмите «Добавить». Затем перезапустите сервер.

mpio windows server - включить поддержку iscsi

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

вы можете управлять списком устройств, для которых включена поддержка MPIO, на вкладке «Устройства MPIO» (или с помощью команды

Get-MSDSMSupportedHw

).

доступные устройства mpio

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

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

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

Если вы подключаете цель iSCSI через 2 пути и хотите использовать MPIO для этого подключения, вам необходимо выбрать iSCSI LUN при подключении цели, нажать кнопку «Подключить» и включить параметр «Включить многопутевый режим.

включить поддержку mpio для iscsi LUN на Windows Server

Затем нажмите кнопку «Дополнительно» и сопоставьте разные IP-адреса инициатора с разными IP-адресами назначения.

привязка целевых IP-адресов iscsi к инициатору

Используя PowerShell, вы можете получить текущие настройки MPIO:

Get-MPIOSetting

Get-MPIOSetting

 PathVerificationState: отключено PathVerificationPeriod: 30 PDOremovePeriod: 20 RetryCount: 3 RetryInterval: 1 UseCustomPathRecoveryTime: отключено CustomPathRecoveryTime: 40 DiskTimeoutValue: 60 

вы можете изменить настройки таймера MPIO следующим образом (например, установить рекомендуемые настройки для флеш-массива):

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

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

  • FOO – Только аварийное переключение
  • RR – круговая система
  • LQD – Минимальная глубина хвоста
  • LB – Минимальные блоки

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

Set-MSDSMGlobalLoadBalancePolicy -Policy RR

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

установка баланса mpio для lun в свойствах диска

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

Get-Command –Module Mpio

Список элегантных команд для модуля mpio

SAN Policy

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

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

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

Для автоматического монтирования дисков необходимо изменить значение политики SAN на OnlineAll.

DISKPART> san policy=OnlineAll

сан-политика OnlineAll

Возможные значения политики SAN:

OfflineВсе По умолчанию все диски отключены
Автономный Внутренний Все агрегаты на внутренних шинах отключены
Общий доступ в автономном режиме Все диски подключены через iSCSI, FC или SAS в автономном режиме
ОнлайнВсе Все диски автоматически переводятся в онлайн (рекомендуется)

Источник изображения: winitpro.ru

На чтение 3 мин Просмотров 255 Опубликовано 01.07.2022

В этой статье мы разберем как настроить инициатор iSCSI и использовать его для подключения к виртуальному диску iSCSI на target сервере.

В моей предыдущей статье «Настройка и установка iSCSI target Server в Windows Server 2016/2019 объяснил следующее:

  1. как установить роль iSCSI на Windows Server 2016.
  2. как создать новый виртуальный диск iSCSI и настроить доступ к серверу.

iSCSI initiator — используется для подключения к внешнему хранилищу на основе iSCSI. Рабочие станции и серверы используют его для монтирования целевого тома в качестве локального тома. Он использует сеть Ethernet на основе IP для связи с target server iSCSI.

Содержание

  1. Устанавливаем MPIO (multipath i/o)
  2. Включаем iSCSI initiator
  3. Настройка iSCSI initiator
  4. Настройка MPIO
  5. Включение виртуальных дисков

Устанавливаем MPIO (multipath i/o)

MPIO нужно настраивать на сервере к которому мы будет подключать диски. К серверу на котором будет стоять Роль iSCSI initiator

После добавления поддержки iSCSI устройств , сервер потребует перезагрузку!

Включаем iSCSI initiator

По умолчанию служба iSCSI остановлена. Чтобы использовать его, мы должны запустить службу. Чтобы запустить службу, откройте « Диспетчер серверов » -> Нажмите « Инструменты » и выберите « Инициатор iSCSI ». См. следующее изображение:

start-service MSiSCSI

Настройка iSCSI initiator

Перед настройкой , на всех интерфейсах которые будут взимодействовать с iscsi target сервером отключите IPV6

Чтобы настроить инициатор, откройте Диспетчер серверов -> Нажмите Инструменты и нажмите « Инициатор iSCSI ». Откроется диалоговое окно для его настройки. Здесь вы можете указать IP-адрес или DNS-имя целевого сервера iSCSI ИЛИ целевого портала iSCSI. См. следующее изображение:

Если на данном скриншоте у вас много дисков, перезагрузите ваш сервер. В совокупности при 2 подлеченных дисках , список должен состоять из 4 устройств.

Настройка MPIO

Здесь нам надо настроить политику использования путей. Выбирать можно из следующих вариантов:

• Fail Over Only — используется только один путь, указанный в качестве основного (active), остальные пути находятся в режиме ожидания (standby). При недоступности основного пути все подключения переводятся на резервный путь. Как только основной путь становится доступен, все подключения возвращаются обратно на основной путь;
• Round Robin —  все возможные пути используются по очереди, для балансировки нагрузки;
• Round Robin with Subset — можно указать несколько основных путей, используемых как в предыдущем режиме Round Robin, а также один или несколько дополнительных путей. Пока доступен хотя бы один из основных путей, система использует их в режиме Round Robin. Если же ни один из основных путей недоступен, то используются дополнительные пути в порядке уменьшения приоритета. Когда восстанавливается работоспособность хотя бы одного из основных путей, система возвращается в режим балансировки.
• Least Queue Depth — запросы направляются на тот путь, который в данный момент имеет наименьшее число запросов в очереди;
• Weighted Paths — для каждого пути назначается некий вес (или стоимость), которая обозначает приоритет использования данного пути. Чем больше вес, тем ниже приоритет, соответственно для операций выбирается доступный путь с наименьшим приоритетом;
• Least Blocks — все запросы направляются на тот путь, в очереди которого на передачу стоит наименьшее число блоков данных.

Для обеспечения отказоустойчивости выберем самый простой вариант — политику Fail Over Only.

Включение виртуальных дисков

I’ve already written about guest cluster in my previous blog posts – now I’d like to create a new guest cluster using Windows Server 2016 as a host OS and a multipath Windows Server 2016 – based iSCSI target. In this article I’ll walk all the steps required to create a two-way iSCSI connection to the iSCSI target. Here’s the schematic of my test network:

iscsi1

Network settings:

Host3 – iSCSI Target, WIndows Server 2016 Standard edition (of course in the productional networks iSCSI targets should not be connected to any switches except the dedicated iscsi switches – in this test I use HOST3 network connection only for the convenience).
61-1

Host1 – iSCSI initiator, WIndows Server 2016 Standard edition. 61

All network adapters to be used for iSCSI traffic should have only IP addresses and subnet masks set up – all other options/settings should be blank:
02

I’ve already described the process of creating an iSCSI target in Windows Server 2012R2 so I’ll just recap what should have been done in Windows Server 2016 to create an iSCSI target as the process has not changed since Windows Server 2012R2:

1) On Host3: I start Add Roles and Features Wizard and add iSCSI services to Host3 as depicted below:
07
11

14

Once the installation is complete I can proceed to creating folders that would be the virtual iSCSI disks on Host3. Since I’m going to create a guest cluster with the virtual domain controller and the virtual Exchange Server I will create three folders on different drives: the first one – iSCSI for the cluster forum, the second – iSCSI1 – for the virtual DC and the third one – iSCSI2 – for the virtual Exchange 2016.

2123

Now I create virtual iscsi drives and the new target:
18

2425

26 2729

30 3132 3334 35

The first VHD and the target are created:36

In the same manner I add the other two VHDs to the same target:
50

2) On Host1: I start Add Roles and Features Wizard and add MPIO to Host1
63 646566

Let’s run MPIO:70

As you can see, by default MPIO does not have iSCSI support:71

…so I will add it:
72and restart the server:

73

Now iSCSI support is enabled:
74

3) Connect to the target:

111-1

As Host1 is connected to the target (Host3) via the two independent paths I should connect to the target twice and configure two pairs of target/initiator  addresses – for this I click Advanced… button:

125-1

123

– now I press OK twice and return to the iSCSI Initiator’s Target window
124

Once again, I click Connect and enter the second pair of addresses:
125-2126
…press OK twice.

On the Volumes and Devices tab we can see the three iSCSI VHDs:
113-1
Please note that the third volume still doesn’t use MPIO (there’s no mpio prefix after ) so I press Auto Configure and all three volumes “become multipathed”:
113-2

4) To make sure MPIO is working I press Devices… and then MPIO133

135137

As you can see there two active connections to the target because by default MPIO uses Round Robin load balance policy – it allows to use both paths simultaniously for load distribution.

We can click on each path and see its properties by pressing Details
138 139140

Once the multipath connection to the target is established, I can proceed to formatting the newly-created disks (in fact iSCSI VHDs) in the Disk Management:

138

139

140

141

142

23 24

25 26

In the same manner I bring online and format the other two iSCSI disks:
27-good

Now let’s see the default MPIO configuration (please run PowerShell as Administrator):

Get-Command -Module MPIO
41

Please note that the DefaultTimeoutValue is set to 60 seconds – it means that if one of the paths fails MPIO will wait 60 seconds before failing over the current IO operations (which were carried out “along” that failed path) to the second path. I think this is too long so I’ll change this value to 20 seconds:

Set-MPIOSetting -NewDiskTimeout 2042

54-1

Once the server is restarted I can test the multipath connection by copying the file to iSCSI volume and unplugging one of the path-cords from the server: after the disk timeout period (20 sec.) the copy operation should be resumed.

51 52

55

Note: you may find the picture above (with the copying bar) not too much descriptive – this is due to the  speed scale WinServer 2016 chooses (for the unknown reason!) for the bar: the actual  copying speed <=250 MBps  (using 2 x 1Gbps network adapters), that’s why the speed green “bar” is so “weak”.

Summary:

MPIO in Windows Server 2016 does provide both network speed aggregation and network attached storage fault tolerance.

MPIO (in regards in iSCSI) in Windows Server allows us to utilise two or more connectors rather than using a single connector to hook up to our storage appliance.

By default MPIO is not installed / enabled on Server 2012/2016 — so we’ll firstly enable it with:

Enable-WindowsOptionalFeature –Online –FeatureName MultiPathIO

To enable automatic use of MPIO we should issue:

Enable-MSDSMAutomaticClaim -BusType iSCSI

and then set the load balancing type we’ll want to use with it (in this case we’ll use a round robin style):

Set-MSDSMGlocalDefaultLoadBalancePolicy -Policy RR

and finally set the disk timeout period used for MPIO:

Set-MPIOSetting -NewDiskTimeout 45

And reboot the system:

shutdown /r -t 0

Set the interface IP addresses by firstly obtaining the interface index for the relevant ports:

Get-NetAdapter

and assign the relevant IP addresses:

New-NetIPAddress -InterfaceIndex <int> -IPAddress 10.11.12.254 -PrefixLength 24

We’ll also need to ensure that iSCSI support has been enabled:

Set-Service -Name msiscsi -StartupType Automatic
Start-Service msiscsi

We’ll now proceed by configuring our iSCSI connectors via Powershell:

New-IscsiTargetPortal -TargetPortalAddress <SAN-IP-1> -InitiatorPortalAddress <LOCAL-SAN-IP-1> -InitiatorInstanceName «ROOTISCSIPRT000_0»
New-IscsiTargetPortal -TargetPortalAddress <SAN-IP-2> -InitiatorPortalAddress <LOCAL-SAN-IP-1> -InitiatorInstanceName «ROOTISCSIPRT000_0»

Now obtain the node address with:

Get-IscsiTarget

and connect to them with:

Connect-IscsiTarget -IsMultipathEnabled $true -NodeAddress <node-address> -IsPersistent $true
Connect-IscsiTarget -IsMultipathEnabled $true -NodeAddress <node-address> -IsPersistent $true

Then get a list of the disks with:

Get-IscsiSession | Get-Disks

Понравилась статья? Поделить с друзьями:
  • Настройка remoteapp windows server 2019 для запуска 1с
  • Настройка microsoft outlook для windows 7
  • Настройка mem reduct для windows 10
  • Настройка remoteapp windows server 2016 для запуска 1с
  • Настройка mail почты в приложении почта windows 10