安裝與配置DM-multipath
安裝運行DM軟件
# yum install device-mapper-multipath
# /etc/init.d/multipathdrestart
ok
Stopping multipathddaemon: [ OK ]
Starting multipathddaemon: [ OK ]
Multipathd服務啓動後,會通過SCSI ID自動尋找同一設備的多條路徑,並安裝缺省設置把它們聚合起來使用。
# multipath -ll
mpathb (1IET 00010001) dm-3 lb,lb_iscsi #'1IET 00010001'表示遠程設備信息(centos6.5的DM multipath 0.4.9用它作爲SCSI ID) dm-3 lb 表示廠商 lb_iscsi產品信息 這種情況就可以實現單點故障切換
size=5.0G features='0'hwhandler='0' wp=rw
|-+- policy='round-robin 0'prio=1 status=active #status=active 默認使用的鏈路
| `- 3:0:0:1 sdb 8:16 activeready running
`-+- policy='round-robin 0'prio=1 status=enabled #status=enabled有效鏈路,但是不是活動鏈路,備用鏈路
`- 4:0:0:1 sdd 8:48 active ready running
配置multipath
2.1修改文件/etc/multipath.conf
默認情況下/etc目錄下沒有配置文件multipath.conf的。需要從/usr/share/doc/目錄下拷貝過來使用。
#cp/usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf /etc/
可以用man multipath.conf命令或者查看文件/usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf.annotated瞭解配置選項的解釋。
在此,通過在文件中加入下列配置行,我們爲SCSI ID爲"1IET 00010001"的設備設置了round-robin負載均衡模式(缺省是active-standby模式)
multipaths {
multipath {
wwid "1IET 00010001"
alias yellow
path_grouping_policy multibus
path_selector "round-robin 0"
failback manual
rr_weight priorities
no_path_retry 5
}
2.2重啓multipathd服務,讓修改生效
# /etc/init.d/multipathdrestart
# /etc/init.d/iscsirestart #實戰發現必須做這一步,否則有問題,原因待查
驗證multpath配置
# multipath -ll
yellow (1IET 00010001) dm-2 lb,lb_iscsi
size=10G features='1queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0'prio=1 status=active
|- 6:0:0:1 sdc 8:32 active ready running #在此可以看到設備都是active狀態
`- 5:0:0:1 sdb 8:16 active ready running #在此可以看到設備都是active狀態
模擬網卡故障,驗證multipath的failover功能
# ifdown eth2 #執行後需要等幾秒讓DM確認該IP路徑down掉
Device state: 3(disconnected)
# multipath -ll
Mar 23 17:12:21 |/etc/multipath.conf line 67, invalid keyword: path_checker
yellow (1IET 00010001) dm-2 lb,lb_iscsi
size=10G features='1queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1status=active
|- 7:0:0:1 sdd 8:48 active faulty running
`- 8:0:0:1 sdc 8:32 active ready running
# ifup eth2
Active connection state:activated
Active connection path:/org/freedesktop/NetworkManager/ActiveConnection/3
# multipath -ll
Mar 23 17:15:43 |/etc/multipath.conf line 67, invalid keyword: path_checker
yellow (1IET 00010001) dm-2 lb,lb_iscsi
size=10G features='1queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0'prio=1 status=active
|- 7:0:0:1 sdd 8:48 failed ready running
`- 8:0:0:1 sdc 8:32 active ready running
# sleep 60 #等待60秒
# multipath –ll #此時路徑恢復
Mar 23 17:17:05 |/etc/multipath.conf line 67, invalid keyword: path_checker
yellow (1IET 00010001) dm-2 lb,lb_iscsi
size=10G features='1 queue_if_no_path'hwhandler='0' wp=rw
`-+- policy='round-robin 0'prio=1 status=active
|- 7:0:0:1 sdd 8:48 active ready running
`- 8:0:0:1 sdc 8:32 active readyrunning