vSphere 5.1 vs Round Robin vs I/O operation limit

Очередной этап тонкой настройки политик выбора пути в vSphere 5.1.

Виталий Волнянский  около полутора лет назал писал обзор “Настройка значения IOOperationLimit для RoundRobin на нескольких виртуальных хранилищ одновременно“, но есть небольшие изменения в vSphere 5.1, да и скрипты на PowerShell попривлекательней.

Одним из самых эффективных методов увеличения скорости доступ к системам хранения, поддерживающих для Native Multipathing (NMP) Path Selection Plug-ins (PSP)  режим работы Round Robin, и снижения задержек является уменьшение значения по умолчанию параметра I/O operation limit с 1000 операций ввода-вывода до 1-10. Данный параметр регулирует “такт” перехода к следующему активному пути(для ALUA по умолчанию с учетом оптимального пути, регулируется параметром useano), то есть через сколько операций переключиться на следующий путь.

Что даёт и для каких систем рекомендуется/протестировано:

 Как включить?

Это самое простое, но грабля есть.

Подаем команду на нужных дисках и готово:

esxcli storage nmp psp roundrobin deviceconfig set -t iops -I 1 -d naa.xxxxxxxxx

 Грабля в vSphere 5.1.

В vSphere 5.1 у команды добавился параметр cfgfile, что повлияло на реализацию функции в PowerShell, сейчас синтаксис такой(2 часа выяснял причину сбоя в работе старых скриптов):

boolean set(long bytes, boolean cfgfile, string device, long iops, string type, boolean useano),

как получить описание функций:

$esxcli=Get-EsxCli 
$esxcli.storage.nmp.psp.roundrobin.deviceconfig|Get-Member|fl

пример на PowerShell:

$esxcli.storage.nmp.psp.roundrobin.deviceconfig.set($null,$null,'naa.xxx',1,'iops',$false)

P.S. Если для вашей системы нет рекомендаций от производителя по уменьшению значения параметра, то вся ответственность за последствия изменений лежит на вас.

P.P.S. Продолжаем изучать PowerShell

Скрипт опроса LUN, подключенных с IBM SVC. Для установки параметра код поправите сами. 😉

#### Variables
$VC = "vcenter"
$psp = "VMW_PSP_RR"
$satp = "VMW_SATP_SVC"

#### Connect to Your vCenter
Connect-viserver -Server $VC

#### Get IBM SVC Round Robin's LUNs status
$vchosts = Get-VMHost
foreach ($vmhost in $vchosts)
 {

 $myesxcli=get-esxcli -VMHost $vmhost
 write-host $vmhost.name
 Get-VMHost $vmhost | Get-ScsiLun -CanonicalName "naa.6005*" | Where {$_.MultipathPolicy -eq "RoundRobin"} | %{$myesxcli.storage.nmp.psp.roundrobin.deviceconfig.get($_.CanonicalName)}
}

#### Disconnect from Your vCenter
Disconnect-VIServer $VC -Confirm:$false
Запись опубликована в рубрике 5.0, 5.1, EMC, Hardware, HP, IBM, VMware, vSphere с метками , . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *