第23章 仮想マシンの問題診断


仮想マシンを使用していると、さまざまな重大度の問題が発生する可能性があります。問題によってはすぐ簡単に修正できる可能性がありますが、仮想マシン関連のデータおよびログを取得して、問題を報告または診断しなければならない場合もあります。

以下のセクションでは、ログの生成および一般的な仮想マシンの問題の診断方法と、このような問題の報告方法を説明します。

23.1. libvirt デバッグログの生成

仮想マシンの問題を診断するには、libvirt デバッグログを生成し、確認すると便利です。また仮想マシン関連の問題解決のサポートを受ける場合には、デバッグログを添付すると役立ちます。

次のセクションでは、デバッグログとは何かデバッグログの永続設定実行時の有効化、問題報告時の 添付方法 を説明します。

23.1.1. libvirt デバッグログについて

デバッグログは、仮想マシンランタイム時に発生するイベント関連のデータが含まれるテキストファイルです。ログには、ホストライブラリーや libvirt デーモンなどの、サーバー側の基本機能に関する情報が含まれます。ログファイルには、実行中の全仮想マシンの標準エラー出力 (stderr) も含まれます。

デバッグロギングはデフォルトでは有効ではないので、libvirt の起動時に有効にする必要があります。セッション 1 回分のロギングを有効にしたり、永続的 にロギングを有効にすることができます。また、デーモンのランタイム設定を変更 することにより、libvirt デーモンセッションがすでに実行中の場合にロギングを有効にすることもできます。

仮想マシンの問題のサポートを受ける場合に、libvirt デバッグログ を添付すると役立ちます。

23.1.2. libvirt デバッグログの永続的な設定の有効化

libvirt の起動時に毎回、libvirt デバッグロギングを自動的に有効にするように設定できます。デフォルトでは、virtqemud は RHEL 9 の主な libvirt デーモンになります。libvirt 設定で永続的な変更を行うには、/etc/libvirt ディレクトリーにある virtqemud.conf ファイルを編集する必要があります。

注記

場合によっては、たとえば、RHEL 8 からアップグレードするときに、libvirtd は依然として有効な libvirt デーモンである可能性があります。この場合は、代わりに libvirtd.conf ファイルを編集する必要があります。

手順

  1. エディターで virtqemud.conf ファイルを開きます。
  2. 要件に応じてフィルターを置き換えるか、設定します。

    表23.1 フィルター値のデバッグ

    1

    libvirt が生成したすべてのメッセージをログに記録します。

    2

    すべての非デバッグ情報をログに記録します。

    3

    すべての警告およびエラーメッセージをログに記録します。これはデフォルト値です。

    4

    エラーメッセージのみをログに記録します。

    例23.1 ロギングフィルターのデーモン設定例

    以下の設定を行います。

    • remoteutil.json、および rpc 層からのすべてのエラーメッセージおよび警告メッセージをログに記録します。
    • event レイヤーからのエラーメッセージのみを記録します。
    • フィルターされたログを /var/log/libvirt/libvirt.log に保存します。
    log_filters="3:remote 4:event 3:util.json 3:rpc"
    log_outputs="1:file:/var/log/libvirt/libvirt.log"
  3. 保存して終了します。
  4. libvirt デーモンを再起動します。

    $ systemctl restart virtqemud.service

23.1.3. ランタイム時の libvirt デバッグログの有効化

libvirt デーモンのランタイム設定を変更し、デバッグログを有効にして出力ファイルに保存できます。

これは、再起動すると問題が解決するため、libvirt デーモンを再起動できない場合や、マイグレーションやバックアップなどの別のプロセスが同時に実行されている場合などに便利です。設定ファイルを編集したり、デーモンを再起動せずにコマンドを試行したりする場合にも、ランタイム設定を変更すると便利です。

前提条件

  • libvirt-admin パッケージがインストールされている。

手順

  1. オプション: アクティブなログフィルターのセットをバックアップします。

    # virt-admin -c virtqemud:///system daemon-log-filters >> virt-filters-backup
    注記

    ログの生成後に復元できるように、アクティブなフィルターセットをバックアップすることが推奨されます。フィルターを復元しないと、メッセージがログに記録され、システムパフォーマンスに影響する可能性があります。

  2. virt-admin ユーティリティーを使用してデバッグを有効にし、要件に応じてフィルターを設定します。

    表23.2 フィルター値のデバッグ

    1

    libvirt が生成したすべてのメッセージをログに記録します。

    2

    すべての非デバッグ情報をログに記録します。

    3

    すべての警告およびエラーメッセージをログに記録します。これはデフォルト値です。

    4

    エラーメッセージのみをログに記録します。

    例23.2 ロギングフィルターの virt-admin 設定の例

    以下のコマンドを実行します。

    • remoteutil.json、および rpc レイヤーからのエラーメッセージおよび警告メッセージをすべてログに記録します。
    • イベント レイヤーからのエラーメッセージのみを記録します。
    # virt-admin -c virtqemud:///system daemon-log-filters "3:remote 4:event 3:util.json 3:rpc"
  3. virt-admin ユーティリティーを使用して、ログを特定のファイルまたはディレクトリーに保存します。

    たとえば、以下のコマンドはログ出力を /var/log/libvirt/ ディレクトリーの libvirt.log ファイルに保存します。

    # virt-admin -c virtqemud:///system daemon-log-outputs "1:file:/var/log/libvirt/libvirt.log"
  4. オプション: フィルターを削除して、仮想マシン関連のすべての情報を含むログファイルを生成することもできます。ただし、このファイルには libvirt のモジュールが生成した多くの冗長情報が含まれる可能性があるため、推奨されません。

    • virt-admin ユーティリティーを使用して空のフィルターのセットを指定します。

      # virt-admin -c virtqemud:///system daemon-log-filters
        Logging filters:
  5. オプション: バックアップファイルを使用してフィルターを元の状態に復元します。
    保存した値を使用して 2 番目の手順を実行し、フィルターを復元します。

23.1.4. サポートリクエストへの libvirt デバッグログの添付

仮想マシンの問題の診断および解決に追加のサポートを依頼する必要がある場合があります。仮想マシン関連の問題を迅速に解決するために、サポートチームが必要な情報すべてにアクセスできるように、サポートリクエストにデバッグログを添付することを強く推奨します。

手順

  • 問題およびサポートを報告するには、サポートケースを作成 してください。
  • 発生した問題に応じて、レポートに以下のログを添付します。

    • libvirt サービスに問題がある場合は、ホストから /var/log/libvirt/libvirt.log ファイルを添付します。
    • 特定の仮想マシンに関する問題は、該当するログファイルを添付します。

      たとえば、仮想マシン testguest1 の場合は、/var/log/libvirt/qemu/testguest1.log にある testguest1.log ファイルを添付します。

関連情報

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.