間の関係は何ですか?仮想マシンマネージャそしてKVM/QEMUか。ウィキペディアリンクによると
コンピューティングの世界では、virt-managerとしても知られているRed Hat Virtual Machine Managerはデスクトップです。仮想マシンマネージャ
「Virtual Machine Manager」を接続します。 https://en.wikipedia.org/wiki/Hypervisor。それでは、Virtual Machine Managerがハイパーバイザーであれば、KVM / QEMUは何ですか?
- VirtualBoxがVirtual Machine ManagerおよびKVM / QEMUと並列に2つに分割されていないのはなぜですか? VirtualBoxのどの部分がVirtual Machine Managerに似ていて、どの部分がKVM / QEMUに似ていますか?それとも、VirtualBox自体がVirtual Machine ManagerまたはKVM / QEMUに似ていますか?
- libvirtはサーバープロセスで、VMMはクライアントプロセスですか? QEMUもVMM用のサーバーですか? QEMUとlibvirtプロセスの関係と違いは何ですか?これらの4つのコンポーネントは、KVM <-> QEMU <-> libvirt <-> VMMを介して通信しますか?
ありがとうございます。
ベストアンサー1
ウィキペディアの記事が特定のフレーズをハイパーバイザーの記事にリンクする理由は何であるかわかりません。自分のウェブサイトからより正確に:
これ仮想管理者このアプリケーションは、libvirtを介して仮想マシンを管理するためのデスクトップユーザーインターフェースです。
VMM自体はハイパーバイザーではなく、仮想マシン(およびLXCコンテナ)を管理するためのGUIです。 VMMとVMMが管理する仮想マシンは別々のプロセスで実行されます。 QEMUの場合、VMMとQEMUはUnixドメインソケット(
/var/lib/libvirt/qemu
)を使用して通信します。VirtualBoxは次のように分けられます。複数のコンポーネント。使い慣れたGUIは、仮想マシンを独立して実行し、他のツールを使用して管理できるコンポーネントです。例えば VBoxの管理。 GUIはVirtual Machine Managerに似ており、VMエンジンはKVM / QEMUに似ています。また、別のプロセスで実行されます。
説明どおりここはデーモンプロセスであり
libvirtd
、用語はサーバープロセスです。 VMMはlibvirtクライアントです。 VMM は QEMU と直接通信しないため、QEMU クライアントではありません。 QEMUは仮想マシン(つまり基本ハードウェアをエミュレートし、ホストとの通信を処理し、libvirtd
仮想マシンを管理します(つまりイメージ、ストレージ、仮想マシンの起動と停止などを管理します。 KVMは、ハードウェアハイパーバイザーサポートを提供するシステムでハードウェアアクセラレーションを提供します。 KVMを実行すると、QEMUは仮想化できないCPUコマンドを処理する必要はなく、ハードウェアはそれを処理します。上記の4つのコンポーネント間の通信は次のとおりです。
- QEMUはKVMを使用します。渡す対応する
/dev/kvm
デバイスノード。 - libvirtは、上記のようにドメインソケットを使用してQEMUに接続します。
- 私が知っている限り、VMMはlibvirtに接続するためにドメインソケットも使用します。
完全なlibvirt設定は緩く結合されています。つまり、VMMおよび/または停止して
libvirtd
も、仮想マシンは引き続き実行され、libvirtd
管理する仮想マシンに再接続できます(仮想マシンのXML記述子がある場合)。- QEMUはKVMを使用します。渡す対応する