MPxIO может использовать load-balance алгоритмы
round-robin
logical-block
none
Обычно, включается опция load-balance=»round-robin» в файле /kernel/drv/scsi_vhci.conf .
На массивах Hitachi USP, USPV, VSP (и других работающих в active-active режиме) это приводит к тому, что каждая scsi-команда отрабатывает на следующем контроллере, при этом происходит задержка (rotational delay на диске, система ждет пока диск сделает оборот). Особенно заметно это на последовательных операциях ввода-вывода и на страйпированых томах vxvm или svm со страйпом 16кб.
Чтобы этого избежать,
включаем режим балансировки нагрузки «logical block» для определенных массивов (массив определяется по выводу команд ‘luxadm inqure’ или ‘mpathadm show lu’).
# mpathadm show lu /dev/rdsk/c0t60060E80164E6F0000014E6F00000201d0s2 |egrep "Vendor|Product"
Vendor: HITACHI
Product: OPEN-V -SUN
Добавляем в /kernel/drv/scsi_vhci.conf ( для Solaris 11 /etc/driver/drv/scsi-vhci.conf ) следующие строки
device-type-mpxio-options-list =
"device-type=HITACHI OPEN-V -SUN", "load-balance-options=logical-block-options";
logical-block-options="load-balance=logical-block", "region-size=15";
Опция «region-size=N» означает (2^N)*512-байтных блоков, которые пройдут по одному пути, затем путь переключается. Например N=15 2^15 = 32768 = area of 16MB
Чтобы новый алгоритм балансировки применился — требуется перезагрузка.
Ссылки в тему:
- SAN 4.4: Logical block MPxIO load balancing method
- Logical block MPxIO load balancing method [ID 1004918.1]
- Performance Degradation with MPxIO and Symmetric Devices (Sun Storedge[TM] 99xx/3510 and Sun Fire[TM] v880) [ID 1001937.1]
UPDATE 20131106