RFE: new NVMe configs from several vendors
Closed this issue · 9 comments
xosevp commented
- HPE Alletra 9000 NVMe (page 53): https://support.hpe.com/hpesc/public/docDisplay?docLocale=en_US&docId=a00115289en_us (website some time is broke) or https://support.hpe.com/hpesc/public/docDisplay?docId=sd00001334en_us&page=GUID-551FCC2F-D8EA-405B-B9DC-2E66C2AE8608.html
vendor "NVME"
product "HPE Alletra"
path_grouping_policy multibus
path_selector "round-robin 0"
path_checker "none"
prio const
failback immediate
rr_weight uniform
no_path_retry "queue"
rr_min_io_rq 1
fast_io_fail_tmo 10
dev_loss_tmo 14
Translated to code:
/* Alletra 9000 NVMe */
.vendor = "NVME",
.product = "HPE Alletra",
.pgpolicy = MULTIBUS,
.no_path_retry = NO_PATH_RETRY_QUEUE,
xosevp commented
- NetApp e-series (page 12): https://docs.netapp.com/us-en/e-series/pdfs/sidebar/NVMe_over_Fibre_Channel_setup.pdf
vendor "NVME"
product "NetApp E-Series*"
path_grouping_policy group_by_prio
failback immediate
no_path_retry 30
Translated to code:
/* E-Series NVMe */
.vendor = "NVME",
.product = "NetApp E-Series",
.pgpolicy = GROUP_BY_PRIO,
.prio_name = PRIO_ANA,
.pgfailback = -FAILBACK_IMMEDIATE,
.no_path_retry = 30,
xosevp commented
- Huawei OceanStor (config removed in latest edition): https://download.huawei.com/edownload/e/download.do?actionFlag=download&nid=EDOC1100154490&partNo=6001&mid=SUPE_DOC&_t=1612885603000
Old version (page 61-62): https://drive.google.com/file/d/1c5RK4GXX7ofZBFxTtZ_IN1qHyIjw5eR1
vendor "NVME"
product "Huawei-XSG1"
uid_attribute "ID_WWN"
no_path_retry 12
rr_min_io_rq 1
prio "const"
path_grouping_policy multibus
path_checker "directio"
failback immediate
fast_io_fail_tmo 0
retain_attached_hw_handler "no"
Translated to code:
/* OceanStor NVMe */
.vendor = "NVME",
.product = "Huawei-XSG1",
.pgpolicy = MULTIBUS,
.checker_name = DIRECTIO,
.no_path_retry = 12,
mwilck commented
checker_name
is required if you want path checking (default for NVME is NONE)- for
prio_name
, multipathd will check if a path supports ANA and use it if supported, falling back to CONST otherwise. So setting CONST is only necessary if this autodetection yields wrong results for the array. I don't know if that's the case for OceanStor - setting
fast_io_fail
is unnecessary for NVMe, we support it only for SCSI (like dev_loss_tmo), and this is unlikely to change any time soon.
xosevp commented
- IBM FlashSystem (TMS RamSan): https://www.ibm.com/docs/en/flashsystem-900/1.6.1?topic=configurations-multipathing-information-linux
vendor "NVMe"
product "FlashSystem-9840"
path_selector "service-time 0"
path_grouping_policy multibus
path_checker tur
rr_min_io_rq 4
rr_weight uniform
no_path_retry fail
failback immediate
dev_loss_tmo 300
fast_io_fail_tmo 25
user_friendly_names yes
Translated to code:
/* FlashSystem(RamSan) NVMe */
.vendor = "NVMe",
.product = "FlashSystem",
.pgpolicy = MULTIBUS,
.no_path_retry = NO_PATH_RETRY_FAIL,
xosevp commented
- IBM FlashSystem (Storwize/SVC): https://www.ibm.com/docs/en/flashsystem-7x00/8.5.x?topic=system-multipath-configuration-fc-nvme-hosts
vendor "NVME"
product "IBM 2145"
path_grouping_policy "multibus"
path_selector "round-robin 0"
prio "const"
path_checker "none"
failback "immediate"
no_path_retry "queue"
rr_weight uniform
rr_min_io_rq "1"
fast_io_fail_tmo 15
dev_loss_tmo 600
Translated to code:
/* FlashSystem(Storwize/SVC) NVMe */
.vendor = "NVME",
.product = "IBM[ ]+2145",
.pgpolicy = MULTIBUS,
.no_path_retry = NO_PATH_RETRY_QUEUE,
xosevp commented
- Pure Storage FlashArray (e-mail from vendor)
vendor "NVME"
product "Pure Storage FlashArray"
path_selector "queue-length 0"
path_grouping_policy multibus
fast_io_fail_tmo 10
user_friendly_names no
no_path_retry 10
features 0
dev_loss_tmo 60
Translated to code:
/* FlashArray NVMe */
.vendor = "NVME",
.product = "Pure Storage FlashArray",
.pgpolicy = MULTIBUS,
.no_path_retry = 10,
xosevp commented
vendor .*
product dellemc-powerstore
uid_attribute ID_WWN
prio ana
failback immediate
path_grouping_policy "group_by_prio"
# path_checker directio
path_selector "queue-length 0"
detect_prio "yes"
fast_io_fail_tmo 15
no_path_retry 3
rr_min_io_rq 1
Translated to code:
/* PowerStore NVMe */
.vendor = ".*",
.product = "dellemc-powerstore",
.pgpolicy = GROUP_BY_PRIO,
.prio_name = PRIO_ANA,
.pgfailback = -FAILBACK_IMMEDIATE,
.no_path_retry = 3,
mwilck commented
@xosevp, what's the status here? I'm preparing a 0.9.0 submission. Do you need further input from anyone?
xosevp commented
DONE.