Dynamic Link Manager ユーザーズガイド(Linux®用)
HDLM管理対象デバイスを使ってmdデバイスを構築している環境から,SCSIデバイスを使ってmdデバイスを構築する環境に移行する手順を次に説明します。
SCSIデバイスを使用したmdデバイスの構築時,mdデバイスでMULTIPATH機能を使用しない場合は,「(1) MULTIPATH機能を使用しないmdデバイスへ移行する場合」の手順を実行してください。mdデバイスでMULTIPATH機能を使用したい場合は,「(2) MULTIPATH機能を使用するmdデバイスへ移行する場合」の手順を実行してください。
- この項の構成
- (1) MULTIPATH機能を使用しないmdデバイスへ移行する場合
- (2) MULTIPATH機能を使用するmdデバイスへ移行する場合
(1) MULTIPATH機能を使用しないmdデバイスへ移行する場合
ここでは,RAID機能を使用したmdデバイスを例に,HDLMデバイス上にあるmdデバイスの環境から,SCSIデバイス上にあるmdデバイスの環境へ移行する手順を説明します。
次の手順では,/dev/sddlmaa1および/dev/sddlmab1上の/dev/md0を,/dev/sdh1および/dev/sdi1上の/dev/md0に移行しています。「図3-23 HDLMデバイス上にあるmdデバイスをSCSIデバイス上に移行する場合のデバイス構成(mdデバイスのRAID機能を使用した環境)」に示す環境は,次の手順で構築してください。
図3-23 HDLMデバイス上にあるmdデバイスをSCSIデバイス上に移行する場合のデバイス構成(mdデバイスのRAID機能を使用した環境)
- ホストを停止して,マルチパス構成からシングルパス構成に変更します。
- ホストを起動します。
- 既存のmdデバイスを使用しているアプリケーションをすべて停止します。
- 必要に応じてmdデバイス上のアプリケーションのデータをバックアップします。
- mdデバイス上にファイルシステムをマウントしている場合は,アンマウントします。
- mdデバイスの状態を確認します。
次のコマンドを実行して,mdデバイスの構成状態を確認します。# cat /proc/mdstat Personalities : [raid1] md0 : active raid1 sddlmaa1[0] sddlmab1[1] 5238528 blocks [2/2] [UU] unused devices: <none>「md0 : active」と表示され,HDLMデバイスが表示されることを確認してください。- 次のコマンドを実行して,mdデバイスを非活性化します。
# mdadm -Ss /dev/md0- mdデバイスが非活性化されていることを確認します。
mdデバイスにRAID1(ミラーリング)が適用されている場合の実行例を次に示します。# cat /proc/mdstat Personalities : [raid1] unused devices: <none>「md0 : active」と表示されないことを確認してください。- HDLMデバイスとSCSIデバイスの対応関係を確認します。
HDLM構成定義ユティリティ(dlmcfgmgr)に-vパラメタを指定して実行してください。# dlmcfgmgr -v HDevName Management Device Host Channel Target Lun /dev/sddlmaa configured /dev/sdh 1 0 0 0 /dev/sddlmab configured /dev/sdi 1 0 0 1 KAPL10302-I /sbin/dlmcfgmgr completed normally.HDevName列はHDLMデバイス,Device列はSCSIデバイスになります。- コンフィグレーションファイルを編集します。
手順9で表示されたHDLMデバイスとSCSIデバイスの対応関係を基に,DEVICE行のHDLMデバイス名をSCSIデバイス名に変更してください。
- 修正前
DEVICE /dev/sddlmaa1 /dev/sddlmab1DEVICE行を編集する場合は,デバイス名だけを変更してください。パーティション番号は変更しないでください。
- 修正後
DEVICE /dev/sdh1 /dev/sdi1- SCSIデバイスのディスクパーティションタイプをfdに戻す必要がある場合,タイプをfdに変更します。
fdに変更すると,/etc/mdadm.confファイルがなくても,ホストが再起動したとき自動的にmdデバイスが活性化されます。
fdiskコマンドを実行して,ディスクパーティションタイプをfdに変更する例を次に示します。# fdisk /dev/sddlmaa コマンド (m でヘルプ): p Disk /dev/sddlmaa: 5368 MB, 5368709120 bytes 166 heads, 62 sectors/track, 1018 cylinders Units = シリンダ数 of 10292 * 512 = 5269504 bytes デバイス Boot Start End Blocks Id System /dev/sddlmaa1 1 1018 5238597 83 Linux コマンド (m でヘルプ): t Selected partition 1 16進数コード (L コマンドでコードリスト表示): fd 領域のシステムタイプを 1 から fd (Linux) に変更しました コマンド (m でヘルプ): p Disk /dev/sddlmaa: 5368 MB, 5368709120 bytes 166 heads, 62 sectors/track, 1018 cylinders Units = シリンダ数 of 10292 * 512 = 5269504 bytes デバイス Boot Start End Blocks Id System /dev/sddlmaa1 1 1018 5238597 fd Linux raid 自動検出 コマンド (m でヘルプ): w 領域テーブルは交換されました! ioctl() を呼び出して領域テーブルを再読込みします。 ディスクを同期させます。/dev/sddlmabも同様に実行してください。- 次のコマンドを実行して,mdデバイスを活性化します。
# mdadm -As /dev/md0 mdadm: /dev/md0 has been started with 2 drives.- mdデバイスが活性化されていることを確認します。
mdデバイスにRAID1(ミラーリング)が適用されている場合の実行例を次に示します。# cat /proc/mdstat Personalities : [raid1] md0 : active raid1 sdh1[0] sdi1[1] 5238528 blocks [2/2] [UU] unused devices: <none>「md0 : active」と表示され,SCSIデバイスが表示されていることを確認してください。- mdデバイス上のファイルシステムをマウントする必要がある場合は,ファイルシステムをマウントします。
(2) MULTIPATH機能を使用するmdデバイスへ移行する場合
HDLMデバイス上にあるmdデバイスの環境から,SCSIデバイス上にあるmdデバイスの環境へ移行する手順を説明します。ここでは,LINEAR機能を使用したHDLMデバイス上にあるmdデバイスを,MULTIPATH機能を使用したSCSIデバイス上にあるmdデバイスへ移行する場合を例に説明します。
次の手順では,/dev/sddlmaa1上の/dev/md0を,/dev/sdh1および/dev/sdo1上の/dev/md0に移行しています。「図3-24 HDLMデバイス上にあるmdデバイスをSCSIデバイス上に移行する場合のデバイス構成(mdデバイスのMULTIPATH機能を使用した環境)」に示す環境を作成するには,次の手順で行ってください。
図3-24 HDLMデバイス上にあるmdデバイスをSCSIデバイス上に移行する場合のデバイス構成(mdデバイスのMULTIPATH機能を使用した環境)
- mdデバイスを非活性化します。
「(1) MULTIPATH機能を使用しないmdデバイスへ移行する場合」の手順3から手順5を実行してください。- mdデバイスの状態を確認します。
次のコマンドを実行して,mdデバイスの構成状態を確認します。# cat /proc/mdstat Personalities : [linear] md0 : active linear sddlmaa1[0] 5238528 blocks 64k rounding unused devices: <none>「md0 : active」と表示され,HDLMデバイスが表示されることを確認してください。- 次のコマンドを実行して,mdデバイスを非活性化します。
# mdadm -Ss /dev/md0- mdデバイスが非活性化されていることを確認します。
mdデバイスにLINEAR機能が適用されている場合の実行例を次に示します。# cat /proc/mdstat Personalities : [linear] unused devices: <none>「md0 : active」と表示されないことを確認してください。- HDLMデバイスとSCSIデバイスの対応関係を確認します。
HDLM構成定義ユティリティ(dlmcfgmgr)に-vパラメタを指定して実行してください。# dlmcfgmgr -v HDevName Management Device Host Channel Target Lun /dev/sddlmaa configured /dev/sdh 1 0 0 0 /dev/sdo 2 0 0 1 KAPL10302-I /sbin/dlmcfgmgr completed normally.HDevName列はHDLMデバイス,Device列はSCSIデバイスになります。- mdデバイスを作成します。
手順5で表示されたHDLMデバイスとSCSIデバイスの対応関係を基に,mdデバイスを作成してください。
デバイス名を指定する場合は,必ずパーティション番号も指定してください。パーティション番号は,手順2で表示されたデバイスのパーティション番号を設定してください。
HDLMデバイスに対応するSCSIデバイスをすべて指定してください。# mdadm -C /dev/md0 -lmp -n2 /dev/sdh1 /dev/sdo1 mdadm: /dev/sdh1 appears to contain an ext2fs file system size=5238528K mtime=Wed Feb 6 20:02:45 2008 mdadm: /dev/sdh1 appears to be part of a raid array: level=-1 devices=1 ctime=Wed Feb 6 19:31:04 2008 mdadm: /dev/sdo1 appears to contain an ext2fs file system size=5238528K mtime=Wed Feb 6 20:02:45 2008 mdadm: /dev/sdo1 appears to be part of a raid array: level=-1 devices=1 ctime=Wed Feb 6 19:31:04 2008 Continue creating array? y mdadm: array /dev/md0 started.- コンフィグレーションファイルを作成します。
次のコマンドを実行して,既存のコンフィグレーションファイル(/etc/mdadm.conf)にmdデバイスの定義を追加してください。# mdadm --detail --scan | grep -w “/dev/md0” >> /etc/mdadm.confコンフィグレーションファイルの作成例を次に示します。下線部の行がこの手順で追加した行です。# cat /etc/mdadm.conf DEVICE /dev/sddlmaa1 ARRAY /dev/md0 level=linear num-devices=1 UUID=426a9f1c:9cfa6310:6aa9a80b:11ea2102 auto=yes ARRAY /dev/md0 level=multipath num-devices=2 UUID=8db667ff:e7472a25:3a84b801:025a6a57コンフィグレーションファイルの記述内容については,Linuxのマニュアルやmanコマンドを参照してください。- コンフィグレーションファイル(/etc/mdadm.conf)を作成し直した場合,コンフィグレーションファイル内の不要なARRAY行を削除します。
手順7で作成したARRAY行と同じmdデバイス名(md0)のARRAY行を削除してください。次の例では,下線部の行が削除対象になります。# cat /etc/mdadm.conf DEVICE /dev/sddlmaa1 ARRAY /dev/md0 level=linear num-devices=1 UUID=426a9f1c:9cfa6310:6aa9a80b:11ea2102 auto=yes ARRAY /dev/md0 level=multipath num-devices=2 UUID=8db667ff:e7472a25:3a84b801:025a6a57- /etc/mdadm.confファイルを編集して,コンフィグレーションファイルのARRAY行に「auto=yes」を追加します。
DEVICE /dev/sdo1 /dev/sdh1 ARRAY ARRAY /dev/md0 level=multipath num-devices=2 UUID=8db667ff:e7472a25:3a84b801:025a6a57 auto=yes- コンフィグレーションファイルのDEVICE行のHDLMデバイス名をSCSIデバイス名に変更します。
手順5で表示されたHDLMデバイスとSCSIデバイスの対応関係を基に,DEVICE行のHDLMデバイス名をSCSIデバイス名に変更してください。
- 修正前
DEVICE /dev/sddlmaa1HDLMデバイスに対応するSCSIデバイスをすべて指定してください。
- 修正後
DEVICE /dev/sdh1 /dev/sdo1
DEVICE行を編集する場合は,デバイス名だけを変更してください。パーティション番号は変更しないでください。- 次のコマンドを実行して,mdデバイスを非活性化します。
# mdadm -Ss /dev/md0- mdデバイスが非活性化されていることを確認します。
mdデバイスにMULTIPATH機能が適用されている場合の実行例を次に示します。# cat /proc/mdstat Personalities : [linear]※ [multipath] unused devices: <none>「md0 : active」と表示されないことを確認してください。
- 注※
- [linear]は再起動するまで表示されますが,動作に問題はありません。
- mdデバイスを活性化します。
「(1) MULTIPATH機能を使用しないmdデバイスへ移行する場合」の手順11から手順14を実行してください。
また,「(1) MULTIPATH機能を使用しないmdデバイスへ移行する場合」の手順13で[linear]は再起動するまで表示されますが,動作に問題はありません。
All Rights Reserved. Copyright© 2014, 2016, Hitachi, Ltd.