xen虛擬化技術
虛擬化技術的分類:
(1) 模擬:Emulation:
Qemu,PearPC,Bochs
(2) 完全虛擬化:Full Virtualization,Native Virtualization
HVM
VMware Workstation,VirtualBox,VMWare Server,Parallels Desktop,KVM,XEN
(3) 半虛擬化:ParaVirtualization
GuestOS:知曉自己是執行Virtualization
Hypercall
(4) OS級別虛擬化:
將使用者控制元件分割為多個,彼此間互相隔離;
容器級虛擬化
OpenVZ,LXC(LinuX Container),libcontainer,Virtuozzo,Linux V Servers
(5) 庫級別虛擬化
WINE
Type-I,Type-II
IaaS:Infrastructure,基礎架構服務
PaaS:Platfrom,平臺即服務
Xen:
劍橋大學,開源VMM
Xen組成部分: (1) Xen Hypervisor 分配CPU、Memory、Interrupt (2) Dom0 特權域,I/O分配 網路裝置 net-front(GuestOS),net-backend 塊裝置 block-front(GuestOS),block-backend Linux Kernel: 2.6.37:開始支援執行Dom0 3.0:對關鍵特性進行了優化 提供管理DomU工具棧 用於實現對虛擬機器進行新增、啟動、快照、停止、刪除等操作; (3) DomU 非特權域,根據其虛擬化方式實現,有多種型別 PV:半虛擬化 HVM:硬體輔助虛擬化
Xen的PV技術:
不依賴於CPU的HVM特性,但要求GuestOS的核心做出修改以知曉自己運行於PV環境;
運行於DomU中的OS:Linux(2.6.24+),NetBSD,FreeBSD,OpenSolaris
Xen的HVM技術:
依賴於Inter VT或AMD AMD-V,還要依賴於Qemu來模擬IO裝置;
運行於DomU中的OS:幾乎所有支援此X86平臺的;
PV on HVM:
CPU為HVM模式執行
IO裝置為PV模式執行
運行於DomU中的OS:只要OS能驅動PV介面型別的IO裝置;
net-front,blk-front
Xen的工具棧:
xm/xend:在Xen Hypervisor的Dom0中藥啟動xend服務
xm:命令列管理工具,有諸多子命令;
create,destroy,stop,pause...
xl:基於libxenlight提供的輕量級的命令列工具棧;
xe/xapi:提供了對xen管理的api,因此多用於cloud環境,Xen Server,XCP
virsh/libvirt:
XenStore:
為各Domain提供的共享資訊儲存空間,有著層級結構的名稱空間,位於Dom0
Para Virt
Xen Para-virtualization Architecture
xen工具:
xm vs xl:
libvirtd管理工具:
xen工具棧: