紅帽虛擬化RHEV-架構簡介

weixin_33766168發表於2016-03-23

目錄

軟體環境

  • 系統
    • RHEL 6.4
  • 軟體
    • RHEV 3.1

RHEV簡介

RHEV(Red Hat Enterprise virtualization)紅帽企業虛擬化,是一個伺服器虛擬化的管理平臺。由RHEV-M(Manager)、RHEV-H(Hypersior)和儲存裝置組成,能夠簡易、集中的對KVM虛擬機器進行建立、刪除、遷移、快照等操作。實現了企業伺服器物理資源的充分使用,是一種非常適合中小型企業的虛擬化解決方案。
虛擬化的出現顛覆了企業的傳統叢集架構,它提供了更優秀(效率高、成本低)的企業應用服務部署方案。企業中的虛擬化技術多應用在伺服器虛擬化方向,E.G. 將企業的WEB、DB、SAP部署在虛擬化的伺服器中。

RHEV支援的功能
- 線上遷移(200ms之內完成遷移–>將VM的實體記憶體遷移即完成,但遷移過程中不能有過多的I/O操作)
- 高可用
- 系統計劃排程(自動遷移–>設定CPU負載閥值)
- 電源管理
- 模版管理
- 快照(3.1支援1張快照,3.2以上支援多張快照)

優點
1. 硬體資源的充分利用,讓一臺伺服器能夠執行、搭建多種OS和應用服務
2. 便於集中的管理KVM虛擬機器
3. 靈活的系統遷移,H端之間虛擬機器的遷移、物理機到虛擬化之間的遷移、虛擬機器到雲架構之間的遷移。很好的保證了伺服器的高可用
4. 價格便宜,是VMWare的1/10
千好萬好就是兩個字:省錢

缺點
1. 管理的物理伺服器數量少,每臺M端只能管理500臺以內的H端伺服器
2. 功能細節實現弱
3. 使用者體驗一般

但是即便如此RHEV還是可以佔有一定的市場,RHEV主要側重大規模的企業虛擬化部署和IDC中心等應用環境。最重要的是其價效比受到了非常多中小企業的擁護。(好感人)

RHEV與KVM的區別

KVM(Kernel-based Virtual Machine)基於核心的虛擬機器,是一個開源的系統虛擬化模組。
常常有人會將RHEV和KVM混為一談,其實兩者之間並不能作等號。RHEV是企業虛擬化解決方案,即虛擬機器的集中管理平臺。RHEV能夠面向多臺伺服器來組成虛擬化平臺架構。而KVM簡而言之就是個人PC上的虛擬機器軟體,在PC中充當著虛擬機器的VMM(Virtual Machine Manager)。RHEV包含了KVM得實現。

RHEV的組成

一個RHEV虛擬化平臺由RHEVM+RHEVH+Storage組成。

這裡寫圖片描述

RHEV-M(Manager)

是RHEV的集中管理介面控制檯,負責控制、管理虛擬化平臺,能夠管理VM、Disk、Image,進行高可用設定,建立虛擬機器模板、快照等,這些都可以通過RHEV-M提供的web介面來完成。注意:RHEV-M本身並不執行VM,僅提供管理功能。RHEV-M能夠管理兩種不同型別的H端實現。
一個RHEV-M最多可以管理500個RHEV-H,但是Redhat通過實踐後建議一個M端管理200個H端為最優配比。
RHEV-M的硬體需求

最低要求 RedHat建議
雙核CUP 4核CPU
4G記憶體 16G記憶體
25G磁碟空間 50G以上磁碟空間
千兆網路卡 光纖

RHEV-H(Hypervisor 虛擬機器管理程式)

