system management
1753971 メンバー
7711 オンライン
108811 解決策
新規ポスト

cmcheckconfでLVMクエリーのエラーが出る

 
hajimek
頻繁なアドバイザー

cmcheckconfでLVMクエリーのエラーが出る

お世話になります。

MC/ServiceGuardのクラスタ情報を変更して、cmcheckconfを実行しましたところ、「Error: Unable to determine lvm configuration: failed to receive lvm query reply from node server1」というエラーが出てしまいクラスタの再構築が出来ず困っております。

LVM構成をvgscanコマンドで更新しても同じエラーが消えません。

同様な経験をお持ちの方はいらっしゃいませんでしょうか。

宜しくお願いいたします。

7件の返信7
Na_Ka
頻繁なアドバイザー

cmcheckconfでLVMクエリーのエラーが出る

変更情報を伝えてもらえると問題判別もしやすくなると思います。

vgscanではなくvgexport/vgimportをしてみても結果は同じでしょうか?
hajimek
頻繁なアドバイザー

cmcheckconfでLVMクエリーのエラーが出る

変更しましたのは、cmcluster.ascii内のHEATBEATのIPアドレスとパッケージ構成ファイルのsubnet。及びパッケージ制御シェル内のIPアドレスとサブネットです。

あと、内蔵ディスクの故障によりディスクの交換もしました。こちらのほうは/dev/vg00のミラーリングを復旧させたところです。

/etc/lvmtabを再生成させると、/dev/vg00の情報が書き込まれずlvlnbootコマンドも使えなくなってしまいます。
Na_Ka
頻繁なアドバイザー

cmcheckconfでLVMクエリーのエラーが出る

変更点はネットワークまわりなのであまりLVMは関係なさそうな気はしますが、LVMの確認は念のためしたほうがいいかもしれません。

クラスタを組む各ノードで共用するvgがそれぞれactivateできるかどうか確認してみてください。activate後はvgdisplayでvg情報が同じかどうかの確認も忘れずに。

NodeAで

vgchange -a y vg名

vgdisplay -v vg名

vgchange -a n vg名

NodeBで同じことを実施して情報を比較

情報がずれているようでしたら、間違っている方のvgを削除し、vgimportして情報を同じにしてください。

vgscanは使わないほうがいいです。

hajimek
頻繁なアドバイザー

cmcheckconfでLVMクエリーのエラーが出る

上記のアドバイスを確認しましたが、特に情報が違うということはありませんした。

一つ気になっているのは、cmcheckconfコマンド実行時にsyslogに以下のエラーが書き込まれるのですが、良く分からず困っています。

関係あるのでしょうか。

「May 21 18:51:33 cmhp5 cmclconfd: Unable to stat /dev//group,

May 21 18:51:33 cmhp5 cmclconfd: Unable to query LV /dev//root」
rawsq
貴重なコントリビューター

cmcheckconfでLVMクエリーのエラーが出る

>「May 21 18:51:33 cmhp5 cmclconfd: Unable to stat /dev//group,

>May 21 18:51:33 cmhp5 cmclconfd: Unable to query LV /dev//root」

lvmtabはどのように表示されますか。

特に/dev/という表記はありませんか?

# strings /etc/lvmtab

/dev/

/dev/dsk/cXtYdZ

...

もし、lvmtabに/dev/というエントリが見られれば/dev/slvmvgファイルが存在するはずです。

探してみてください。

もしあれば、以下の作業を行ってからcmcheckconfをしてみてください。

# mv /etc/lvmtab /etc/lvmtab.bk

# mv /dev/slvmvg /tmp/

# vgscan

# mv /tmp/slvmvg /dev/

# strings /etc/lvmtab

# cmcheckconf ....

/dev/slvmvgはMC/SG環境で作成されるファイルですが、これがvgscan時に障害となります。

このデバイスファイルはキャラクタ型でメジャー番号は64マイナー番号は0x000000となり、vg00のデフォルトで作成される制御ファイル(/dev/vg00/group)とかぶります。

vgscanは/dev/配下の各VGの制御ファイル(キャラクタ型、メジャー番号64のデバイスファイル。通常はgroupという名前)を探し出してlvmの構成情報であるlvmtabを作成します。

このときMC/SG環境だとslvmvgが/dev/配下に存在するため/dev/をVGと思ってしまいます。

またcmcheckconfはlvmtab内のすべてのVGをチェックするため、/dev/というエントリを発見し、チェックしたものの正常なVGではないためエラーになっているのでは?と思います。
rawsq
貴重なコントリビューター

cmcheckconfでLVMクエリーのエラーが出る

追記:

上記内容が問題であるならば、パッチ適用をお勧めします。

vgscanが/dev/slvmvgを間違ってスキャンしてしまう現象は、LVMのコマンドパッチをあてればよいと思います。

"/dev/slvmvg"にてパッチを検索してください。
hajimek
頻繁なアドバイザー

cmcheckconfでLVMクエリーのエラーが出る

ご返答ありがとうございます。

/dev/slvmvgの存在を忘れていました。

上記ファイルを移動させてからvgscanを実行したところ、cmcheckconfコマンドのエラーが出なくなり。

無事クラスタを再構成することが出来ました。

kk様、rawsq様ありがとうございました。