虛擬化型別

2021-06-28 13:06:12 字數 1766 閱讀 7912

目錄 [

顯示]全虛擬化也成為原始虛擬化技術,該模型使用虛擬機器協調guest作業系統和原始硬體,vmm在guest作業系統和裸硬體之間用於工作協調,一些受保護指令必須由hypervisor(虛擬機器管理程式)來捕獲處理。

圖1 全虛擬化模型

全虛擬化的執行速度要快於硬體模擬,但是效能方面不如裸機,因為hypervisor需要占用一些資源。

半虛擬化是另一種類似於全虛擬化的技術,它使用hypervisor分享訪問底層的硬體,但是它的guest作業系統整合了虛擬化方面的**。該方法無需重新編譯或引起陷阱,因為作業系統自身能夠與虛擬程序進行很好的協作。

圖2 半虛擬化模型

半虛擬化需要guest作業系統做一些修改,使guest作業系統意識到自己是處於虛擬化環境的,但是半虛擬化提供了與原作業系統相近的效能。

kvm是整合到linux核心的hypervisor,是x86架構且硬體支援虛擬化技術(intel vt或amd-v)的linux的全虛擬化解決方案。它是linux的乙個很小的模組,利用linux做大量的事,如任務排程、記憶體管理與硬體裝置互動等。

圖3 kvm虛擬化平台架構

xen是第一類執行在裸機上的虛擬化管理程式(hypervisor)。它支援全虛擬化和半虛擬化,xen支援hypervisor和虛擬機器互相通訊,而且提供在所有linux版本上的免費產品,包括red hat enterprise linux和suse linux enterprise server。xen最重要的優勢在於半虛擬化,此外未經修改的作業系統也可以直接在xen上執行(如windows),能讓虛擬機器有效執行而不需要**,因此虛擬機器能感知到hypervisor,而不需要模擬虛擬硬體,從而能實現高效能。

圖4 xen虛擬化平台架構

qemu是一套由fabrice bellard所編寫的模擬處理器的自由軟體。它與bochs,pearpc近似,但其具有某些後兩者所不具備的特性,如高速度及跨平台的特性。經由kqemu這個開源的加速器,qemu能模擬至接近真實電腦的速度。

圖5 kvm和qemu關係

kvm是最底層的hypervisor,它是用來模擬cpu的執行,它缺少了對network和周邊i/o的支援,所以我們是沒法直接用它的。

qemu-kvm就是乙個完整的模擬器,它是構建基於kvm上面的,它提供了完整的網路和i/o支援。

openstack不會直接控制qemu-kvm,它會用乙個叫libvirt的庫去間接控制qemu-kvm。libvirt提供了跨vm平台的功能,它可以控制除了qemu之外的模擬器,包括vmware, virtualbox, xen等等。

所以為了openstack的跨vm性,所以openstack只會用libvirt而不直接用qemu-kvm。libvirt還提供了一些高階的功能,例如pool/vol管理。

VMware虛擬化程式設計 1 虛擬磁碟檔案型別詳解

目錄 虛擬磁碟檔案 vmdk 使用者可以建立的虛擬磁碟型別 vixdisklib 中支援的虛擬磁碟型別 虛擬機器檔案型別 虛擬磁碟檔案 vmdk file 字尾為 vmdk,是虛擬機器的儲存卷,guest os file system 儲存在 vmdk file,而 vmdk file 又會以檔案的...

KVM虛擬化虛擬機器支援虛擬化

一 開啟的時候需要關閉所有虛擬機器 首先檢查 kvm host 宿主機 母機 上的kvm intel模組是否開啟了巢狀虛擬機器功能 預設是開啟的 1 modinfo kvm intel grep nested parm nested bool 2 cat sys module kvm intel p...

全虛擬化和半虛擬化

由於採用技術的不同,系統 虛擬化不僅僅包括全 虛擬化 半 虛擬化和硬體輔助 虛擬化。完整來看,可以將系統 虛擬化分為五大類 硬體 emulation 簡介 屬於hosted模式,在物理機的作業系統上建立乙個模擬硬體的程式 hardware vm 來 所想要的硬體,並在此程式上跑虛擬機器,而且虛擬機器...