Hitachi Dynamic Link Manager Software ユーザーズガイド(HP-UX用)
ここでは,IVMを導入したホストへHDLMをインストールする手順について説明します。
IVMをインストールしたホストを「VMホスト」と呼びます。VMホスト上で動作するOSを「VMホストOS」と呼びます。また,VMホスト上で動作する仮想環境を「仮想マシン(ゲスト)」と呼びます。仮想マシン上で動作するOSを「ゲストOS」と呼びます。
- <この項の構成>
- (1) IVM環境にHDLMを適用するときの注意事項
- (2) 仮想マシンに論理ボリュームを割り当てているシステム構成へHDLMをインストールする場合
- (3) 仮想マシンにSCSIデバイスを割り当てているシステム構成へHDLMをインストールする場合
(1) IVM環境にHDLMを適用するときの注意事項
IVM2.0または3.0を使用して,仮想環境を構築したホスト(VMホスト)にHDLMをインストールすると,VMホストの再起動時にゲストOSが起動しなくなります。
このため,HDLMをインストールする前に,/sbin/init.d/hpvmスクリプトに記述されたrmコマンドの行を必ずコメント行に変更してください。/sbin/init.d/hpvmスクリプトの編集例を次に示します。
なお,IVM3.5を使用したホストでこの現象は発生しません。したがって,IVM3.5を使用している場合は,/sbin/init.d/hpvmスクリプトを編集しないでください。
- IVM 2.0を適用しているときのスクリプト編集例
- 「rm」で始まる行の先頭(下線部分)に「#」を挿入してコメント行にします。
# # Unload monitor # ${VMMLOAD} -u # Set kernel modules as unused incase this is a transition # to swap in new modules # /usr/sbin/kcmodule -K ${VMMDRIVER}=uninstall ${VMNETDRIVER}=uninstall # rm -f ${MODDIR}/${VMMDRIVER} ${MODDIR}/${VMNETDRIVER} # rm -f ${VMMDEV} ${VMMINSTALLDEV} ${VMNETDEV} # rm -rf $(find /stand -name 'hpvm*') exit ${OKAY}
- IVM 3.0を適用しているときのスクリプト編集例
- 「rm」で始まる行の先頭(下線部分)に「#」を挿入してコメント行にします。
- ただし,「rm」で始まる行だけをコメント行に変更すると,スクリプトの実行時にエラーとなります。次に示す編集例のように,必ず「if」から「fi」の範囲の行もコメント行に変更してください。
# Set kernel modules as unused incase this is a transition # to swap in new modules # for mod in ${VMMDRIVER} ${VMNETDRIVER} do if LC_ALL=C LANG=C kcmodule -P state ${mod} 2>&1 >/dev/null | grep -q'no module' then # probably already done -- suppress errors kcmodule -K ${mod}=uninstall >/dev/null 2>&1 else kcmodule -K ${mod}=uninstall || rval=${ERROR} fi done # if [ "$HPVMDEVELOP" != "$ZERO" ] # then # rm -f ${MODDIR}/${VMMDRIVER} ${MODDIR}/${VMNETDRIVER} # rm -f ${VMMDEV} ${VMMINSTALLDEV} ${VMNETDEV} # rm -rf $(find /stand -name 'hpvm*') # fi exit ${rval}HDLMをアンインストールするときには/sbin/init.d/hpvmスクリプトの変更を取り消す必要があるため,編集前のスクリプトをバックアップしておいてください。
/sbin/init.d/hpvmスクリプトやIVMについての詳細は,HPサポートサービスを契約した会社にお問い合わせください。
(2) 仮想マシンに論理ボリュームを割り当てているシステム構成へHDLMをインストールする場合
VMホストの論理ボリュームを仮想マシンに割り当てているとき,そのVMホストへHDLMをインストールする方法を説明します。HDLMをインストールしたあと,論理ボリュームと対応するSCSIデバイスをHDLMデバイスのデバイスファイルに移行します。
ここでは,仮想マシン「vmhost1」が構築されている場合を例に,HDLMデバイスのデバイスファイル移行手順を説明します。なお,あらかじめ,「(1) IVM環境にHDLMを適用するときの注意事項」に示した/sbin/init.d/hpvmスクリプトの編集を実行しておいてください。
- IVMのhpvmstopコマンドを実行して,仮想マシンを停止します。
仮想マシン「vmhost1」を停止させる,hpvmstopコマンドの実行例を次に示します。
# hpvmstop -P vmhost1 hpvmstop: Stop the virtual machine 'vmhost1'? [n]: y- IVMのhpvmmodifyコマンドを実行して,VMホストを起動したとき仮想マシンが自動的に起動されないように設定します。
仮想マシン「vmhost1」の起動方法を「手動」に変更する,hpvmmodifyコマンドの実行例を次に示します。
# hpvmmodify -P vmhost1 -B manual- HDLMをインストールし,パスの構成定義を有効にします。
「3.5.3 HDLMの新規インストール」を参照してHDLMをインストールし,パスの構成定義を有効にしてください。
- IVMのhpvmstatusコマンドを実行して,仮想マシンに割り当てている論理ボリューム名を確認します。
hpvmstatusコマンドの実行結果から,[Storage Interface Details]の内容を確認します。
仮想マシン「vmhost1」に割り当てている論理ボリューム名を確認する,hpvmstatusコマンドの実行例を次に示します。
ここで複数の論理ボリュームが確認できた場合,以降の手順5から手順9までをそれぞれの論理ボリュームに対して実行してください。
# hpvmstatus -P vmhost1 [Storage Interface Details] Guest Physical Device Adaptor Bus Dev Ftn Tgt Lun Storage Device ======= ========== === === === === === ========= ========================= disk scsi 0 0 0 0 0 lv /dev/vg01/rlvol1
- OSのvgdisplayコマンドを実行して,ボリュームグループに登録されているSCSIデバイスを確認します。
手順4に示した実行例では,仮想マシン「vmhost1」に割り当てている論理ボリュームが属するボリュームグループは「vg01」となっています。このボリュームグループ「vg01」に登録されているSCSIデバイスを確認する,vgdisplayコマンドの実行例を次に示します。
# vgdisplay -v vg01 --- Physical volumes --- PV Name /dev/dsk/c12t0d0 PV Name /dev/dsk/c20t0d0 Alternate Link PV Status available Total PE 7678 Free PE 178 Autoswitch On- HDLMコマンドのview -drvオペレーションを実行し,SCSIデバイスに対応しているHDLMデバイスを確認します。
手順5で確認したSCSIデバイスと対応しているHDLMデバイスを確認したとき,コマンドの実行結果の「PV Name」に「Alternate Link」が含まれていることがあります。その場合は,「PV Name」に示されたSCSIデバイスのうちどれか一つを選んで,HDLMデバイスを確認してください。
ここでは,手順5に示した実行例からSCSIデバイス「c12t0d0」を選び,それと対応しているHDLMデバイスを確認します。HDLMコマンドの実行例を次に示します。
# dlnkmgr view -drv | grep c12t0d0 000074 ch12t0d0 c12t0d0 SANRISE_AMS.77010152.0217 0/2/1/0.3.2.0.0.0.0- OSのvgextendコマンドを実行して,HDLMデバイスをボリュームグループに登録します。
ボリュームグループ「vg01」にHDLMデバイス「ch12t0d0」を追加する,vgextendコマンドの実行例を次に示します。
# vgextend vg01 /dev/dsk/ch12t0d0 Current path "/dev/dsk/c20t0d0" is an alternate link, skip. Volume group "/dev/vg01" has been successfully extended. Volume Group configuration for /dev/vg01 has been saved in /etc/lvmconf/vg01.conf- OSのvgreduceコマンドを実行し,SCSIデバイスをボリュームグループから削除します。
手順5で確認できたSCSIデバイスはすべて削除してください。
ボリュームグループ「vg01」から,手順5で確認したSCSIデバイス「c12t0d0」と「c20t0d0」を削除する,vgreduceコマンドの実行例を次に示します。
# vgreduce vg01 /dev/dsk/c12t0d0 /dev/dsk/c20t0d0 Device file path "/dev/dsk/c12t0d0" is an primary link. Removing primary link and switching to an alternate link. Device file path "/dev/dsk/c20t0d0" is an alternate path. Volume group "/dev/vg01" has been successfully reduced. Volume Group configuration for /dev/vg01 has been saved in /etc/lvmconf/vg01.conf- OSのvgdisplayコマンドを実行し,ボリュームグループにHDLMデバイスだけが登録されていることを確認します。
確認した結果,HDLMデバイス以外のSCSIデバイスが登録されていた場合,手順8を繰り返してHDLMデバイスだけが登録されている状態にしてください。
ボリュームグループ「vg01」に登録されているデバイスを確認する,vgdisplayコマンドの実行例を次に示します。
# vgdisplay -v vg01 --- Physical volumes --- PV Name /dev/dsk/ch12t0d0 PV Status available Total PE 7678 Free PE 178 Autoswitch On- IVMのhpvmmodifyコマンドを実行し,VMホストを起動したとき自動的に仮想マシンが起動されるように設定します。
VMホストを起動したとき,仮想マシンを自動的に起動させたくない場合,この手順は不要です。
仮想マシン「vmhost1」の起動方法を「自動」に設定する,hpvmmodifyコマンドの実行例を次に示します。
# hpvmmodify -P vmhost1 -B auto- IVMのhpvmstartコマンドを実行し,仮想マシンを起動します。
仮想マシン「vmhost1」を起動させる,hpvmstartコマンドの実行例を次に示します。
# hpvmstart -P vmhost1
(3) 仮想マシンにSCSIデバイスを割り当てているシステム構成へHDLMをインストールする場合
VMホストのSCSIデバイスを仮想マシンに割り当てているとき,そのVMホストへHDLMをインストールする方法を説明します。HDLMをインストールしたあと,SCSIデバイスをHDLMデバイスのデバイスファイルに移行します。
ここでは,仮想マシン「vmhost2」が構築されている場合を例に,HDLMデバイスのデバイスファイル移行手順を説明します。なお,あらかじめ,「(1) IVM環境にHDLMを適用するときの注意事項」に示した/sbin/init.d/hpvmスクリプトの編集を実行しておいてください。
- IVMのhpvmstopコマンドを実行して,仮想マシンを停止します。
仮想マシン「vmhost2」を停止させる,hpvmstopコマンドの実行例を次に示します。
# hpvmstop -P vmhost2 hpvmstop: Stop the virtual machine 'vmhost2'? [n]: y- IVMのhpvmmodifyコマンドを実行して,VMホストを起動したとき仮想マシンが自動的に起動されないように設定します。
仮想マシン「vmhost2」の起動方法を「手動」に変更する,hpvmmodifyコマンドの実行例を次に示します。
# hpvmmodify -P vmhost2 -B manual- HDLMをインストールし,パスの構成定義を有効にします。
「3.5.3 HDLMの新規インストール」を参照してHDLMをインストールし,パスの構成定義を有効にしてください。
- IVMのhpvmstatusコマンドを実行して,仮想マシンに割り当てているSCSIデバイス名やその他の情報を確認します。
hpvmstatusコマンドの実行結果の[Storage Interface Details]から,SCSIデバイス名を確認してください。またあわせて次に示す情報も確認してください。
仮想マシン「vmhost2」に割り当てているSCSIデバイス名を確認する,hpvmstatusコマンドの実行例を次に示します。
- bus番号
[Storage Interface Details]の「Bus」に表示された値
- device番号
[Storage Interface Details]の「Dev」に表示された値
- target番号
[Storage Interface Details]の「Tgt」に表示された値
# hpvmstatus -P vmhost2 [Storage Interface Details] Guest Physical Device Adaptor Bus Dev Ftn Tgt Lun Storage Device ======= ========== === === === === === ========= ========================= disk scsi 0 0 0 0 0 disk /dev/rdsk/c28t0d0 disk scsi 0 0 0 1 0 disk /dev/rdsk/c29t0d0 disk scsi 0 0 0 2 0 disk /dev/rdsk/c29t0d1 disk scsi 0 0 0 3 0 disk /dev/rdsk/c29t0d2- HDLMコマンドのview -drvオペレーションを実行し,SCSIデバイスに対応しているHDLMデバイスを確認します。
手順4で確認できたすべてのSCSIデバイスに対して,対応するHDLMデバイスを確認してください。
ここでは,手順4で確認できたSCSIデバイス「c28t0d0」,「c29t0d0」,「c29t0d1」,および「c29t0d2」と対応しているHDLMデバイスを確認します。HDLMコマンドの実行例を次に示します。
# dlnkmgr view -drv | grep c28t0d0 000074 ch28t0d0 c28t0d0 SANRISE_AMS.77010152.0216 0/3/2/0.4.2.0.0.0.0 # dlnkmgr view -drv | grep c29t0d0 000075 ch29t0d0 c29t0d0 SANRISE_AMS.77010152.0204 0/3/2/0.4.3.0.0.0.0 # dlnkmgr view -drv | grep c29t0d1 000076 ch29t0d1 c29t0d1 SANRISE_AMS.77010152.0205 0/3/2/0.4.3.0.0.0.1 # dlnkmgr view -drv | grep c29t0d2 000077 ch29t0d2 c29t0d2 SANRISE_AMS.77010152.0206 0/3/2/0.4.3.0.0.0.2- IVMのhpvmmodifyコマンドを実行し,現在登録されているSCSIデバイスをHDLMデバイスに移行します。
hpvmmodifyコマンドの-mオプションには,手順4で確認したSCSIデバイスそれぞれのbus番号,device番号,およびtarget番号を指定してください。これらの指定を誤ると,仮想マシン内に記録されているハードウェアパス情報との差異が発生し,仮想マシンが起動しなくなるおそれがあります。
仮想マシン「vmhost2」に登録されているSCSIデバイスを,それぞれHDLMデバイス「ch28t0d0」「ch29t0d0」「ch29t0d1」「ch29t0d2」に移行する,hpvmmodifyコマンドの実行例を次に示します。
# hpvmmodify -P vmhost2 -m disk:scsi:0,0,0:disk:/dev/rdsk/ch28t0d0 # hpvmmodify -P vmhost2 -m disk:scsi:0,0,1:disk:/dev/rdsk/ch29t0d0 # hpvmmodify -P vmhost2 -m disk:scsi:0,0,2:disk:/dev/rdsk/ch29t0d1 # hpvmmodify -P vmhost2 -m disk:scsi:0,0,3:disk:/dev/rdsk/ch29t0d2- IVMのhpvmstatusコマンドを実行し,HDLMデバイスが仮想マシンに登録されていることを確認します。
仮想マシン「vmhost2」に登録されているデバイスを確認する,hpvmstatusコマンドの実行例を次に示します。
# hpvmstatus -P vmhost2 [Storage Interface Details] Guest Physical Device Adaptor Bus Dev Ftn Tgt Lun Storage Device ======= ========== === === === === === ========= ========================= disk scsi 0 0 0 0 0 disk /dev/rdsk/ch28t0d0 disk scsi 0 0 0 1 0 disk /dev/rdsk/ch29t0d0 disk scsi 0 0 0 2 0 disk /dev/rdsk/ch29t0d1 disk scsi 0 0 0 3 0 disk /dev/rdsk/ch29t0d2- IVMのhpvmmodifyコマンドを実行し,VMホストを起動したとき自動的に仮想マシンが起動されるように設定します。
VMホストを起動したとき,仮想マシンを自動的に起動させたくない場合,この手順は不要です。
仮想マシン「vmhost2」の起動方法を「自動」に設定する,hpvmmodifyコマンドの実行例を次に示します。
# hpvmmodify -P vmhost2 -B auto- IVMのhpvmstartコマンドを実行し,仮想マシンを起動します。
仮想マシン「vmhost2」を起動させる,hpvmstartコマンドの実行例を次に示します。
# hpvmstart -P vmhost2
All Rights Reserved. Copyright (C) 2008, Hitachi, Ltd.