検索

18.3. libvirt デーモンの最適化

download PDF

libvirt 仮想化スイートは、RHEL ハイパーバイザーの管理層として機能し、libvirt の設定は仮想化ホストに大きな影響を与えます。特に、RHEL 9 には、モノリシックまたはモジュラーの 2 つのタイプの libvirt デーモンが含まれており、使用するデーモンのタイプは、個々の仮想化ドライバーをどの程度細かく設定できるかに影響します。

18.3.1. libvirt デーモンのタイプ

RHEL 9 は、以下の libvirt デーモンタイプをサポートします。

モノリシックな libvirt

従来の libvirt デーモンである libvirtd は、単一の設定ファイル /etc/libvirt/libvirtd.conf を使用して、さまざまな仮想化ドライバーを制御します。

このため、libvirtd は一元化されたハイパーバイザー設定を可能にしますが、システムリソースの使用が非効率的となる可能性があります。したがって、libvirtd は、RHEL の今後のメジャーリリースではサポートされなくなる予定です。

ただし、RHEL 8 から RHEL 9 に更新した場合、ホストはデフォルトで引き続き libvirtd を使用します。

モジュラー libvirt

RHEL 9 で新たに導入されたモジュラー libvirt は、仮想化ドライバーごとに特定のデーモンを提供します。これらには以下が含まれます。

  • virtqemud - ハイパーバイザー管理用のプライマリーデーモン
  • virtinterfaced - ホストの NIC 管理用のセカンダリーデーモン
  • virtnetworkd - 仮想ネットワーク管理用のセカンダリーデーモン
  • virtnodedevd - ホストの物理デバイス管理用のセカンダリーデーモン
  • virtnwfilterd - ホストのファイアウォール管理用のセカンダリーデーモン
  • virtsecretd - ホストシークレット管理用のセカンダリーデーモン
  • virtstoraged - ストレージ管理用のセカンダリーデーモン

デーモンごとに個別の設定ファイル (/etc/libvirt/virtqemud.conf など) があります。したがって、モジュラーの libvirt デーモンは、libvirt リソース管理を細かく調整するためのより良いオプションを提供します。

RHEL 9 を新規インストールした場合、モジュラー libvirt はデフォルトで設定されています。

次のステップ

18.3.2. モジュラー libvirt デーモンの有効化

RHEL 9 では、libvirt ライブラリーは、ホスト上の個々の仮想化ドライバーセットを処理するモジュラーデーモンを使用します。たとえば、virtqemud デーモンは QEMU ドライバーを処理します。

RHEL 9 ホストの新規インストールを実行すると、ハイパーバイザーはデフォルトでモジュラー libvirt デーモンを使用します。ただし、ホストを RHEL 8 から RHEL 9 にアップグレードした場合、ハイパーバイザーは RHEL 8 のデフォルトであるモノリシックな libvirtd デーモンを使用します。

その場合、Red Hat は、代わりにモジュラー libvirt デーモンを有効にすることを推奨します。これは、libvirt リソース管理を微調整するためのより良いオプションを提供するためです。また、RHEL の今後のメジャーリリースでは libvirtd はサポートされなくなる予定です。

前提条件

  • ハイパーバイザーがモノリシックな libvirtd サービスを使用している。

    # systemctl is-active libvirtd.service
    active

    このコマンドで active が表示される場合、libvirtd を使用していることになります。

  • 仮想マシンがシャットダウンしている。

手順

  1. libvirtd とそのソケットを停止します。

    $ systemctl stop libvirtd.service
    $ systemctl stop libvirtd{,-ro,-admin,-tcp,-tls}.socket
  2. libvirtd を無効にして、システムの起動時に開始されないようにします。

    $ systemctl disable libvirtd.service
    $ systemctl disable libvirtd{,-ro,-admin,-tcp,-tls}.socket
  3. モジュラーの libvirt デーモンを有効にします。

    # for drv in qemu interface network nodedev nwfilter secret storage; do systemctl unmask virt${drv}d.service; systemctl unmask virt${drv}d{,-ro,-admin}.socket; systemctl enable virt${drv}d.service; systemctl enable virt${drv}d{,-ro,-admin}.socket; done
  4. モジュラーデーモンのソケットを起動します。

    # for drv in qemu network nodedev nwfilter secret storage; do systemctl start virt${drv}d{,-ro,-admin}.socket; done
  5. オプション: リモートホストからホストに接続する必要がある場合は、仮想化プロキシーデーモンを有効にして起動します。

    1. システムで libvirtd-tls.socket サービスが有効になっているかどうかを確認します。

      # grep listen_tls /etc/libvirt/libvirtd.conf
      
      listen_tls = 0
    2. libvirtd-tls.socket が有効になっていない場合 (listen_tls = 0)、次のように virtproxyd をアクティブにします。

      # systemctl unmask virtproxyd.service
      # systemctl unmask virtproxyd{,-ro,-admin}.socket
      # systemctl enable virtproxyd.service
      # systemctl enable virtproxyd{,-ro,-admin}.socket
      # systemctl start virtproxyd{,-ro,-admin}.socket
    3. libvirtd-tls.socket が有効になっている場合 (listen_tls = 1)、次のように virtproxyd をアクティブにします。

      # systemctl unmask virtproxyd.service
      # systemctl unmask virtproxyd{,-ro,-admin,-tls}.socket
      # systemctl enable virtproxyd.service
      # systemctl enable virtproxyd{,-ro,-admin,-tls}.socket
      # systemctl start virtproxyd{,-ro,-admin,-tls}.socket

      virtproxyd の TLS ソケットを有効にするには、libvirt で使用できるように設定された TLS 証明書がホストに必要です。詳細は、アップストリームの libvirt ドキュメント を参照してください。

検証

  1. 有効化された仮想化デーモンをアクティブにします。

    # virsh uri
    qemu:///system
  2. ホストが virtqemud モジュラーデーモンを使用していることを確認します。

    # systemctl is-active virtqemud.service
    active

    ステータスが active の場合、libvirt モジュラーデーモンは正常に有効になっています。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.