system management
1752618 メンバー
4318 オンライン
108788 解決策
新規ポスト

DISK搭載位置変更のためのミラー再設定について

 
Hi_Ya
時折のアドバイザー

DISK搭載位置変更のためのミラー再設定について

お世話になります。

rp3410に72GBを2本だけ搭載して、ミラー設定を行っているのですが、DAT72を増設しようとしたところ、「DISKとDATが載るSCSIチャネルを分けるために、DISKの搭載位置を変更して下さい。」ということになりました。

そこで、一旦ミラー設定を解除し、DISKの搭載位置変更、DAT接続をしたあとで、改めてミラー設定を行いたいのですが、以下の手順で過不足がないかアドバイスいただけませんでしょうか?

なお、OSのバージョンは次の通りです。

# uname -r

B.11.11

1 - シングルユーザモードで起動

2 - ミラー解除(必要数を繰り返し)

  lvreduce -m 0 /dev/vg00/

3 - VGからDISK2を削除

  vgreduce /dev/vg00 /dev/dsk/c3t2d0

4 - LVM制御からDISK2を削除

  pvremove /dev/rdsk/c3t2d0

5 - シャットダウン、DISK2搭載替え、DAT接続

6 - シングルユーザモードで起動

7 - LVM制御にDISK2を追加

  pvcreate -B /dev/rdsk/cXtXdX

8 - VGにDISK2を追加

  vgextend /dev/vg00 /dev/dsk/cXtXdX

9 - DISK2にブートプログラムをインストール

  mkboot /dev/rdsk/cXtXdX

  mkboot -a "hpux△(X/X.X.X;0)/stand/vmunix" /dev/rdsk/cXtXdX

  lifcp /dev/rdsk/cXtXdX:AUTO -

10 - ミラー設定(必要数を繰り返し)

  lvextend -m 1 /dev/vg00/ /dev/dsk/cXtXdX

11 - ミラーの両面から起動できることを、それぞれ確認

 (オルタネート)

  shutdown -ry 0

   PDCメニューから "BO alt"

   問い合わせには「n」

 (プライマリ)

  shutdown -ry 0

以上です。

また、質問するにあたり、不足している情報などありましたら、ご教示願います。その際は、どのようなコマンドで取得すればよいかについても、あわせてご教示いただけると助かります。

14件の返信14
Ku_O
レギュラーアドバイザー

DISK搭載位置変更のためのミラー再設定について

ディスクドライブの位置を変えるだけならオンラインでも出来そうですが、その手順のように行っても OK だと思います。いくつかコメントだけ。

もしかしたら手順 7. で -f オプションが要ります。エラーが出たら試してみてください。

手順 9. 以下のような手順でやってます。少なくとも lvlnboot -R はやっておいた方がいいです。

#mkboot -l

#mkboot -b /usr/sbin/diag/lif/updatediaglif2 -p ISL -p AUTO -p HPUX -p LABEL -p PAD

#lifls -C <- 確認

#lvlnboot -R

#lvlnboot -v <- 確認

手順 11. で BOot ALT させたかったら、PDC の main menu にある PAth コマンドで alternate path を新しい path に変更しておかないといけません。path は main menu で SEArch を実行すると表示されるはず。

もし alternate path から起動できずにやりなおす場合、普通に起動すると LVM の Quorum check でひっかかるかもしれませんので、BOot PRI のあと問い合わせに y で答えて、ISL から hpux -lq で立ち上げた方がいいでしょう。
ゆきお
アドバイザー

DISK搭載位置変更のためのミラー再設定について

特にシングルでミラー外しを行う必要はありません。

むしろシングルで作業を行って、もしもI/Oロックが発生した場合、LVMコマンドが帰ってこなくなって、にっちもさっちもいかなくなります。

マルチで行っていれば、万が一LVMコマンドが帰ってこなくなっても、他からtelnetできますから、dmesgなどで状況確認ができます。

どうしてもシングルで行いたい場合は、最初にtsmコマンドを実行するのが良いと思います。

まず何より最初に、現在のLVM状況のログを取得してください。

# lvlnboot -v

# strings /etc/lvmtab

# vgdisplay -v /dev/vg00

# lvdisplay -v /dev/vg00/lvol*

# pvdisplay -v /dev/rdsk/c3t0d0

# pvdisplay -v /dev/rdsk/c3t2d0

非常に良くない行があります。

2.のミラー解除です。

# lvreduce -m 0 /dev/vg00/lvol1

とコマンドを打ってしまうと、hpuxはどっちのPV上のLEをフリーにするのか分からず、/etc/lvmtabの上側に記載されているPVのLEをフリーにします(逆かも)。

続きのコマンドを見ると、c3t2d0をミラーから外したいようですが、lvreduceでPV指定が無いので、もしかするとc3t0d0のLEをフリーにするかもしれません。

よって、この場合の理想的なコマンドは

