Linuxでマルチパス構成が正しく機能しない原因

  • URLをコピーしました!

Linuxサーバでストレージを冗長化するために マルチパス(Multipath)構成を組んだにもかかわらず、

  • パスが1本しか使われない
  • multipath -ll に何も表示されない
  • 障害時に自動で切り替わらない

といった問題に遭遇することは珍しくありません。

本記事では、 Linuxでマルチパス構成が正しく機能しない代表的な原因と、 初心者でも判断・解決できる具体的な対処方法を解説します。

目次

結論:マルチパスは「設定しただけ」では動かない

Linuxのマルチパス構成が機能しない原因の多くは、 OS・ストレージ・サービス設定のどれかが欠けていることです。

マルチパスが正しく動作するには、以下がすべて揃っている必要があります。

  • OSがマルチパスデバイスを認識している
  • multipathd サービスが起動している
  • ストレージ側が複数パスを提供している
  • ブラックリスト設定で除外されていない

マルチパス構成が機能しない主な原因一覧

  1. multipathd サービスが起動していない
  2. マルチパス対象デバイスがブラックリストされている
  3. ストレージ側で複数パスが提供されていない
  4. デバイスがOSに正しく認識されていない
  5. 設定反映後に再読み込みがされていない

原因①:multipathd サービスが起動していない

Linuxのマルチパスは、 multipathd(デーモン)が常駐して初めて機能します。

パッケージをインストールしただけでは、 サービスは動作しません。

確認方法

systemctl status multipathd

以下の状態であれば問題があります。

  • inactive
  • dead
  • not found

対処方法

systemctl start multipathd
systemctl enable multipathd

解決した状態

  • multipathd が active (running)
  • multipath -ll でデバイスが表示される

原因②:マルチパス対象デバイスがブラックリストされている

Linuxでは、 意図しないディスクをマルチパス対象にしないため、 デフォルトで多くのデバイスが除外されています。

この設定により、 正しいストレージなのにマルチパス化されない ケースがあります。

確認ポイント

  • /etc/multipath.conf の blacklist 設定
  • vendor / product 名が除外されていないか

対処方法(例)

blacklist {
    devnode "^sd[a]"
}

または、 whitelist(例外許可)を明示的に設定します。

解決した状態

  • multipath -ll に対象LUNが表示される
  • 複数の path が1つの map にまとまっている

原因③:ストレージ側で複数パスが提供されていない

Linux側の問題に見えて、 実はストレージ側設定が原因というケースも多くあります。

よくある例

  • 片側のHBAやiSCSI経路が未設定
  • ゾーニングが片系のみ
  • iSCSIログインが1セッションだけ

確認方法

lsblk
lsscsi

同じLUNが複数見えていなければ、 マルチパスは成立しません。

解決した状態

  • 同一LUNが複数デバイスとして認識される
  • multipath -ll で active path が複数表示される

原因④:デバイスがOSに正しく認識されていない

ストレージを接続しただけでは、 Linuxが即座に認識しないことがあります。

対処方法

  • SCSI再スキャン
  • multipath 再読み込み
echo "- - -" > /sys/class/scsi_host/hostX/scan
multipath -r

解決した状態

  • 新しいデバイスが /dev/mapper/ 配下に作成される

原因⑤:設定変更後に再読み込みされていない

multipath.conf を編集しても、 再読み込みしなければ反映されません

対処方法

systemctl reload multipathd
multipath -r

解決した状態

  • 設定変更が反映される
  • 不要な single path デバイスが消える

実務向けチェックリスト

  1. multipathd は起動しているか
  2. multipath -ll に何か表示されるか
  3. 同一LUNが複数パスで見えているか
  4. ブラックリストに引っかかっていないか
  5. 設定変更後に reload しているか

まとめ

Linuxのマルチパス構成が機能しない原因の多くは、 「設定したつもり」になっていることです。

マルチパスは、

  • ストレージが複数パスを提供
  • OSがそれを正しく認識
  • multipathd が制御

という流れが揃って初めて成立します。

本記事の確認項目を順にチェックすれば、 切り分けと復旧が比較的容易に可能です。

目次