
Mir ist bei der Verwendung aufgefallen, virsh
dass 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.
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.