Fedora11でdevice mapper multipathを使ってみた (1)
確実に外部ストレージへの接続を行うため、外部ストレージを利用する際には複数のHBAにより、multipathを使いたいのだが、CentOSやFedoraにもクライアント側のmultipathの機能がある。 既にopenfiler を使って、iSCSI target が使えるようになっているので、Fedora11 からmultipathを使ってみた。
大まかな使い方はこちらと同様になる。
http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html/DM_Multipath/index.html
まず、iSCSIのストレージに複数のHBAがある状態にするため、openfilerにログインし、
# ifconfig eth0:1 xx.xx.xx.xx
などにより、二つ目のIPを付与する。実際には1つのNICしかないため、冗長化にはならないが、操作は同様となる。
この状態で、Fedora側から、
# iscsiadm -m discovery -t st -p xx.xx.xx.xx (2つ目のIP)
とすると、1つ目のIPと同じディスクが異なる名前で /proc/partitions に表示される。この状態でlvdisplay などを実施すると、 "duplicate ID"などのメッセージが表示され、片方のディスクだけが使われるようになる。
パスごとの冗長化を図るため、multipath の設定を行うのだが、事前に /etc/multipath.conf の中から、
blacklist { devnode "*" }
の3行をコメントアウトする必要がある。(全てのデバイスをmultipathの対象からはずす設定であるため)
この状態で、
# service multipathd start # multipath -v2
を実施することで、multipathが作成される。
multipath の状態を見るには、
# multipath -l
を実施する。実行結果は次のようになった。
# multipath -l mpathb (14f504e46494c450078316a7057632d4b6371622d7a4a6c46) dm-2 OPNFILER,VIRTUAL-DISK [size=1.8G][features=0][hwhandler=0][rw] \_ round-robin 0 [prio=-1][active] \_ 2:0:0:0 sdb 8:16 [active][undef] \_ round-robin 0 [prio=-1][enabled] \_ 3:0:0:0 sdc 8:32 [active][undef]
この状態で、 /dev/mapper/mpathb が出来ている。(このファイルは /dev/dm-2 と同じデバイスファイルとなっている。)