RHEV-H是一個能夠被RHEV-M連線並管理的Hypervisor,在RHEV中提供運算體的功能。RHEV-H端具有兩種實現:

  1. 直接安裝包含了Hypervisor程式碼的微型作業系統。是一個專為RHEV-H端設計的微型作業系統,能夠更加充分的使用H端伺服器的物理資源,這也是RedHat官方推薦的做法。
  2. 在RHEL HOST上安裝Hypervisor軟體,將已有的RHEL HOST配置成為RHEV-H端。這使得在現有RHEL HOST環境中部署RHEV變得更加容易。如果你想從RHEV管理執行在RHEL(H端)上的虛擬機器,可註冊RHEL伺服器到RHEV-M控制檯。

RHEV-H提供了CPU、記憶體、磁碟等物理資源來執行虛擬機器,簡而言之就是虛擬機器的載體。若使用Hpyervisor微型系統來實現H端,只需要佔用非常少的物理資源,它只包含了RHEL中執行虛擬機器所需程式碼的一個子集。這個Hypervisor的基礎檔案系統只有100MB,並且執行在記憶體中來避免對基礎映象造成改變。而且這樣的H端會強制開啟專用的安全增強型SELinux以及防火牆策略,所以只需要較少的補丁和維護就能確保其安全性。

Hypervisor最重要的功能:就是翻譯虛擬機器中發出的敏感指令(e.g. shutdown/reboot等)。當Hypervisor接受到敏感指令時,就能判斷出此指令是由真機的還是虛擬機器發出的。如果是虛擬機器發出的話,Hypervisor就會捕獲敏感指令並翻譯後交由真機CPU執行虛擬機器相應的操作,避免真機的CPU接收並錯誤執行。

Hypervisor的能力

機器型別 CPU數量 記憶體大小
HOST 物理CPU最多支援160顆 記憶體最大支援2TB
VM VCPU最多支援160顆 記憶體最大支援2TB

從上面的對比可以看出RHEV的虛擬機器的效能在規模足夠大的時候,是可以非常的接近真機的。

儲存

RHEV除了支援專業的儲存裝置之外,也可以使用ISCSI、NFS等儲存方式,來為虛擬化平臺提供Data和ISO等儲存域。

RHEV的架構

這裡寫圖片描述

LDAP/IPA/AD

RHEV可以設定多種擁有著不同許可權的角色,通過為不同的使用者指定角色來實現使用者許可權限制。使用LDAP/IPA(Linux)、AD(Window)是提供使用者的認證體系。

Web Service

RHEV提供了多種型別的API介面,其中最常用的就是供管理員使用的RHEV管理介面Administration Portal和供普通使用者使用的虛擬機器應用介面User Portal。當然RHEV還暴露了REST API和CLI,提供給開發人員。

PostgreSQL

PostgreSQL資料庫主要用於儲存虛擬機器的狀態、模板、快照、報表等資訊。注意:PostgreSQL資料庫並不用於儲存虛擬機器。虛擬機器自身的資料存存放在專用儲存裝置火ISCSI伺服器中。

VDSM

RHEV-M使用VDSM(虛擬桌面伺服器管理器)與RHEV-H通訊。VDSM是位於Hypervisor之上的管理代理,它促進了RHEV-M管理控制檯以及RHEV-H端的通訊。VDSM同樣還允許RHEV-M管理RHEV-H端中的虛擬機器以及儲存,收集有關主機及客戶機的效能統計資料。但是VDSM不能與libvirt同時執行。libvirt是管理RHEL虛擬環境KVM的類庫指令。注意:如果你正在規劃RHEV的實施,一定要確保libvirt在RHEV管理的所有H端中都是無效的。否則,libvirt和VDSM都不能正常執行。

JBoss

JBoss作為RHEV的中介軟體是連線其他各元件的中間樞紐,能夠在不同元件間收集資訊、傳遞資訊。JBoss是SOA面向服務架構的,它通過在RHEV中不同的元件(功能單元)之間定義良好的介面和契約,使得不同的元件之間可以聯絡起來。這些介面是採用中立的方式進行定義的,介面獨立於實現服務的硬體平臺、OS和程式語言。SOA能夠讓這些構建在各種系統中的元件可以使用一種統一和通用的方式進行互動。

相關文章