Multipath

Da Emigar.
Jump to navigation Jump to search

Configurazione

File di configurazione del multipath con SuSE Sles9

##
## This is a template multipath-tools configuration file
## Uncomment the lines relevent to your environment
##
defaults {
        default_features "1 queue_if_no_path"
#       multipath_tool  "/sbin/multipath -v0"
#       udev_dir        /dev
#       polling_interval 10
#       default_selector        "round-robin 0"
#       default_path_grouping_policy    multibus
#       default_getuid_callout  "/sbin/scsi_id -g -u -s /block/%n"
#       default_prio_callout    "/bin/true"
#       default_features        "0"
#       rr_min_io               100
#       rr_weight               priorities
#       failback                immediate
}
devnode_blacklist {
        wwid 41021712362D87000000
        wwid 1AMCC_41021712362D87000000
        devnode "^(ram|raw|loop|fd|md|dm-|system-|sr|scd|st)[0-9]*"
        devnode "^hd[a-z][[0-9]*]"
        devnode "^cciss!c[0-9]d[0-9]*[p[0-9]*]"
}
multipaths {
        multipath {
                wwid    3600508b4001063830000900000940000
                alias   vmware_transito
        }
        multipath {
                wwid    3600508b40010638300009000009c0000
                alias   vmware_server
        }
}
devices {
device {
       vendor                "HP       "
       product               "HSV200         "
       path_grouping_policy  group_by_prio
       getuid_callout        "/sbin/scsi_id -g -u -s /block/%n"
       path_checker          tur
       path_selector         "round-robin 0"
       prio_callout          "/sbin/mpath_prio_alua %d"
       failback              immediate
}
}



# cat /etc/multipath.conf
blacklist {
        wwid 20010b9fd080b7321
        devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
        devnode "^hd[a-z][[0-9]*]"
        devnode "^cciss!c[0-9]d[0-9]*[p[0-9]*]"
}

devices {
        device {
                vendor "EMC "
                product "SYMMETRIX"
                path_grouping_policy multibus
                getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
                path_selector "round-robin 0"
                features "0"
                hardware_handler "0"
                failback immediate
        }
        device {
                vendor "DGC"
                product "*"
                path_grouping_policy group_by_prio
                getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
                prio_callout "/sbin/mpath_prio_emc /dev/%n"
                hardware_handler "1 emc"
                features "1 queue_if_no_path"
                no_path_retry 300
                path_checker emc_clariion
                failback immediate
        }
}

multipaths {
        multipath {
                wwid
3600601608d1e170090af86321308db11
                alias                   san1
                path_grouping_policy    failover
                failback                immediate
        }
        multipath {
                wwid
360060160a1f4160072ee88ba1208db11
                alias                   san2
                path_grouping_policy    failover
                failback                immediate
        }
}


Con la SLES9 ci potrebbero essere seri problemi se si utilizzasse LVM2 su device multipath, poiché per default multipath non esegue la scansione della tavola delle partizioni e la creazione degli special files associati. In pratica dopo l'esecuzione di boot.multipath i device /dev/mapper/mpathX sarebbero leggibili, ma gli eventuali devices relativi alle partizioni /dev/mapper/mpathXpY non lo sarebbero. Per renderli leggibili bisogna eseguire il comando:

/sbin/kpartx -a /dev/mapper/mpathX

per ogni device. Per fare ciò, può essere conveniente modificare boot.local in questo modo:

/sbin/modprobe dm-multipath
/sbin/multipath
/sbin/kpartx -a /dev/mapper/mpath0
/sbin/kpartx -a /dev/mapper/mpath1
/sbin/kpartx -a /dev/mapper/mpath2
/sbin/kpartx -a /dev/mapper/mpath3

vgscan --mknodes


http://support.novell.com/techcenter/sdb/en/2005/04/sles_multipathing.html

| Come configurare multipath per il root device

Config alternativo by RedHat & EMC2 CX300

devnode_blacklist {
        devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
        devnode "^hd[a-z]"
        devnode "^cciss!c[0-9]d[0-9]*"
}

defaults {
        user_friendly_names yes
}

devices {
        device {
                vendor                  "DGC "
                product                 "*"
                path_grouping_policy    group_by_prio
                getuid_callout          "/sbin/scsi_id -g -u -s /block/%n"
                prio_callout            "/sbin/mpath_prio_emc /dev/%n"
                path_checker            emc_clariion
                path_selector           "round-robin 0"
                features                "1 queue_if_no_path"
                no_path_retry           300
                hardware_handler        "1 emc"
                failback                immediate
        }
}

Referenze

https://help.ubuntu.com/lts/serverguide/multipath-admin-and-troubleshooting.html

https://www.ibm.com/support/knowledgecenter/en/STPVGU/com.ibm.storage.svc.console.720.doc/svc_linux_settings.html

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/dm_multipath/config_file_multipath

Comandi

echo 'show config' | multipathd -k
echo 'reconfigure' | multipathd -k
echo 'list multipaths status' | multipathd -k
echo 'list multipaths stats' | multipathd -k
echo 'paths count' | multipathd -k