На наших серверах Linux мы в настоящее время используем драйверы HPs qla2xxx, потому что в них встроена функция множественного доступа (активный / пассивный).
Однако существуют различные другие варианты, такие как Red Hats device-mapper-multipath со стандартными драйверами qla2xxx (multibus и аварийное переключение) и такие вещи, как SecurePath и PowerPath (оба из которых могут выполнять транкинг, iirc).
Может ли кто-нибудь сказать мне, каковы достоинства и недостатки различных вариантов (если я могу задать такой вопрос), помимо очевидного факта, что варианты {Secure, Power} Path стоят огромных денег? Меня в основном интересуют свободно доступные варианты, такие как HPs qla2xxx против Red Hats multipathd и возможные другие решения с открытым исходным кодом, но я хотел бы услышать также веские причины для перехода на коммерческие решения.
ОБНОВИТЬ: Я буду тестировать различные варианты в ближайшие несколько дней (в среднем 10 запусков iozone для каждого варианта (варианты: собственный отказоустойчивый qla2xxx, родной qla2xxx multibus, отказоустойчивый HP qla2xxx)). Я размещу здесь сводку результатов для заинтересованных.
В прошлом я использовал:
Я очень предпочитаю многопутевый модуль отображения устройств за его простоту, тесную связь с ядром и надежность.
IBM SDD изначально был драйвером AIX, перенесенным на Linux. Это работало хорошо, но, чтобы избежать заражения ядра, требовались определенные версии ядра Linux, которые часто отставали на 3-6 месяцев от последней и самой большой.
Я ненавижу RDAC-хранилище и пытаюсь заставить работать с ним любое программное обеспечение для работы с несколькими путями. Если у вас есть хранилище RDAC, избегайте драйверов RDAC и используйте dm-multipath. По моему опыту, это более надежно.
Что касается драйверов HBA, я обычно использую все, что поставляется с ядром Linux, поскольку оно также работает с dm-multipath. Одними из самых больших разочарований в моей карьере были попытки заставить драйверы RDAC или SDD работать с драйверами HBA. Часто где-то есть несоответствие, и половина LUN не видна, или конфликтуют, и вы видите одни и те же дважды.
Еще один голос за DM multipath.
Я пострадал от рук собственных драйверов QLogic qla3xxx / qla4xxx и пользовательских утилит, которые раньше предназначены для управления ими. Наш опыт может немного отличаться, потому что карты были OEM-изготовлены IBM как единственные адаптеры шины iSCSI, доступные для их блейд-серверов, но я подозреваю, что это применимо в равной степени. Использовать драйверы и утилиты было просто кошмаром. Кроме того, ни IBM, ни QLogic не смогли предоставить технические инструкции по использованию карт в рекомендованных ими средах.
Напротив, драйверы ядра исходной версии работают безупречно. Все необходимые интерфейсы представлены через sysfs. LUN с разных путей прибывают как блочные устройства, как и следовало ожидать, готовые к идентификации с помощью multipathd. multipathd относительно легко настроить и делает именно то, что написано на жестяной банке, в трудные времена. Если у вас есть технические знания, чтобы обойтись без какой-либо базовой поддержки, которую они могут вам предоставить, то это была бы моя рекомендация.
PS: Если вы хотите загрузить настройку root-on-multipath, это немного сложно, но вполне достижимо. При необходимости я могу предоставить несколько заметок.
Ну пока DM у меня тоже. Я пробовал и RDAC, и DM на DS4700, ни один из них не будет выполнять динамическую балансировку нагрузки на ds4700, только переключение при отказе. Если вы включите циклическую балансировку, ваша пропускная способность упадет ... я где-то читал, что виноват в неспособности ds4700 сделать это.
Я не видел различий в производительности между rdac и dm, хотя dm заставит программное обеспечение Sansurfer жаловаться на выбор неиспользуемых контроллеров по какой-то причине.
Для меня RDAC также был кошмаром для компиляции под Debian, я бы хотел, чтобы люди перестали думать, что linux - это только RHEL и SuSE!
А как насчет SDD? Есть ли в этом плюсы по сравнению с этими двумя?