multipath多路径配置

2015年9月30日 发表评论 阅读评论

很多存储厂商都有自己的多路径软件,像EMC的powerpath、华为有UltraPath,不过考虑到通用性和兼容性可能还是系统自带的multipath使用的是最多的。multipath除了兼容性比较好,配置也比较简单。

multipath.conf的配置分为:defaults、blacklist、blacklist_exceptions、devices、multipaths几部分。defaults一般做全局性的配置,比如轮询策略、使用名称、权重策略等;blacklist一般做屏蔽的设备列表(不在多路径的输出中显示);blacklist_exceptions用于配置屏蔽例外的,一般也不做配置;devices项是针对不对品牌和型号的设备进行的调优配置,需要注意blacklist项里有也device配置,不过是针对屏蔽策略的;multipaths是最关键部分,一般只配置别名、wwid。

一、multipath.conf配置

multipath.conf的默认配置一般如下:

defaults {
  polling_interval 10
# alias_prefix "mpath"
  user_friendly_names no
}
blacklist {
  # black local disk
  wwid  3600508b1001c27907eca5c5df3253752
  wwid  3600508b1001caad1587d7d457eaf7045
  devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
  devnode "^hd[a-z]"
  devnode "^cciss"
#       device {
#               vendor "IBM"
#               product "S/390.*"
#       }
}
#devices {
#       device {
#               vendor "(COMPAQ|HP)"
#               product "(MSA|HSV)1.0.*"
#               path_grouping_policy "group_by_prio"
#               path_checker "hp_sw"
#               features "1 queue_if_no_path"
#               hardware_handler "1 hp_sw"
#               prio "hp_sw"
#               rr_weight "uniform"
#               no_path_retry 12
#               rr_min_io 100
#       }
#       device {
#               vendor "SUN"
#               product "SUN_6180"
#               path_grouping_policy "group_by_prio"
#               path_checker "rdac"
#               features "0"
#               hardware_handler "1 rdac"
#               prio "rdac"
#               failback "immediate"
#               rr_weight "uniform"
#               no_path_retry "queue"
#               rr_min_io 1000
#               rr_min_io_rq 1
#       }
#}
multipaths {
        multipath {
           wwid 360060e80059559000000955900000400
           alias mpatha
        }
        multipath {
           wwid 360060e80059559000000955900000401
           alias mpathb
        }
}

二、重载多路径配置

可以使用如下命令进行重载配置:

# multipath -F
# multipath -v4
• Or
# service multipathd reload
# systemctl reload multipathd 

执行完成后,可以通过如下命令查看多路径状态:

[root@node11 ~]# multipath -ll
mpatha (36001405a9666f29ccff4826813817c21) dm-3 LIO-ORG ,vdb
size=5.0G features='0' hwhandler='0' wp=rw
|-+- policy='service-time 0' prio=1 status=active    #在线且正在使用的链路
| `- 2:0:0:0 sdb 8:16 active ready running
`-+- policy='service-time 0' prio=1 status=enabled    #在线备用链路
  `- 3:0:0:0 sda 8:0  active ready running

三、负责均衡配置

默认情况下,在默认配置中不匹配的型号,都使用的是主备模式,像一些国外比较知名的存储可以在defults配置中找到其默认是有策略的,所以可能查看到的是多主负载均衡模式。多路径负载均衡算法path_selector 有如下这些:

round-robin 0      #轮询              
queue-length 0     #最少连接                         
service-time 0     #根据未完成的IO数量选择下一组IO的路径

负载均衡配置既可以在全局中配置,也可以在单条链路中配置,这里以单条链路配置为例,如下:

multipaths {
       multipath {
               wwid                    36001405a9666f29ccff4826813817c21 #通过scsi_id获得
               alias                   data_disk    #磁盘别名
               path_grouping_policy    multibus
               path_selector           "round-robin 0"    #负载均衡模式
               failback                manual
               rr_weight               priorities
               no_path_retry           5
       }
}

重启后再查看链路情况如下:

[root@node11 ~]# multipath -ll
data_disk (36001405a9666f29ccff4826813817c21) dm-3 LIO-ORG ,vdb
size=5.0G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
  |- 4:0:0:0 sda 8:0  active ready running
  `- 5:0:0:0 sdb 8:16 active ready running




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

分类: Linux/unix/mac 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.