# lvreduce -m 0 /dev/vg00/lvol1 /dev/dsk/c3t2d0

の様に、きちんとPV名を指定してください。

次に4.のpvremoveは必要ありません。

3.のvgreduceの際に、PV上に存在するLVMヘッダをクリアしてくれます。

pvremoveは何らかの理由によりPV上に存在するLVMヘッダをクリアーするコマンドですので、この手順であれば不要です。

5.でshutdownする前に、必ず

# lvlnboot -v

で、boot/swap/dump/rootのlvol指定が、ミラー解除前と同一であることを確認してください。

最近はこの問題はありませんが、用心のためです。

そして必ず

# lvlnboot -R

を実行してください。

6.のシングル起動は、冒頭で記載したとおりI/Oロックが発生したときが恐いので、マルチで行うか、シングルでtsm起動して行う方がベターです。

あとは、Kuniさんが指摘されている通り、lvlnbootコマンドは必須です。

manでLVMコマンドを見ると、最近のバージョンはLVMステータスが変化するコマンドを実行するたびにlvlnboot -Rが内部で実行されているかのような表記があります。

これを実行することで何か良くないことが起きるコマンドではありませんので、私は必ずlvlnboot -vでステータス確認後、lvlnboot -Rを行っています。

万が一、boot/swap/dump/rootのlvol名がおかしいなどのステータス異常があれば、-b/-r/-s/-dオプションで適宜修正します。

しないと地獄見ますヨ。
hazelwood
信頼あるコントリビューター

DISK搭載位置変更のためのミラー再設定について

> 手順 11. で BOot ALT させたかったら、PDC の main

> menu にある PAth コマンドで alternate path を新し

> い path に変更しておかないといけません。

primary pathとalternate pathは、HP-UX上からも設定できます。

setboot -p H/W path でprimary path、

setboot -a H/W path でalternate path

が設定できます。

> 万が一、boot/swap/dump/rootのlvol名がおかしいな

> どのステータス異常があれば、-b/-r/-s/-dオプショ

> ンで適宜修正します。

>   しないと地獄見ますヨ。

何がトリガーかいまだに不明ですが、はまったことがあります。bootか、rootの情報が消えていました。

仕方が無いので、Install CDからRecovery Shellを起動して、修復しました。

Hi_Ya
時折のアドバイザー

DISK搭載位置変更のためのミラー再設定について

返信ありがとうございました。

PDCのpathについて見落としていました。

このあたりを、もう少し教えていただきたいのですが、alternate pathの変更は一時的なもの、という認識で合っていますでしょうか?

実機にて確認したところ、次のようになっており、alternate pathにはDVD-ROMドライブが設定されていました。

# ioscan -funC disk

Class I H/W Path Driver S/W State H/W Type Description

=========================================================================

disk 0 0/0/2/0.0.0.0 sdisk CLAIMED DEVICE TEAC DV-28E-N

/dev/dsk/c0t0d0 /dev/rdsk/c0t0d0

disk 1 0/1/1/0.0.0 sdisk CLAIMED DEVICE HP 73.4GMAU3073NC

/dev/dsk/c2t0d0 /dev/rdsk/c2t0d0

disk 2 0/1/1/1.2.0 sdisk CLAIMED DEVICE HP 73.4GST373453LC

/dev/dsk/c3t2d0 /dev/rdsk/c3t2d0

# lvlnboot -v

Boot Definitions for Volume Group /dev/vg00:

Physical Volumes belonging in Root Volume Group:

/dev/dsk/c2t0d0 (0/1/1/0.0.0) -- Boot Disk

/dev/dsk/c3t2d0 (0/1/1/1.2.0) -- Boot Disk

Boot: lvol1 on: /dev/dsk/c2t0d0

/dev/dsk/c3t2d0

Root: lvol3 on: /dev/dsk/c2t0d0

/dev/dsk/c3t2d0

Swap: lvol2 on: /dev/dsk/c2t0d0

/dev/dsk/c3t2d0

Dump: lvol2 on: /dev/dsk/c2t0d0, 0

# setboot

Primary bootpath : 0/1/1/0.0.0

Alternate bootpath : 0/0/2/0.3.0

Autoboot is OFF (disabled)

Autosearch is ON (enabled)

今回、ミラーのalternate側からの起動確認を、PDCからBOot ALTとする手順にしているため、一時的にAlternate bootpathを変更し、起動確認後は再びDVD-ROMに戻しておく、と理解しました。それとも、ミラー設定してる場合、Alternate bootpathにはalternate側のDISKを設定するのが正解なのでしょうか?

Hi_Ya
時折のアドバイザー

DISK搭載位置変更のためのミラー再設定について

返信ありがとうございました。

いろいろと、ためになる指摘をいただけて感謝しています。

ミラー解除時のPV指定の件は、完全に考慮が漏れていました。

