KVM與FusionCompute簡介

KVM概述
1、KVM簡介:
一、在開源的虛擬化技術中 KVM是全虛擬化,而Xen同時支持半虛擬化和全虛擬化。
二、KVM是Kernel-based Virtual Machine的簡稱(基於內核的虛擬機)是一種Ⅱ型全虛擬化
三、kVM 其就是Linux的一個內核模塊該內核模塊使得 Linux 變成了一個 Hypervisor(虛擬機監視器)
四、KVM自從 Linux 2.6.20 起就做爲一模塊被包含在yu Linux 內核中前端

當Linux系統安裝了KVM模塊後會增長三種運行模式後端

  • ·Guest Mode:此模式主要是指虛擬機,包括虛擬機的 CPU、內存、磁盤等虛擬設 備,該模式被置於一種受限的 CPU 模式下運行; 
  • User Mode:用戶空間,此模式下運行的主要是 QEMU,它用來爲虛擬機模擬執行 I/O 類的操做請求;
  • Kernel Mode:內核空間,在此模式下能夠真正的操做硬件,當 Guest OS 執行 I/O 類操做或特權指令操做時須要向用戶模式提交請求,而後由用戶模式再次發起 硬件操做請求給內核模式從而真正操做硬件。

2、KVM工做原理:
在KVM 中,虛擬機被實現爲常規的 Linux 進程,由標準 Linux 調度程序進行調度;虛機的每一個虛擬 CPU 被實現爲一個常規的 Linux 進程。這使得 KMV 可以使用 Linux 內核的已有功能。可是,KVM 自己不執行任何硬件模擬,須要客戶空間程序經過 /dev/kvm 接口設置一個客戶機虛擬服務器的地址空間,向它提供模擬的 I/O,並將它的視頻顯示映射回宿主的顯示屏。目前這個應用程序是 QEMU安全

KVM虛擬化 = KVM內核模塊 + /dev/kvm + QEMU
KVM與FusionCompute簡介服務器

 

  • kvm.ko內核模塊
    KVM 內核模塊是 KVM 虛擬機的核心部分,其主要功能是初始化 CPU 硬件,打開虛擬化模 式,而後將 Geust Machine 運行在虛擬機模式下,並對虛擬客戶機的運行提供必定的支持。 KVM 內核模塊中,實現虛擬化功能的是 kvm.ko,還包括一個和處理器強相關的模塊如 kvmintel.ko 或 kvm-amd.ko kvm.ko模塊在用戶空間可經過系統調用ioctl()與內核中的kvm模塊交互,從而完成虛擬機的建立、啓動、中止、刪除等各類管理功能網絡

  • /dev/kvm
    KVM 自己不能實現任何模擬功能,它僅僅是提供了一個/dev/kvm 接口,這個接口可被宿主機用來主要負責 vCPU 的建立、虛擬內存的地址空間分配、vCPU 寄存 器的讀寫以及 vCPU 的運行 做用:將不一樣的GuestOS之間的地址隔離,或將GuestOS和HostOS(VMM)之間的地址隔離架構

  • Qemu架構:
    QEMU 本來不是 KVM 的一部分,它是一個通用的開源的使用純軟件來實現的虛擬 化的模擬器,Qemu 是純軟件實現的虛擬化模擬器,幾乎能夠模擬任何硬件設備,咱們最熟悉的就是可以模擬一臺可以獨立運行操做系統的虛擬機,虛擬機認爲本身和硬件打交道,但實際上是和 Qemu 模擬出來的硬件打交道,Qemu 將這些指令轉譯給真正的硬件。KVM 是硬件輔助的虛擬化技術,主要負責 比較繁瑣的 CPU 和內存虛擬化,而 Qemu 則負責 I/O 虛擬化,二者合做各自發揮自身的優點,相得益彰QMEU 自己能夠模擬 CPU 和內存,在 KVM 中,只使用 QEMU 來模擬 IO 設備,KVM 的開發者將其進行了改造,造成了 QEMU-KVM。。

