付録A セルフホストエンジンのデプロイメントのトラブルシューティング
セルフホストエンジンがすでにデプロイされているかどうかを確認するには、hosted-engine --check-deployed
を実行します。セルフホストエンジンがデプロイされていない場合にだけ、エラーが表示されます。
A.1. Manager 用仮想マシンのトラブルシューティング
hosted-engine --vm-status
を実行して Manager 用仮想マシンのステータスを確認します。
Manager 用仮想マシンに加えた変更がステータスコマンドの出力に反映されるには、20 秒ほどかかります。
出力の Engine status
ごとに、問題を特定または解決するためのアドバイスを以下に示します。
Engine status: "health": "good", "vm": "up" "detail": "up"
Manager 用仮想マシンが通常通りに稼働中の場合には、以下のような出力が表示されます。
--== Host 1 status ==-- Status up-to-date : True Hostname : hypervisor.example.com Host ID : 1 Engine status : {"health": "good", "vm": "up", "detail": "up"} Score : 3400 stopped : False Local maintenance : False crc32 : 99e57eba Host timestamp : 248542
- 出力は正常だが Manager に接続することができない場合は、ネットワーク接続を確認してください。
Engine status: "reason": "failed liveliness check", "health": "bad", "vm": "up", "detail": "up"
health
がbad
でvm
がup
の場合、HA サービスは Manager 用仮想マシンを再起動して Manager の復旧を試みます。数分以内に復旧しない場合は、コマンドラインからグローバルメンテナーンスモードを有効にして、ホストを HA サービスの管理対象外にします。# hosted-engine --set-maintenance --mode=global
コンソールに接続します。プロンプトが表示されたら、オペレーティングシステムの root パスワードを入力します。コンソールのオプションに関する詳細は、https://access.redhat.com/solutions/2221461 を参照してください。
# hosted-engine --console
- Manager 用仮想マシンにログインして、オペレーティングシステムが動作していることを確認します。
ovirt-engine
サービスのステータスを確認します。# systemctl status -l ovirt-engine # journalctl -u ovirt-engine
- /var/log/messages、/var/log/ovirt-engine/engine.log、および /var/log/ovirt-engine/server.log のログを確認します。
問題を解決したら、セルフホストエンジンノードのいずれかから、手動で Manager 用仮想マシンを再起動します。
# hosted-engine --vm-shutdown # hosted-engine --vm-start
注記セルフホストエンジンノードがグローバルメンテナーンスモードにある場合は、Manager 用仮想マシンを手動で再起動する必要があります。コマンドラインから
reboot
コマンドを送信して Manager 用仮想マシンを再起動しようとしても、Manager 用仮想マシンは電源オフのままです。設計上、このようになります。Manager 用仮想マシンで
ovirt-engine
サービスが稼働中であることを確認します。# systemctl status ovirt-engine.service
Manager 用仮想マシンが稼働中であることを確認した後は、コンソールセッションを終了して、メンテナーンスモードを無効にし、HA サービスを再び有効にします。
# hosted-engine --set-maintenance --mode=none
Engine status: "vm": "down", "health": "bad", "detail": "unknown", "reason": "vm not running on this host"
- 環境内に複数のホストがある場合は、現在別のホストが Manager 用仮想マシンの再起動を試みていないことを確認します。
- グローバルメンテナーンスモードにないことを確認します。
- /var/log/ovirt-hosted-engine-ha/agent.log で、ovirt-ha-agent のログを確認します。
セルフホストエンジンノードのいずれかから、手動で Manager 用仮想マシンの再起動を試みます。
# hosted-engine --vm-shutdown # hosted-engine --vm-start
Engine status: "vm": "unknown", "health": "unknown", "detail": "unknown", "reason": "failed to getVmStats"
このステータスは、ovirt-ha-agent
が VDSM から仮想マシンの詳細を取得できなかったことを意味しています。
- /var/log/vdsm/vdsm.log で VDSM のログを確認します。
- /var/log/ovirt-hosted-engine-ha/agent.log で、ovirt-ha-agent のログを確認します。
Engine status: セルフホストエンジンの設定が共有ストレージから取得されていない
ステータス が表示されると、共有ストレージからセルフホストエンジン設定は取得されていません。ovirt-ha-agent が実行されており、ストレージサーバーにアクセスできることを確認してください
ovirt-ha-agent
サービス、ストレージ、またはその両方に問題があります。
ホストで
ovirt-ha-agent
のステータスを確認します。# systemctl status -l ovirt-ha-agent # journalctl -u ovirt-ha-agent
ovirt-ha-agent
がダウンしている場合は、再起動します。# systemctl start ovirt-ha-agent
-
/var/log/ovirt-hosted-engine-ha/agent.log で、
ovirt-ha-agent
のログを確認します。 - 共有ストレージに ping を送信できることを確認します。
- 共有ストレージがマウントされているかどうかを確認します。
その他のトラブルシューティング用コマンド
以下のコマンドのいずれかを実行してセルフホストエンジン環境のトラブルシューティングを行う必要がある場合には、Red Hat サポートまでご連絡ください。
-
hosted-engine --reinitialize-lockspace
: このコマンドは、sanlock ロックスペースが壊れている場合に使用します。sanlock ロックスペースを再初期化する前に、グローバルメンテナーンスモードが有効で Manager 用仮想マシンが停止していることを確認してください。 -
hosted-engine --clean-metadata
: ホストのエージェントのメタデータをグローバルステータスデータベースから削除します。これにより、他のホストではすべて、このホストについての情報はなくなります。ターゲットのホストが停止状態でグローバルメンテナーンスモードが有効であることを確認してください。 -
hosted-engine --check-liveliness
: このコマンドは、ovirt-engine サービスの liveliness ページを確認します。Web ブラウザーでhttps://engine-fqdn/ovirt-engine/services/health/
に接続して確認することもできます。 -
hosted-engine --connect-storage
: このコマンドは、ホストと Manager 用仮想マシンに必要なストレージ接続をすべて準備するように VDSM に指示します。これは通常、セルフホストエンジンのデプロイ中にバックエンドで実行します。このコマンドを実行してストレージの問題のトラブルシューティングを行う必要がある場合には、グローバルメンテナーンスモードを必ず有効にしてください。