
我在使用時注意到virsh
虛擬機器被稱為“域”。為什麼它們被稱為網域而不是虛擬機器?
$ 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
答案2
重申一下,就像其他人一樣,是 virsh/libvirt 呼叫虛擬機域,而不是 QEMU/KVM。
Xen 最初被稱為虛擬機域這一事實提供了一個很好的歷史視角,但它仍然引出了一個問題——為什麼?
我認為答案是從域的定義中邏輯得出的。
域的原始定義:“由特定統治者或政府擁有或控制的領土區域。”
在電腦網路中,網域名稱“定義了網際網路內的管理自治、權力或控制範圍”
因此,域只是更大空間中的子集。在電腦網路中,它是一個子集地址空間。
在電腦虛擬化中,網域(虛擬機器)是硬體的子集資源空間。
換句話說,主機只是一個包含資源池(CPU 處理能力、記憶體、儲存等)的伺服器。虛擬機器是該資源池的子集,專用於執行作業系統或應用程式。
答案3
根據 Xen 維基 (https://wiki.xen.org/wiki/Domain),
域是系統上運作的虛擬機器之一。 Domain0 是 Xen 虛擬機器管理程式在啟動時啟動的第一個網域,並將運行 Linux 作業系統。
Xen專案極大地影響了虛擬化工具的開發人員。這個名字肯定是從那裡來的。
答案4
本文對術語有很好的解釋。簡而言之:
- 領域是一組硬體資源。
- 客人是在網域內運行的虛擬化作業系統。
- 虛擬機是Guest OS加上一些應用軟體。
這些術語的含義幾乎相同,因此可以互換使用。 Libvirt 可能更關注分配資源,而不是內部運行什麼軟體,因此它稱它們為域。