QEMU 是一個軟件實現 I/O 虛擬化的模擬工具,性能較差,有時候一些應用對網卡速率有要求時,就不能再使用 QEMU 了,咱們須要引入一個新的技術,它 就是 Virtio,是用了 Virtio
KVM與FusionCompute簡介
一、 虛擬機中的磁盤設備發起一次 IO 操做請求;
二、 KVM 模塊中的 I/O Trap Code(I/O 捕獲程序)將這個 IO 操做請求捕獲到,進行 相應的處理,而後將處理後的請求放到 I/O 共享頁中;
3 、KVM 模塊會通知 QEMU,告訴它有新的 I/O 操做請求放到了共享頁中;
4 、QEMU 收到通知後,到共享頁中獲取該 I/O 操做請求的具體信息;
5 、QEMU 對該請求進行模擬,同時根據 I/O 操做請求的信息調用運行在內核態的設備 驅動,去進行真正的 IO 操做;
6 、經過設備驅動去對物理硬件執行真正的 IO 操做;
7 、QEMU 將執行後的結果返回到共享頁中,同時通知 KVM 模塊已完成了這次的 I/O 操做;
8 、I/O 捕獲程序從共享頁中將返回的結果讀取出來;
9 、I/O 捕獲程序將操做結果返回給虛擬機;
十、 虛擬機的將結果返回給發起操做的應用程序。ide

使用 Virtio 的時候,具體的操做流程以下
KVM與FusionCompute簡介
1 、第一步也是由虛擬機發起 I/O 操做請求;
2 、第二步的時候和使用默認模型不同,這個 I/O 操做請求不會通過 I/O 捕獲程序, 而是直接之前後端的形式放到環形緩衝區,同時 KVM 模塊通知後端驅動; 3 QEMU 到環形緩衝區獲取到操做請求的具體信息;
4 、後端驅動直接調用真實的物理設備驅動進行具體的 I/O 操做;
5 、由真實的設備驅動完成這次操做;
6 、QEMU 將完成結果返回到環形緩衝區,而且由 KVM 模塊通知前端驅動;
7 、前端驅動從環形緩衝區獲取到這次 I/O 操做的結果;
8 、前端驅動將結果返回給具體發起該操做的應用程序。工具

3、FusionCompute 簡介性能

1)華爲FusionSphere虛擬化套件是業界領先的虛擬化解決方案,可以幫助客戶帶來以下的價值,從而大幅提高數據中心基礎設施的效率。操作系統

  • 幫助客戶提高數據中心基礎設施的資源利用率
  • 幫助客戶成倍縮短業務上線週期
  • 幫助客戶成倍下降數據中心能耗
  • 利用虛擬化基礎設施的高可用和強恢復能力,實現業務快速自動化故障恢復,下降數據中心成本和增長系統應用的正常運行時間
    2)FusionSphere虛擬化解決方案由服務器虛擬化產品(FusionCompute)、虛擬化管理軟件(FusionManager)、備份軟件(eBackup )和容災軟件(UltraVR)組成
    3)FusionCompute:是雲操做系統軟件,主要負責硬件資源的虛擬化,以及對虛擬資源、業務資源、用戶資源的集中管理。它採用虛擬計算、虛擬存儲、虛擬網絡等技術,完成計算資源、存儲資源、網絡資源的虛擬化。同時經過統一的接口,對這些虛擬資源進行集中調度和管理,從而下降業務的運行成本,保證系統的安全性和可靠性,協助運營商和企業構築安全、綠色、節能的雲數據中心能力
    FusionCompute產品架構

KVM與FusionCompute簡介

  • CNA英文全稱: Compute Node Agent, CNA部署在須要虛擬化的服務器上。

  • VRM英文全稱: Virtual Resource Management, VRM能夠部署成VM或者部署在物理服務器上; VRM對外提供網頁操做界面供管理維護人員。

FusionCompute 的架構和 KVM 很是類似,其中 VRM 至關於 KVM 中的管理工具,管理 員和用戶能夠經過圖形化的 Portal 對 FusionCompute 進行管理和使用。它是基於 Linux 操做 系統的,因此咱們登陸 VRM 後,不少 Linux 的命令可使用。CNA 至關於 KVM 中 QEMU+KVM 模塊,主要提供了虛擬化功能,一般是以集羣的方式部 署,將集羣內的計算、存儲和網絡資源虛擬化成資源池供用戶使用。一樣,CNA 也是基於 Linux 操做系統的KVM與FusionCompute簡介

相關文章
相關標籤/搜索