地獄を見るのはイヤですので、作業前にLVMのログを採る、シングルユーザでは避ける、ミラー解除はPVを指定する、lvlnboot -v、lvlnboot -Rをことあるごとに打つ、といったところを取り込んだ手順に見直したいと思います。

ところで、前任者というかに相談したところ、「シャットダウンしてDISKを差し替え、DATを繋いで、あとはミラー設定をやり直せば大丈夫。」と非常に簡単な答えが返ってきました。あまりにも簡単だったもので不安に感じ、今回こちらで質問させていただいたわけですが、こんなやり方でも大丈夫なものなのでしょうか?

ゆきお
アドバイザー

DISK搭載位置変更のためのミラー再設定について

>「シャットダウンしてDISKを差し替え、DATを繋いで、

>あとはミラー設定をやり直せば大丈夫。」

>こんなやり方でも大丈夫なものなのでしょうか?

こういうやり方はやったこと無いのですが、恐らくOS起動中にLVMパニック起こしてRebootするかもしれないです。

というのも、OS起動のメッセージを見ていれば分かりますが、あるタイミングでvg00がactiveになります。

それまでの間は、LVMでboot/rootの位置を知るのではなく、LIFにあるLABELファイルを参照してbootとrootの位置を知り起動します。

LVMは使っていません。

とりあえず、そこまでは起動すると思います。

次にvg00をactiveにする際に、/etc/lvmtabとかBDRAやVGRAを参照することになりますが、ここにはミラーの相方がc3t2d0だと記載されています。

しかし実際にはc3t2d0のDiskはc2t1d0に移動されていますが、OSはそんな事は知りません。

結局ミラーの相方がいませんので、quorum checkに引っかかり、LVMパニックで落ちていきます。

よって、その方法ではダメだと思います。

ちなみに補足ですが、*create/*remove/*extend/*reduceはlvmtabやBDRA/VGRAを更新しますが、LIFのLABELは更新しません。lvmtabやBDRA/VGRAはOS起動中に参照するものであって、OS起動前には参照しません。

OS起動前はLIFのLABELを参照しますので、そこが実際のLVM構成と異なっているとboot/root/swap/dumpを見つけられずにOSが起動できません。

そこでlvlnboot -Rを行うことにより、LVMコマンドにより状況が変化したlvmtab/BDRA/VGRAを元に、LIFのLABELを書き換えます。

そうすることで、LVMのことなんか知らないPDC ROMでもLVM構成のDiskからカーネルをロードできるのです。

・・・らしいです。
Ku_O
レギュラーアドバイザー

DISK搭載位置変更のためのミラー再設定について

>「シャットダウンしてDISKを差し替え、DATを繋いで、

>あとはミラー設定をやり直せば大丈夫。」

ちゃんとした手順を踏めば出来なくはないです。

今回は既に皆さんからコメントがついている最初の手順でやるとして、前任者の方が言っていた方法でやろうとすると、大雑把には以下のようになります。

1. shutdown

2. disk 入れ替え。

3. maintenance mode で起動。

4. VG00 を vgchange -q n -a y で activate。

5. 見えていない pv を LVM 構成から削除。

6. 新しい H/W path の pv に対して mirror をはる。

7. 再起動。

新しい LVM のパッチを入れておかないと予想しないトラブルが起きたり、手順も今回のものよりもややこしいので、今回の手順をおすすめしたいところです。

PDC の main menu や HP-UX の setboot コマンドで boot path を変更すると、設定はそれで保存されます。一時的なものではありませんので、気をつけましょう。
Hi_Ya
時折のアドバイザー

DISK搭載位置変更のためのミラー再設定について

返信ありがとうございました。

PDCのalternate pathは、Kuniさんの指摘を受けて調べたところ、どうやらHP-UX上からでもコマンドで変更出来るようだ、ということは判りましたが、いまひとつ確信が持てなかったので改めて教えていただこうと思っていたのでした。

あいにく、よそでセットアップされたマシンらしく、手元にInstallメディアがありません。LVM周りの情報がおかしくなっても修復のしようがないことになるようですので、臆病なくらい慎重になっている次第です。
Hi_Ya
時折のアドバイザー

DISK搭載位置変更のためのミラー再設定について

やはり危ういと感じられますよね。

特にクォーラムチェックの話を知ってからは怖くなりましたので、こちらで相談させていただくことにしました。

おそらく、あの方法でも出来なくはないのでしょうが、テープへのバックアップもまだ出来ませんし、Installメディアもない状態ですので、皆様からいただいたコメントを取り入れた手順で作業することにします。

ところで、lvreduceのMANPAGEを読んでいて気になったのですが、使用中のスワップ領域は削減できない、といった記述がありました。ここで言う削減とは、割り当てられた論理エクステント数を減らしたりする操作のことで、ミラーの解除は可能と思って良いのでしょうか?