Warum werden VMs in KVM/QEMU Domänen genannt?

Warum werden VMs in KVM/QEMU Domänen genannt?

Mir ist bei der Verwendung aufgefallen, virshdass VMs als „Domänen“ bezeichnet werden. Warum heißen sie Domänen und nicht virtuelle Maschinen?

$ 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

Antwort1

Es handelt sich nicht um eine ausschließliche KVM-Terminologie (Xen bezeichnet Maschinen auch als Domänen). Ein Hypervisor ist ungefähr gleichbedeutend mit Domäne Null oderdom0, das erste System, das auf dem Kernel initialisiert wird und spezielle Privilegien besitzt. Andere Domänen, die später gestartet werden, heißendomUund entsprechen einem Gastsystem oder einer virtuellen Maschine.

Der Grund liegt wahrscheinlich darin, dass beide sehr ähnlich sind, da sie auf dem Kernel ausgeführt werden, der sie verarbeitet.

Antwort2

Um es wie andere noch einmal zu wiederholen: Es sind virsh/libvirt, die die Domänen virtueller Maschinen aufrufen – nicht QEMU/KVM.

Die Tatsache, dass Xen virtuelle Maschinen ursprünglich als Domänen bezeichnete, bietet eine hervorragende historische Perspektive, wirft aber dennoch die Frage auf: Warum?

Ich denke, die Antwort ergibt sich logisch aus der Definition der Domäne.

Ursprüngliche Definition einer Domäne: „Ein Gebiet, das einem bestimmten Herrscher oder einer bestimmten Regierung gehört oder von diesen kontrolliert wird.“

In der Computervernetzung definiert ein Domänenname „einen Bereich administrativer Autonomie, Autorität oder Kontrolle innerhalb des Internets“

Eine Domäne ist also nur eine Teilmenge innerhalb eines größeren Raums. In der Computervernetzung ist sie eine Teilmenge einerAdresseRaum.

Und bei der Computervirtualisierung ist eine Domäne (virtuelle Maschine) eine Teilmenge der HardwareRessourceRaum.

Anders ausgedrückt ist ein Host einfach ein Server, der einen Pool an Ressourcen enthält (CPU-Verarbeitungsleistung, Speicher, Speicherplatz usw.). Eine virtuelle Maschine ist eine Teilmenge dieses Ressourcenpools, die für die Ausführung eines Betriebssystems oder einer Anwendung bestimmt ist.

Bildbeschreibung hier eingeben

Antwort3

Laut Xen-Wiki (https://wiki.xen.org/wiki/Domain),

Eine Domäne ist eine der virtuellen Maschinen, die auf dem System ausgeführt werden. Domain0 ist die erste Domäne, die vom Xen-Hypervisor beim Booten gestartet wird und auf der ein Linux-Betriebssystem ausgeführt wird.

Das Xen-Projekt hat die Entwickler von Virtualisierungstools stark beeinflusst. Der Name kommt sicherlich daher.

Antwort4

Dieser Artikelhat eine großartige Erklärung für die Terminologie. Kurz gesagt:

  • Domainist eine Reihe von Hardwareressourcen.
  • Gastist ein virtualisiertes Betriebssystem, das innerhalb der Domäne ausgeführt wird.
  • Virtuelle Maschineist das Gastbetriebssystem plus einige Anwendungssoftware.

Diese Begriffe bedeuten fast dasselbe und werden daher synonym verwendet. Libvirt konzentriert sich wahrscheinlich mehr auf die Zuweisung von Ressourcen und nicht darauf, welche Software darin ausgeführt wird, daher werden sie als Domänen bezeichnet.

verwandte Informationen