2010年1月27日水曜日

device-mapper-multipathを使う

ファイバチャネルのシステムやiscsiなどを使って
複数のストレージ接続を一本の経路として使う場合に
multipathを使用する。

特にRHEL5.x(CentOS5.x)でファイバ環境を利用する場合には
利用することが多くなるとおもう。

4.xだとmultipathドライバが提供されていたが、
ドライバが見つからないのはこれがあるから?

インストール時から利用する場合は
mpathを付けることで自動で動作する。

起動後であれば

/etc/multipath.conf
のファイルの中の
#blacklist {
# devnode "*"
#}
この部分をコメントアウトして、
再起動を行う。

複数のファイバで単一のストレージを参照する場合に、
設計によっては片方がつながっていると片方からはブロックデバイスにアクセス出来ない
問題が発生する。、

この場合にmultipathを有効化していないと
ブロックデバイスが見つからないエラーが発生する上に
起動時やブロックデバイスのチェックをするときに
非常に長い時間のウェイトがかかる

kernel: end_request: I/O error, dev sdf, sector 0

こんな感じのデバイスIOエラーが発生する。

これはmultipathを適用したとしても
発生はするが、長い時間のウェイトは掛からない。

multipathの状態の確認は
# multipath -ll

を利用することで確認できる。
そうすると経路がtree式で表示され
activeか確認することができる

有効な状態でデータをやり取りしてファイバを抜いた場合の挙動は
ghost側であれば転送も止まらず無影響にて通信し続け
ready側であれば一時的に転送は止まるが
データの欠落は起きない。

0 件のコメント:

コメントを投稿