虛擬 IO 服務器(VIOS)和 IBM i

轉載於:http://www.ibm.com/developerworks/cn/ibmi/systemmaga/4/i-cn-vios/index.html

Power 主機上的虛擬化應用,簡單闡述虛擬 IO 服務器的功能,用途,優點,以及虛擬 IO 服務器在高級虛擬化技術的作用。舉例說明虛擬 IO 服務器與 IBM i 分區直接互聯特性。


引言

隨着信息化技術不斷髮展,各個企業 IT 基礎架構也在不斷朝向虛擬化,大數據,雲計算等精簡,整合的趨勢發展。虛擬化技術就顯得尤爲重要。今天要給大家介紹的是 Power 服務器虛擬化技術中的一小部分虛擬 IO 服務器,簡稱 VIOS。之後會圖例說明虛擬 IO 服務器和 IBM i 互聯的一些技術要點。

爲了使大家更好的瞭解虛擬 IO 服務器,我們從虛擬 IO 服務器的底層概念 PowerVM 着手。PowerVM 的概念說的簡單來講就是 IBM Power 主機的虛擬化技術。通過這項虛擬化技術,能夠使我們更靈活的創建 AIX,IBM i 及 Linux 應用環境,PowerVM 是介於操作系統和底層硬件之間的技術層,如(圖 1)。

圖 1. IBM Power 服務器虛擬化技術位置示意圖
圖 1. IBM Power 服務器虛擬化技術位置示意圖

PowerVM 爲 IBM Power 服務器和 blade 服務器提供工業化的虛擬化解決方案,並且 PowerVM 是一個龐大的家族,有諸多虛擬化技術,如 Hypervisor、微分區、動態內存共享、共享以太網適配器、動態分區遷移等等,如(圖 2),用戶可以根據自己的實際需求,選擇性的使用這些技術用來服務於客戶分區,PowerVM 有 3 大版本,精簡版、標準版和企業版,不同版本的虛擬化功能也有很大差別,具體可參考文章結尾處文檔。PowerVM 能夠針對於客戶分區來虛擬化 Power 主機的處理器、內存、存儲及 I/O 資源,使我們的 Power 主機得以充分的利用,換言之,使我們的每一分錢都有其用武之地。

IBM Power 服務器的虛擬化技術組成及架構

圖 2. IBM Power 服務器的虛擬化技術主要組成
圖 2. IBM Power 服務器的虛擬化技術主要組成

虛擬 IO 服務器是 PowerVM 虛擬化技術的重要組成部分,既是一個軟件應用,也是 Power 主機上的一個獨立分區,虛擬 IO 服務器可以運行在虛擬化標準特徵被激活的 Power5 或者 Power5 以後的任意型號的 Power 服務器上。虛擬 IO 服務器爲其它一個或多個客戶分區提供虛擬存儲及網絡資源。通過使用虛擬 IO 服務器,我們可以充分使用 Power 主機的資源,把除內存和 CPU 以外的所有資源分配給 VIOS 管理,然後根據客戶分區不同需求,爲其提供相應的網絡及存儲資源。當然,我們也可以藉助虛擬 IO 服務器,爲一些更復雜的 PowerVM 的虛擬化技術提供必要的技術支持,例如,活動分區遷移(LPM)以及 VMControl 實現的分區快速部署等。

既然虛擬 IO 服務器是一個獨立的邏輯分區,它就會佔用系統的資源,參考下面的表格,我們可以看到虛擬 IO 服務器所必須的最小的資源需求,參見表 1:

表 1. 虛擬 IO 服務器創建需求
資源 需求
硬件管理控制器 (HMC) 或者集成虛擬化管理器 (IVM) 對於創建客戶分區和分配系統資源來講,HMC 或者 IVM 是必須的
存儲適配器 至少有一個存儲適配器
物理硬盤 至少 30GB,可以共享
以太網適配器 想用 SEA,至少需要一個以太網適配器
內存 對於 Power7 的 base 來講,至少需要 768M 內存
處理器 至少 0.05c 的處理器

我們通過一個實例說明創建虛擬 IO 服務器所需要的環境,處理器與內存資源。

表 2. 虛擬 IO 服務器創建例子
環境 處理器 內存
簡單環境 0.25c~0.5c 處理器 2GB
複雜環境 1c~2c 處理器 4GB
共享存儲池的環境 至少 1c 處理器 4GB

我們通過下面一張圖(圖 3)來了解一下虛擬 IO 服務器:

圖 3. 虛擬 IO 服務器架構示意圖
圖 3. 虛擬 IO 服務器架構示意圖

上面(圖 3)中,有 4 個客戶分區,一個虛擬 IO 服務器以及外部設備。

  • 客戶分區 1 部分:物理硬盤掛載於物理光纖適配器上,而物理光纖適配器是分配給虛擬 IO 服務器,由虛擬 IO 服務器進行管理,虛擬 IO 服務器建立虛擬 SCSI 通道與客戶分區進行數據交互,客戶分區 1 使用的硬盤也是虛擬 IO 服務器虛擬化後的硬盤。
  • 客戶分區 2 和 3 的部分:物理硬盤掛載於物理 SCSI 適配器上,而物理 SCSI 適配器同樣是由虛擬 IO 服務器管理,對於客戶分區 2,虛擬 IO 服務器爲其提供了兩個邏輯卷,體現在客戶分區 2 中就是兩塊虛擬的硬盤;對於客戶分區 3 的部分,虛擬 IO 服務器爲其提供的是兩個塊文件,體現在客戶分區 3 中同樣是兩塊虛擬的硬盤。
  • 客戶分區 4 的部分:這部分是一個複雜的應用場景,物理磁帶機掛載在物理 SCSI 適配器,物理硬盤掛載在物理光纖適配器,物理 SCSI 適配器和物理光纖適配器由虛擬 IO 服務器管理,在建立虛擬 SCSI 通道後與客戶分區 4 進行數據互通,我們看到在客戶分區 4 的部分中有虛擬 IO 服務器爲其創建的虛擬磁帶庫,體現在客戶分區中就是虛擬的磁帶機,還有就是通過虛擬 SCSI 適配器掛載的實際的物理硬盤。

通過上面虛擬 IO 服務器架構示意圖,我們可以看出,主機中的外設和硬盤都是掛載在物理 IO 適配器上,而相應的物理 IO 適配器都是分配給虛擬 IO 服務器統一管理,虛擬 IO 服務器通過虛擬化技術建立虛擬 SCSI 適配器,客戶分區通過虛擬 SCSI 適配器與虛擬 IO 服務器進行數據交互。我們需要注意的是,對於虛擬 SCSI 適配器,服務器端一直配置在 VIOS,客戶端一直配置在客戶分區,這樣,我們才能通過虛擬 IO 服務器對客戶分區提供相應的服務,具體的配置細節,我會在下面的虛擬 IO 服務器和 IBM i 互聯中做進一步闡述。

我們看到了虛擬 IO 服務器的多樣化連接方式以及爲客戶分區提供不同類型的虛擬資源,那麼虛擬 IO 服務器和傳統的 I/O 結構有什麼差異,他們之間的數據流向又是如何的呢?我們可以通過下面一張圖(圖 4)進行對比。左邊一張是傳統 I/O 結構圖,硬盤和外設掛載到 I/O 適配器上,通過 I/O 處理器連接到系統總線並與 CPU 和內存進行數據交互。右邊一張是虛擬 IO 服務器的結構圖,硬盤掛載到物理 I/O 適配器後,由虛擬 IO 服務器統一管理,虛擬 IO 服務器將物理適配器虛擬化後,經由虛擬適配器通過虛擬 SCSI 的 Hpervisor 層連接到客戶分區進行數據交互。

圖 4. 傳統架構與虛擬 IO 服務器架構對比圖
圖 4. 傳統架構與虛擬 IO 服務器架構對比圖

瞭解並對比了數據流向,可以使我們更好的理解虛擬 IO 服務器的工作原理。通過對比,我們也可以看出,虛擬化結構更簡潔,對資源的應用更充分。

虛擬 IO 服務器組件

下面讓我們熟悉一下虛擬 IO 服務器的兩個重要的組件共享以太網適配器(SEA)和集成虛擬化管理器(IVM)。

通常情況下,我們不會爲每個邏輯分區配置單獨的物理網卡,這樣做只會既費錢又佔空間,應用虛擬化的技術,我們會把實際的物理網卡分配給 VIOS,由 VIOS 把真實的物理網卡變成可以被各個客戶分區共享的網絡虛擬適配器 SEA,各個客戶分區通過 SEA 與物理網卡交互用來訪問外網,如下圖(圖 5):

圖 5. 共享以太網適配器示意圖
圖 5. 共享以太網適配器示意圖

值得注意的是,和主機以太網適配器(HEA)一樣,每個 SEA 最多支持 16 個客戶分區與其就行物理訪問。

下面我們介紹一下 VIOS 的另外一個重要組件,集成虛擬化管理器(IVM)。對於 Power 主機的硬件管理,通常我們會選擇 HMC(硬件管理控制器),既方便又快捷,只是 HMC 是一個獨立的硬件設備,需要計算成本。針對於企業簡單的 IT 架構,IBM 推出了單臺主機的管理方式,集成虛擬化管理器,IVM 是封裝在 VIOS 內部的,一起被打包的應用軟件,並在滿足具有虛擬化特徵,沒有被 HMC 管理和具有默認的工廠配置等三個條件時,被激活。在 IVM 啓用之後,可以完成諸如:分區創建,管理虛擬存儲器和虛擬以太網等相應操作,可以視同於一個小型的 HMC(硬件管理控制器),當然,它與 HMC 主要區別是 HMC 可以同時管理多臺 Power 主機,而 IVM 只能管理一臺物理主機,下圖是 IVM 的示意圖(圖 6)。

圖 6. 集成虛擬化管理器示意圖
圖 6. 集成虛擬化管理器示意圖

虛擬 IO 服務器技術支持

虛擬 IO 服務器是針對 IO 的虛擬化服務器,一些高級別的虛擬化技術,都需要藉助底層的數據交互爲其提供支持,下面簡單介紹一下 VIOS 支持的虛擬化技術動態內存共享(AMS)。如圖(圖 7):

圖 7. 動態內存共享示意圖
圖 7. 動態內存共享示意圖

從系統中單獨劃分出一部分物理內存做成內存池交由 Hypervisor 管理,不同的動態內存共享的客戶分區共享池中內存,分區定義的單個邏輯內存量不能超過內存池的大小,但邏輯內存總量可以超出內存池大小,當客戶分區出現內存過量使用的情況下,Hypervisor 會將內存分成兩個部分,一部分放在內存池中,另外一部分放到由虛擬 IO 服務器管理的分頁設備中,這就是動態內存共享的工作原理。當我們的業務發展超出之前的規劃時,短期解決內存不足的優良方案。

虛擬 IO 服務器和 IBM i

瞭解了虛擬 IO 服務器相應的概念,組成以及所能支持的高級別的虛擬化技術後,我們簡單看一下虛擬 IO 服務器和 IBM i 分區之間的互聯。當我們在 HMC 中建立分區的概要文件的時候,也就爲邏輯分區和虛擬 IO 服務器之間的聯繫建立了第一步。如下圖(圖 8)所示:

圖 8. 虛擬 IO 服務器和 IBM i 分區中配置文件的關係示意圖
圖 8. 虛擬 IO 服務器和 IBM i 分區中配置文件的關係示意圖

我們在建立 IBM i 邏輯分區概要文件的時候,虛擬 SCSI 選項中的虛擬適配器選項應爲客戶機,相應的虛擬 IO 服務器的虛擬適配器選項爲服務器,IBM i 邏輯分區和虛擬 IO 服務器使用的虛擬適配器應爲同一虛擬適配器,只是服務器端在虛擬 IO 服務器,客戶端在 IBM i 分區。虛擬 SCSI 配置完成後,指定 IBM i 分區加載初始程序的位置,如圖(圖 9):

圖 9. IBM i 分區啓動載入源示意圖
圖 9. IBM i 分區啓動載入源示意圖

IBM i 分區概要文件創建完成後,我們需要在虛擬 IO 服務器上爲我們的 IBM i 邏輯分區分配相應的虛擬硬盤以及網絡資源。如果出於性能的考慮,IBM i 分區也可以使用 Power 主機的邏輯主機以太網適配器(LHEA)的端口用於網絡應用,使用獨立的物理硬盤作爲存儲的應用。

結束語

使用虛擬 IO 服務器可以充分利用系統中的資源,針對 IO 的操作更加方便和快捷。邏輯分區與虛擬 IO 服務器之間服務關係更加明朗。隨着虛擬化技術的不斷髮展,也會有越來越多的外部設備可以被兼容並應用到邏輯分區之中,使邏輯分區更加豐富多彩。

參考資料

學習


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章