summaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorPeter Jones <pjones@redhat.com>2009-10-14 16:31:16 -0400
committerPeter Jones <pjones@redhat.com>2009-10-15 16:13:07 -0400
commit50befe6e3833568d82e25d9589037db00e6c1437 (patch)
tree9332d59ff9f5b29ef4acf63a66e834f5340e4a92 /storage
parent2b57b826afb457f5d0cd23743db6a3d2ccb722a0 (diff)
downloadanaconda-50befe6e3833568d82e25d9589037db00e6c1437.tar.gz
anaconda-50befe6e3833568d82e25d9589037db00e6c1437.tar.xz
anaconda-50befe6e3833568d82e25d9589037db00e6c1437.zip
Don't set unnecessary multipath defaults.
Use "device" entries in the config file rather than specifying configuration parameters in the "multipath" section of the config file. This gets us more reasonable configuration.
Diffstat (limited to 'storage')
-rw-r--r--storage/devicelibs/mpath.py494
-rw-r--r--storage/devices.py12
2 files changed, 498 insertions, 8 deletions
diff --git a/storage/devicelibs/mpath.py b/storage/devicelibs/mpath.py
index 3de91af62..4a1c41787 100644
--- a/storage/devicelibs/mpath.py
+++ b/storage/devicelibs/mpath.py
@@ -14,10 +14,500 @@ class MultipathConfigWriter:
ret += """\
# multipath.conf written by anaconda
+defaults {
+ verbosity 2
+}
blacklist {
- devnode "*"
+ devnode "*"
+ devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
+ devnode "^hd[a-z]"
+ devnode "^dcssblk[0-9]*"
+ device {
+ vendor "DGC"
+ product "LUNZ"
+ }
+ device {
+ vendor "IBM"
+ product "S/390.*"
+ }
+ device {
+ vendor "IBM"
+ product "S/390.*"
+ }
+}
+devices {
+ device {
+ vendor "COMPELNT"
+ product "Compellent Vol"
+ path_grouping_policy multibus
+ path_checker tur
+ checker tur
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "APPLE*"
+ product "Xserve RAID "
+ path_grouping_policy multibus
+ }
+ device {
+ vendor "3PARdata"
+ product "VV"
+ path_grouping_policy multibus
+ }
+ device {
+ vendor "DEC"
+ product "HSG80"
+ path_grouping_policy group_by_prio
+ path_checker hp_sw
+ checker hp_sw
+ features "1 queue_if_no_path"
+ hardware_handler "1 hp-sw"
+ prio hp_sw
+ }
+ device {
+ vendor "HP"
+ product "A6189A"
+ path_grouping_policy multibus
+ no_path_retry 12
+ }
+ device {
+ vendor "(COMPAQ|HP)"
+ product "(MSA|HSV)1.0.*"
+ path_grouping_policy group_by_prio
+ path_checker hp_sw
+ checker hp_sw
+ features "1 queue_if_no_path"
+ hardware_handler "1 hp-sw"
+ prio hp_sw
+ no_path_retry 12
+ rr_min_io 100
+ }
+ device {
+ vendor "HP"
+ product "MSA VOLUME"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ prio alua
+ failback immediate
+ no_path_retry 12
+ rr_min_io 100
+ }
+ device {
+ vendor "(COMPAQ|HP)"
+ product "HSV1[01]1|HSV2[01]0|HSV300|HSV4[05]0"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ prio alua
+ failback immediate
+ no_path_retry 12
+ rr_min_io 100
+ }
+ device {
+ vendor "HP"
+ product "MSA2[02]12fc|MSA2012i"
+ path_grouping_policy multibus
+ path_checker tur
+ checker tur
+ failback immediate
+ no_path_retry 18
+ rr_min_io 100
+ }
+ device {
+ vendor "HP"
+ product "MSA2012sa|MSA23(12|24)(fc|i|sa)|MSA2000s VOLUME"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ prio alua
+ failback immediate
+ no_path_retry 18
+ rr_min_io 100
+ }
+ device {
+ vendor "HP"
+ product "HSVX700"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ hardware_handler "1 alua"
+ prio alua
+ failback immediate
+ no_path_retry 12
+ rr_min_io 100
+ }
+ device {
+ vendor "HP"
+ product "LOGICAL VOLUME.*"
+ path_grouping_policy multibus
+ path_checker cciss_tur
+ checker cciss_tur
+ no_path_retry 12
+ }
+ device {
+ vendor "DDN"
+ product "SAN DataDirector"
+ path_grouping_policy multibus
+ }
+ device {
+ vendor "EMC"
+ product "SYMMETRIX"
+ path_grouping_policy multibus
+ getuid_callout "/lib/udev/scsi_id --page=pre-spc3-83 --whitelisted --device=/dev/%n"
+ }
+ device {
+ vendor "DGC"
+ product ".*"
+ product_blacklist "LUNZ"
+ path_grouping_policy group_by_prio
+ path_checker emc_clariion
+ checker emc_clariion
+ features "1 queue_if_no_path"
+ hardware_handler "1 emc"
+ prio emc
+ failback immediate
+ no_path_retry 60
+ }
+ device {
+ vendor "FSC"
+ product "CentricStor"
+ path_grouping_policy group_by_serial
+ }
+ device {
+ vendor "(HITACHI|HP)"
+ product "OPEN-.*"
+ path_grouping_policy multibus
+ path_checker tur
+ checker tur
+ }
+ device {
+ vendor "HITACHI"
+ product "DF.*"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ features "1 queue_if_no_path"
+ prio hds
+ failback immediate
+ }
+ device {
+ vendor "IBM"
+ product "ProFibre 4000R"
+ path_grouping_policy multibus
+ }
+ device {
+ vendor "IBM"
+ product "1722-600"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ features "1 queue_if_no_path"
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry 300
+ }
+ device {
+ vendor "IBM"
+ product "1724"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ features "1 queue_if_no_path"
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry 300
+ }
+ device {
+ vendor "IBM"
+ product "1726"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ features "1 queue_if_no_path"
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry 300
+ }
+ device {
+ vendor "IBM"
+ product "1742"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "IBM"
+ product "1814"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "IBM"
+ product "1815"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "IBM"
+ product "1818"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "IBM"
+ product "3526"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "IBM"
+ product "3542"
+ path_grouping_policy group_by_serial
+ path_checker tur
+ checker tur
+ }
+ device {
+ vendor "IBM"
+ product "2105800"
+ path_grouping_policy group_by_serial
+ path_checker tur
+ checker tur
+ features "1 queue_if_no_path"
+ }
+ device {
+ vendor "IBM"
+ product "2105F20"
+ path_grouping_policy group_by_serial
+ path_checker tur
+ checker tur
+ features "1 queue_if_no_path"
+ }
+ device {
+ vendor "IBM"
+ product "1750500"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ features "1 queue_if_no_path"
+ prio alua
+ failback immediate
+ }
+ device {
+ vendor "IBM"
+ product "2107900"
+ path_grouping_policy multibus
+ path_checker tur
+ checker tur
+ features "1 queue_if_no_path"
+ }
+ device {
+ vendor "IBM"
+ product "2145"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ features "1 queue_if_no_path"
+ prio alua
+ failback immediate
+ }
+ device {
+ vendor "IBM"
+ product "S/390 DASD ECKD"
+ product_blacklist "S/390.*"
+ path_grouping_policy multibus
+ getuid_callout "/sbin/dasd_id /dev/%n"
+ features "1 queue_if_no_path"
+ }
+ device {
+ vendor "IBM"
+ product "S/390 DASD FBA"
+ product_blacklist "S/390.*"
+ path_grouping_policy multibus
+ getuid_callout "/sbin/dasdinfo -u -b %n"
+ features "1 queue_if_no_path"
+ }
+ device {
+ vendor "IBM"
+ product "IPR.*"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ features "1 queue_if_no_path"
+ hardware_handler "1 alua"
+ prio alua
+ failback immediate
+ }
+ device {
+ vendor "AIX"
+ product "VDASD"
+ path_grouping_policy multibus
+ failback immediate
+ no_path_retry 60
+ }
+ device {
+ vendor "DELL"
+ product "MD3000"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ features "1 queue_if_no_path"
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ }
+ device {
+ vendor "DELL"
+ product "MD3000i"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ features "1 queue_if_no_path"
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ }
+ device {
+ vendor "NETAPP"
+ product "LUN.*"
+ path_grouping_policy group_by_prio
+ features "1 queue_if_no_path"
+ prio netapp
+ failback immediate
+ rr_min_io 128
+ }
+ device {
+ vendor "IBM"
+ product "Nseries.*"
+ path_grouping_policy group_by_prio
+ features "1 queue_if_no_path"
+ prio netapp
+ failback immediate
+ rr_min_io 128
+ }
+ device {
+ vendor "Pillar"
+ product "Axiom.*"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ prio alua
+ }
+ device {
+ vendor "SGI"
+ product "TP9[13]00"
+ path_grouping_policy multibus
+ }
+ device {
+ vendor "SGI"
+ product "TP9[45]00"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "SGI"
+ product "IS.*"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "STK"
+ product "OPENstorage D280"
+ path_grouping_policy group_by_prio
+ path_checker tur
+ checker tur
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ }
+ device {
+ vendor "SUN"
+ product "(StorEdge 3510|T4)"
+ path_grouping_policy multibus
+ }
+ device {
+ vendor "PIVOT3"
+ product "RAIGE VOLUME"
+ path_grouping_policy multibus
+ getuid_callout "/lib/udev/scsi_id --page=0x80 --whitelisted --device=/dev/%n"
+ path_checker tur
+ checker tur
+ features "1 queue_if_no_path"
+ rr_min_io 100
+ }
+ device {
+ vendor "SUN"
+ product "CSM200_R"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "SUN"
+ product "LCSM100_[IF]"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry queue
+ }
+ device {
+ vendor "(LSI|ENGENIO)"
+ product "INF-01-00"
+ path_grouping_policy group_by_prio
+ path_checker rdac
+ checker rdac
+ features "2 pg_init_retries 50"
+ hardware_handler "1 rdac"
+ prio rdac
+ failback immediate
+ no_path_retry 15
+ }
}
-
blacklist_exceptions {
"""
for device in self.blacklist_exceptions:
diff --git a/storage/devices.py b/storage/devices.py
index 436d13869..9fafeb611 100644
--- a/storage/devices.py
+++ b/storage/devices.py
@@ -2756,12 +2756,12 @@ class MultipathDevice(DiskDevice):
self.config = {
'wwid' : self.identity,
'alias' : self.name,
- 'path_grouping_policy' : 'failover',
- 'path_selector' : '\"round-robin 0\"',
- 'failback' : 'manual',
- 'rr_weight' : 'priorities',
- 'no_path_retry' : 'queue',
- 'rr_min_io' : '100',
+ #'path_grouping_policy' : 'failover',
+ #'path_selector' : '\"round-robin 0\"',
+ #'failback' : 'manual',
+ #'rr_weight' : 'priorities',
+ #'no_path_retry' : 'queue',
+ #'rr_min_io' : '100',
#'flush_on_last_del' : 'yes',
'mode' : '0644',
'uid' : '0',