1、啓用Multipath:
(1)啓動multipathd服務
#service multipathd start 或者 #/etc/init.d/multipathd start
(2)修改multipath配置文件/etc/multipath.conf:
a 默認情況下所以的設備都在multipath的黑名單中,所以即使啓動了multipathd服務並加在了內核模塊,multipath也不會對鏈路進行聚合,找到下面的3行並註釋掉(在行首加上#號)
#devnode_blacklist {
# devnode "*"
#}
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或者設備名將本地磁盤加入到黑名單中。
2、固定multipath設備的命名:
通過wwid和設備別名一一對應的方式固定multipath設備的名稱,這些和別名對應的設備會被創建到/dev/mapper/目錄下,使用時直接使用這個目錄的的設備。
(1)通過/var/lib/multipath/bindings可以獲取所有磁盤的wwid,確定每個磁盤的別名之後,在/etc/multipath.conf中的multipaths段中加入相應的配置,如將wwid爲3600508b4000c3b910000c00000330000的磁盤命名爲etl01,wwid爲3600508b4000c3b910000c00000390000的磁盤命名爲etl02,配置文件如下所示
multipaths {
multipath {
wwid 3600508b4000c3b910000c00000330000
alias etl01
}
multipath {
wwid 3600508b4000c3b910000c00000390000
alias etl02
}
}
(2)配置完成之後,重啓multipathd服務,使用下面的命令清空已有的multipath記錄
#multipath -F
然後使用multipath -v2重新掃描設備,這時會在/dev/mapper/目錄下生成和別名對應的設備文件。
#ls /dev/mapper/
control etl01 eth02
(3)如果多臺服務器的存儲鏈路完全相同,並希望各服務器上同一磁盤的設備名相同,可以在一臺服務器上配置好別名綁定之後,將multipaths { }中間的配置複製到其他服務器,這樣各臺服務器/dev/mapper/下面的設備將會保持一致。