KVM/QEMU の VM がドメインと呼ばれるのはなぜですか?

KVM/QEMU の VM がドメインと呼ばれるのはなぜですか?

virsh使用中に、VM が「ドメイン」と呼ばれていることに気付きました。なぜ仮想マシンではなくドメインと呼ばれるのでしょうか?

$ virsh

virsh # help
...
 Domain Monitoring (help keyword 'monitor'):
    domblkerror                    Show errors on block devices
    domblkinfo                     domain block device size information
    domblklist                     list all domain blocks
    domblkstat                     get device block stats for a domain
    domcontrol                     domain control interface state
    domif-getlink                  get link state of a virtual interface
    domifaddr                      Get network interfaces' addresses for a running domain
    domiflist                      list all domain virtual interfaces
    domifstat                      get network interface stats for a domain
    dominfo                        domain information
    dommemstat                     get memory statistics for a domain
    domstate                       domain state
    domstats                       get statistics about one or multiple domains
    domtime                        domain time
    list                           list domains
...

virsh # list --all
 Id    Name                           State
----------------------------------------------------
 -     centos_vagrant_test_test_vm    shut off
 -     collectd01                     shut off
 -     grafana01                      shut off
 -     influxdb01                     shut off
 -     JobDBWin7_Stable               shut off
 -     OpenWRT_Red                    shut off

答え1

これらはKVM専用の用語ではありません(Xenではマシンをドメインとも呼びます)。ハイパーバイザーはドメイン0とほぼ同等です。ドム0はカーネル上で最初に初期化されるシステムであり、特別な権限を持っています。後に開始される他のドメインはドムUゲスト システムまたは仮想マシンと同等です。

その理由は、おそらく、両方とも、それらを処理するカーネル上で実行されるため、非常に似ているためです。

答え2

他の人が述べたように繰り返しますが、仮想マシンのドメインを呼び出すのは QEMU/KVM ではなく virsh/libvirt です。

Xen がもともと仮想マシンをドメインと呼んでいたという事実は、歴史的な観点から見ると素晴らしいものですが、それでも疑問が残ります。なぜでしょうか?

答えはドメインの定義から論理的に導かれると思います。

ドメインの本来の定義: 「特定の統治者または政府によって所有または管理されている領土の領域」

コンピュータネットワークでは、ドメイン名は「インターネット内の管理上の自治権、権限、または制御の領域を定義します」

ドメインは、より大きな空間内のサブセットにすぎません。コンピュータネットワークでは、ドメインは住所空間。

コンピュータ仮想化では、ドメイン(仮想マシン)はハードウェアのサブセットです。リソース空間。

言い換えると、ホストはリソース プール (CPU 処理能力、メモリ、ストレージなど) を含むサーバーです。仮想マシンは、そのリソース プールのサブセットであり、オペレーティング システムまたはアプリケーションの実行専用です。

ここに画像の説明を入力してください

答え3

Xen wikiによると(https://wiki.xen.org/wiki/ドメイン)、

ドメインは、システム上で実行される仮想マシンの 1 つです。Domain0 は、起動時に Xen ハイパーバイザーによって開始される最初のドメインであり、Linux OS が実行されます。

Xen プロジェクトは仮想化ツールの開発者に大きな影響を与えました。この名前は間違いなくそこから来ています。

答え4

この記事用語についての素晴らしい説明があります。簡単に言うと、

  • ドメインハードウェア リソースのセットです。
  • ゲストドメイン内で実行される仮想化 OS です。
  • 仮想マシンゲスト OS といくつかのアプリケーション ソフトウェアです。

これらの用語はほぼ同じ意味を持つため、互換的に使用されます。Libvirt は、内部で実行されるソフトウェアではなく、リソースの割り当てに重点を置いているため、ドメインと呼んでいます。

関連情報