計算機虛擬化發展史
計算機虛擬化中的重要概念
計算虛擬化的分類
虛擬化的特點
CPU虛擬化
CPU虛擬化拓展
內存虛擬化
I/O虛擬化
- 模擬(完全虛擬):完全使用軟件來模擬真實硬件,模擬通常硬件,例如鍵盤鼠標,通過焦點捕獲,焦點被哪個主機捕獲就被哪個主機使用,性能很差。
- 半虛擬化:對硬件驅動由前端(IO frontend)直接轉到後端(IO backend)調用,通常僅適用於硬盤和網卡,性能高。
- IO-through:IO透傳,直接分配給虛擬機物理設備,例如直接分配一個硬盤或網卡給虛擬機,需要硬件具備IO透傳技術,在Xen下由Dom0分配,但是訪問使用直接使用,不經過Dom0,需要硬件支持。
雲計算和虛擬化
主流計算虛擬化技術
Xen vs KVM
KVM是什麼
基於Linux內核
分爲Guest,User,Kernel三種空間
KVM體系架構
分爲三個模塊:管理工具,KVM模塊(CPU虛擬化+內存虛擬化),QEMU(做其他I/O設備:網卡,硬盤……的模擬,I/O虛擬化)
核心組件:Linux Kernel(KVM module) + QEMU-KVM
Linux Kernel KVM內核模塊,是KVM虛擬機的核心部分。主要功能是初始化虛擬化硬件,打開虛擬化模式,將Guest Machine運行在該模式下,並對虛擬客戶機的運行提供一定的支持。
QEMU-KVM:和硬件打交道,模擬I/O的設備
Libvirt
Libvirt:是一個開源的項目,非常強大的管理工具。本身可以對KVM進行管理,並且向上提供各種語言的接口。
KVM I/O 操作流程
默認
Virtio
請求跳過了KVM模塊,性能得到顯著提高。
FusionCompute架構
FusionCompute的優勢
虛擬化和物理資源進行統一管理
快速發放虛擬機(模版)