目的:使用multipath设定光纤磁盘多路径
环境:Redhat6,EMC vplex+VNC 5400
原因:默认情况下所以的设备都在multipath的黑名单中,所以即使启动了multipathd服务并加在了内核模块,multipath也不会对 链路进行聚合,找到下面的3行并注释掉(在行首加上#号)
1. 修改配置文件 nano /etc/multipath.conf
2. 找到下列行 注釋 # wwid "*"
#devnode_blacklist {
# devnode "*"
#}
3. 重啟 服務
service multipathd restart
4. 查詢路徑有無新增
multipath -ll
5.查询结果如下
mpathb (36000144000000010b003031c8223469f) dm-5 EMC,Invista
size=500G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
|- 0:0:0:1 sdb 8:16 active ready running
|- 1:0:0:1 sdf 8:80 active ready running
|- 0:0:1:1 sdd 8:48 active ready running
`- 1:0:1:1 sdh 8:112 active ready running
mpatha (36000144000000010b003031c82234698) dm-0 EMC,Invista
size=60G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
|- 0:0:0:0 sda 8:0 active ready running
|- 1:0:0:0 sde 8:64 active ready running
|- 0:0:1:0 sdc 8:32 active ready running
`- 1:0:1:0 sdg 8:96 active ready running
--------------------------------
b 默认情况下multipath生成dm设备之后,会同时在/dev/mapper/下生成以磁盘wwid为名的符号链接指向对应的dm设备。如果想生成mpath设备,则需要打开user_friendly_names选项,将配置文件中下面3行的注释取消(去掉行首的#号)
defaults {
user_friendly_names yes
}
(3)重启multipathd服务(修改multipath.conf文件之后都应该重启multipath服务)
(4)扫描磁盘
#multipath -v2
使用上面命令之后,系统中会出现链路聚合之后的dm设备,同时也会在/dev/mapper/、/dev/mpath/目录下生成相应的设备。
查看multipath拓扑结构
#multipath -ll
另外一个重要的文件是/var/lib/multipath/bindings,这个文件中是磁盘的别名和wwid的对应关系,典型的例子是:
mpath0 3600508b4000c3af700008000002d0000
(5)需要注意的问题,multipath也会为本地的磁盘生成相应的dm设备,所以需要在multipath.conf中将本地磁盘加入到黑名单,配置的方法可以参考下面的示例
devnode_blacklist {
wwid 36005076b08164f4011ae88b23efb95fe
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^hd[a-z]"
}
如上例所示,可以通过wwid或者设备名将本地磁盘加入到黑名单中。