RedHat Enterprise Linux/Cent OS6.5環境で、SAN Boot multipath構成を作成した。
構築後、バックアップを取得し、別のLUNにリストアし、そのディスクからブートをさせた。
ディスク自身が持つ、WWIDが変更になったため、multipath構成が外れた状態で起動してくる、というのは想定通りだったのだが、設定を修正し、initramfsを再作成して、再起動しても、multipath構成にならず、悩んだ。
原因は「How do I rebuild the initramfs with multipath.」であった。
普通にdracutでinitramfsを再作成すると、multipath関連モジュールが組み込まれていないものができあがっていた。
これをmultipathモジュールを組み込むことを強制させるようにして、解決した。
手順
1. とりあえず起動
2. 現在のディスクのwwidを確認
現在のディスクの「/dev/sd?」を確認し、そのディスク名に対して「scsi_id –whitelist /dev/sd?」を実行して確認する。
# df -h /dev/sdb3 ~ / tmpfs ~ /dev/shm /dev/sdb1 ~/boot # scsi_id --whitelist /dev/sdb <wwid> #
3. /etc/multipath.conf内のwwid変更
multipath.conf内に「wwid 値」という記述があるので、現在の値に変更する。
4. /etc/multipath/bindings内のwwid変更
bindings内に「mpatha 値」といった記述があるので、現在の値に変更する。
(注: mpathaをsdbとかに変更しないこと)
5. 古いinitramfsをバックアップ
6. intiramfsを作成
# dracut -v -f -a multipath --include /etc/multipath /etc/multipath #
もしくは、/etc/dracut.confに以下の記述を行ってから、dracutを実行する。
# Dracut modules to add to the default add_dracutmodules+="multipath"
7. 再起動