
Percebi ao usar virsh
que as VMs são chamadas de "domínios". Por que eles são chamados de domínios em vez de máquinas virtuais?
$ 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
Responder1
Eles não são terminologia exclusiva do kvm (xen também se refere a máquinas como domínios). Um hipervisor é um equivalente aproximado ao domínio zero, oudom0, que é o primeiro sistema inicializado no kernel e possui privilégios especiais. Outros domínios iniciados posteriormente são chamadosdomUe são equivalentes a um sistema convidado ou máquina virtual.
A razão provavelmente é que ambos são muito semelhantes, pois são executados no kernel que os manipula.
Responder2
Para reiterar como outros fizeram, é virsh/libvirt que chama domínios de máquinas virtuais - não QEMU/KVM.
O fato de o Xen originalmente ter chamado de domínios de máquinas virtuais oferece uma excelente perspectiva histórica, mas ainda levanta a questão: por quê?
Acho que a resposta decorre logicamente da definição de domínio.
Definição original de domínio: “uma área de território pertencente ou controlada por um determinado governante ou governo”.
Nas redes de computadores, um nome de domínio “define um domínio de autonomia administrativa, autoridade ou controle dentro da Internet”
Portanto, um domínio é apenas um subconjunto dentro de um espaço maior. Nas redes de computadores, é um subconjunto de umendereçoespaço.
E na virtualização de computadores, um domínio (máquina virtual) é um subconjunto de hardwarerecursoespaço.
Em outras palavras, um host é apenas um servidor que contém um conjunto de recursos (poder de processamento da CPU, memória, armazenamento, etc.). Uma máquina virtual é um subconjunto desse conjunto de recursos, dedicado à execução de um sistema operacional ou aplicativo.
Responder3
De acordo com o wiki do Xen (https://wiki.xen.org/wiki/Domínio),
Um domínio é uma das máquinas virtuais executadas no sistema. Domain0 é o primeiro domínio iniciado pelo hipervisor Xen na inicialização e executará um sistema operacional Linux.
O projeto Xen influenciou muito os desenvolvedores de ferramentas de virtualização. Esse nome certamente vem daí.
Responder4
Este artigotem uma ótima explicação para a terminologia. Resumidamente:
- Domínioé um conjunto de recursos de hardware.
- Convidadoé um sistema operacional virtualizado em execução no domínio.
- Máquina virtualé o sistema operacional convidado mais algum software aplicativo.
Esses termos significam quase a mesma coisa, por isso são usados de forma intercambiável. Libvirt provavelmente está mais focado na atribuição de recursos, não no software que será executado dentro dele, por isso os chama de domínios.