PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 電腦硬體討論群組 > 效能極限
帳戶
密碼
 

  回應
 
主題工具
carejollg
Regular Member
 

加入日期: Feb 2008
文章: 51
[軟體應用]軟、硬兼施下的虛擬化:Virtual Iron

◎標題:[軟體應用]軟、硬兼施下的虛擬化:Virtual Iron v4.2 Single Server Edition
◎前言:(提醒,文章內沒有效能測試,原因是使用個人電腦,而不是企業用主機)虛擬化目前看似軟體、硬體廠商在各彈各的調,雖然使用者應用VMware、VirtualBox、Virtual Server等軟體已經不陌生,但還難以明瞭(Full)Virtualization與Para-virtualization究竟有什麼差別,以及Intel VT-x/AMD Pacifica等硬體指令集效果到底如何。
虛擬化軟體供應商之一的Virtual Iron商業版率先讓VT-x/Pacifica支援Para-virtualization中的Hypervisor,在軟體、硬體雙管齊下,宣稱能使虛擬機器達到理論中提到的「Native VM」,只是在x86虛擬化尚未成熟之際,還需要市場考驗。無論如何,這是極待突破的里程碑,因為x86虛擬化一直在嘗試達到與真實主機相近(也就是Native)的運作效率和資源使用率,特別在x86架構並不適合用於虛擬化的難題下,僅依靠軟體的協助,只能做到Para-virtualization。直到VT-x/Pacifica硬體輔助指令,才從Para-virtualization進一步提升到Native VM,但這兩種技術在原理上是相似的,差別是後者加上硬體輔助指令。
有趣的是,Virtual Iron是根基於Xen而來的,範例所使用的Virtual Iron Single Server Edition在安裝過程甚至與Citrix XenServer相近,卻比Xen先宣佈Native VM的應用。
不過,Virtual Iron知名度並不如VMware、VirtualBox或Xen等來得高,藉此論壇簡單介紹安裝Virtual Iron的過程,以及相關的技術供網友參考。此外,Virtual Iron與XenServer在安裝過程中相似,已經有XenServer應用基礎用戶可以跳過這篇文章。

◎步驟:硬體配置(Virtual Iron Single Server Edition參考架構)
Virtual Iron Concept.tif
(圖說)從概念圖可以瞭解Virtual Iron屬於Para-virtualization,其Hypervisor具備類似Host OS的核心功能。
Virtual Iron Reference Architecture.tif
(圖說)實際部署的主機。因為是參考用,所以採用個人電腦與網路設備。請注意,伺服器端的硬碟資料會被格式化,安裝前應先備份資料。client端則沒有此顧慮。

請準備兩部主機。
一部做為Virtual Iron伺服器(稱為Managed Node),並安裝Virtual Iron Single Server Edition。在硬體上特殊需求要支援Intel VT-x/AMD Pacifica指令集主機。
另一部遠端管理主機(Virtualization Manager client),只要一般個人電腦或筆記型電腦,並安裝Windows XP以上的作業系統即可。
兩部主機透過10/100 Ethernet Switch連接,並設定內部網路IP、Netmask等。

◎步驟:安裝Virtual Iron v4.2 Single Server Edition
Virtual Iron官方網站下載Single Server Edition試用版,網址:
http://www.virtualiron.com/products/Free_Download.cfm
下載後是一個檔名類似「VirtualIronSingle4214.iso」影像檔,以燒錄軟體燒錄後就是一張安裝光碟。(請注意,安裝時會格式化儲存設備,建議應備份檔案)
安裝光碟放入Virtual Iron伺服器的光碟機中,系統會自動掃瞄硬體與儲存系統(如果沒有SAN/iSCSI,就會列出個人電腦上的硬碟)。如果硬體相容檢查沒發生問題,伺服器安裝過程自動化進行,只有在使用者帳戶與網路等處需要設定參數,其他都不用人工介入。
因為伺服器安裝自動化且沒有可著墨之處,也難以截圖,所以暫且略過。
最後會出現伺服器所在的IP的文字(文字模式介面,常使用Linux網友應不陌生),也就是範例中的「http://192.168.10.10」,表示安裝完成。

◎步驟:安裝Virtualization Manager client
改換到另一部個人電腦並以區域網路連接Virtual Iron伺服器後,在FireFox/IE瀏覽器網址欄位中鍵入伺服器所在的IP:http://192.168.10.10。連接無誤後會出現以下畫面:
Manager_1.tif
(圖說)點選圖中的「Administration Manager」進入管理介面(加入試用版授權等)或「Virtualization Manager」進入虛擬機器管理與安裝。

Manager_2.tif
(圖說2)點選「Virtualization Manager」後,出現安裝JNLP檔案的提示,因為管理介面是Java所寫的。這裡選擇「開啟方式」。
Manager_3.png
(圖說3)使用者認證畫面,請輸入管理員帳號與密碼,也就是在安裝Virtual Iron伺服器時設定的管理員資料。
Manager_4.tif
(圖說4)等待Virtualization Manager初始化,約1分鐘後出現圖中畫面。
畫面中紅框部份的樹狀結構,在企業應用的伺服器集中管理有其特別意義,與Citrix XenServer、VMware ESX Server等應用概念相似,但在單機上先不談論。
Manager_5.png
(圖說5)如果選擇的是「Administration Manager」,輸入帳號與密碼後,便出現圖中的管理介面。前面步驟與「Virtualization Manager」相同。

◎步驟:設定虛擬儲存裝置
Virtual Iron在企業應用中,硬體資源是集合成Resource Center統一配置的,每一部伺服器則稱為節點(Managed Node)。這樣的應用情境下,為了不讓硬碟I/O形成運作瓶頸,儲存裝置通常是SAN、iSCSI等設備,所以在Virtual Iron中安裝虛擬機器之前,必須先指定虛擬磁碟位置與容量。這種步驟與VMware GSX Server/Workstation、VirtualBox等先設定虛擬機器,再決定虛擬磁碟的概念不同。

Manager_6.tif
(圖說6)Virtual Iron中虛擬機器所使用的虛擬磁碟,來自於Disk Group下的Logical Disks,與VMware GSX Server/Workstation單機應用時的local disk不同。依據圖中說明即可。
Manager_7.tif
(圖說7)Disk Group可隨意命名,例如Disk Group_uBuntu,或保持預設值也可以。
Manager_8.tif
(圖說8)左側列出Virtual Iron所找到的儲存裝置,圖中是單機硬碟。請將此硬碟加入右側可配置磁碟的區域。
Manager_9.tif
(圖說9)完成後如圖所示,但還沒結束。目前只設定虛擬磁碟所使用儲存裝置的位置,接下來要配置磁碟空間。
Manager_10.tif
(圖說10)Local Disk可隨意命名,例如Logical Disk_uBuntu,或保持預設值。
Manager_11.tif
(圖說11)完成後如圖所示,到這個步驟後才開始安裝虛擬機器。

◎步驟:安裝虛擬機器(在Virtual Iron稱虛擬機器為Virtual Server)
Manager_12.tif
(圖說12)滑鼠點選Virtual Server Node,也就是圖中名為「carejollg」圖示,可自行改名。
企業應用於伺服器集中管理時,命名建議採用有意義的單字,方便管理員理解虛擬機器的分類與資源。
因為虛擬化時會將後端主機與儲存裝置統一集中分配,在這個管理介面會變得很抽象,不容易體會虛擬機器在真實硬體位置,管理員要花一些時間習慣。後續備份或V2V遷移時才不至於混亂。
Manager_13.tif
(圖說13)Virtual Server可隨意命名,建議與OS相關的單字,例如uBuntu_Server。或加上版本,例如多部Windwos Server,但不同Patch版。
Manager_14.png
(圖說14)因為範例中MA78GM-S2H只找到一部SCSI硬碟,無法辨識SATA上的兩部WD硬碟,所以這裡僅顯示第一項。
Manager_15.png
(圖說15)之前在這部磁碟機上設定Logical Disk,所以這裡也列出其名稱。
從命名可以快速理解uBuntu所在的虛擬機器位於哪一個Virtual Data Center→Virtual Server Node→Disk Group→Local Disks等階層關係。
不過這是抽象化的概念,真實的Node與Disk可能是由主機群與儲存池(Storage Pool)所混合組成的。
Manager_16.png
(圖說16)設定虛擬網路,網路卡的Mac Address可指定。
Manager_17.tif
(圖說17)選擇虛擬機器的OS種類。範例使用的uBuntu不在正式支援的名單,所以改選「Other Linux」。因為OS從光碟安裝,所以選擇使用Host主機的光碟機當開機碟。
Manager_18.png
(圖說18)設定虛擬機器使用的處理器數量與記憶體容量。
「Processor cap」是處理器預先保留的capacity,與「Priority」都是用於伺服器集中時,動態調整處理器的資源。例如在主機群中預留相當於2顆處理器的資源,但虛擬機器只使用60%,待高負載時才提高到90%。優先權也是類似的概念。
在多部虛擬機器的情境下,可以讓低負載的伺服器將運算資源配給高負載伺服器使用,讓負載平衡。
在此範例僅用預設值,記憶體則提升到1GB。
Manager_19.tif
(圖說19)虛擬機器設定完成,所有組態列在圖中右側區域。
接下來按下圖中的開機鈕後,請記得開啟虛擬機器的console視窗,如下圖所示。
Manager_20.png
(圖說20)虛擬機器的console視窗,這是另外打開的視窗,與Virtualization Manager所在的瀏覽器不在同一個視窗。
Manager_21.tif
(圖說21)虛擬機器安裝完成後,請記得將開機裝置改成虛擬磁碟開機,再按下圖中的開機按鈕。到此結束安裝過程簡介。

◎步驟:比較Virtual Iron與VMware GSX Server/Workstation管理介面
Manager_22.tif
(圖說22)Virtual Iron透過Virtualization Manager介面,並以瀏覽器與遠端的伺服器連接和管理虛擬機器,並且開啟另一個console視窗。
Manager_23.png
(圖說23)VMware GSX Server/Workstation則在單機介面完成管理與設定,使用同一視窗,但在ESX Server會與Virtual Iron相近。
習慣單機應用VMware單機版的用戶需要重新適應Virtual Iron的伺服器操作。
     
      
舊 2008-03-29, 02:23 PM #1
回應時引用此文章
carejollg離線中  
carejollg
Regular Member
 

加入日期: Feb 2008
文章: 51
(接上頁)結論:x86虛擬化尚未成熟,更需要市場驗證

◎結論:x86虛擬化尚未成熟,更需要市場驗證
範例中並沒有測試Virtual Iron宣稱的Native VM與真實主機的效能差異,以及VT-x/Pacifica在Para-virtualization如何減少效能損耗等(因為使用個人電腦),只是用來簡介Virtual Iron。即使是可供驗證的環境,就不是一般企業可負擔的費用(例如刀鋒伺服器、GbE以上網路與FC SAN儲存裝置等),所以虛擬化的隱藏成本可能比未虛擬化前來得高。

況且,目前Intel/AMD處理器所提供的指令集僅只於處理器部份,與虛擬化相關的還有記憶體管理(Intel EPT/AMD NPT)、File Management(Intel/AMD IOMMU)等,以及資訊安全的控管與風險,等待新一代的平臺才支援。軟體供應商則需要再更新功能,以整合硬體技術,短期內x86虛擬化還未成熟。(HP/Fujitsu/Unisys/IBM等在大型主機的虛擬化與文章中的不同,除了成熟度高,也經歷市場驗證)

在真實的虛擬化應用情境中,伺服器集中管理是博大精深的一門學問,不僅技術難度高、風險也不小,絕不是在軟體中安裝虛擬化軟體,並啟動虛擬機器這麼簡單。僅是各虛擬機器的負載平衡與動態調配,就需要事前緊密地評估與測試,這方面各家產品都還沒有統一準則可遵循。

此外,範例中用於伺服器的GA MA78GM-S2H除了SATA硬碟無法正確辨識外,因而改用SCSI硬碟,安裝Virtual Iron可正常運作。這其實是運氣好,Para-virtualization不同於(Full)Virtualization具備Host OS,所以在硬體相容性較低(新版已改善許多),企業應用可能考慮原廠測試過的主機,以及調校至資源最佳化的狀態。

在遠端安裝uBuntu時,client的滑鼠反應有些遲鈍,可能是10/100 Ethernet Switch或儲存系統是單機硬碟造成效能瓶頸,或者是2者共同造成的。過去另一個安裝的範例選擇Citrix XenServer,但改用GbE Ethernet Switch與4顆SCSI硬碟所組成的Raid 0儲存系統,主機則是MSI的雙Xeon伺服器,便沒有滑鼠遲鈍的問題。

至於人們常用Benchmark測試Intel VT-x或AMD Pacifica等硬體輔助指令的效能,這裡並不做這類測試。由於範例中的主機本身就不是企業用途,所以不具測試上的意義。此外,虛擬化並非測試出漂亮的Benchmark數據,真實環境下的先導運作(pilot run)可以測試出Benchmark無法察覺的問題,例如在伺服器集中管理時,資源的動態調配以及虛擬機器如何部署、負載平衡等,則仰賴管理員的經驗。
 
舊 2008-03-29, 02:27 PM #2
回應時引用此文章
carejollg離線中  
carejollg
Regular Member
 

加入日期: Feb 2008
文章: 51
(接上頁)◎補充1:microbenchmark測試

◎補充1:microbenchmark測試

VT-x.tif

在此還是提供網友一些官方的測試方式,例如Intel採用microbenchmark測試虛擬機器在entry/exit時,VMX Transcation與Latency Reductions數值。由於Intel VT-x會增加一個稱為VMX Root的特權空間(privilege space),Guest OS則在VMX Non-Root,因此Guest OS不用降為Ring 1而是保留在Ring 0,與真實主機時一樣。VT-x可以輔助VM entry/exit時,在VMX間切換時所降低的效能問題,虛擬機器的運作也較穩定。
在沒有硬體輔助指令時,VMX在Root與Non-Root間切換依賴Hypervisor這一層軟體負責。此時Hypervisor監控Guest OS所發出的特權指令(透過不斷地掃瞄記憶體內容),除了攔截並發出中斷外,並做出例外處理。在高負載伺服器集中時,軟體處理可能出錯,通常這時候虛擬機器沒有任何反應,所以難以察覺例外處理是否正常進行。VT-x/Pacifica只是讓這個過程更精確地執行,使虛擬機器更穩定,相對地效能較高。

◎補充2:虛擬機器分類

Privilege Rings.tif

以下是虛擬機器的簡略分類,文章中提到的Para-virtualization與圖中的Native VM在概念上是相同的。網友可以注意到Native VM中,Guest OS在Ring 0,但在另外2種VM則是Ring 1,也就是Guest OS會降低特權階層(De-privileged)。使得Guest OS所發出的特權指令得先在VMM中轉為Ring 0,再由VMM轉到Host OS所在的Ring 0,最後才到硬體。層層轉換不僅損耗寶貴的效能,也容易出錯,這是x86虛擬化迫切解決中的問題。
文章中提到資訊安全議題,在Native VM中反而突顯其重要性。從圖中可以看到此時的VMM處於Ring O,取得VMM管理權等於掌控硬體操作,這時Guest OS的防護幾乎是虛設。
目前已知Intel提出TXT(Trusted Execution Technology),以硬體加上TPM方式提供較安全的防護,但實際產品還沒出現在市場。

◎補充3:Virtual Iron中硬體資源元件

Components.png

文章中提過,Virtual Iron所有硬體都集中成Resource Center統一管理,包括主機與儲存裝置。這些資源再細分為Virtual Data Center,其中每一部虛擬機器(Virtual Iron稱為Virtual Server)則是節點(Node)。
這種資源配置,代表虛擬機器不一定侷限在某部實體主機上。以圖中5部主機所組成的Virtual Data Center,管理員僅知道其中負載多少的虛擬機器,但每一部虛擬機器的運算資源是5部主機所共同提供的。
將硬體資源抽象化管理的優點,除了具備較佳的擴充性,在於虛擬機器可以快速地在Virtual Data Center中轉移,不用擔心硬體本身所造成的隔離。同樣地,在同一個Resource Center下,Virtual Data Center也能快速地轉移,包括其下的虛擬機器群。
缺點是備份時,造成運算資源處於高負載下,動態調整哪些虛擬機器的資源變得困難。一般在未虛擬化前,伺服器通常有多餘的運算能力,所以備份時還不至於造成服務中斷,但虛擬化後可能受到其他虛擬機器難以理解的交互作用所影響,因為所有虛擬機器共用底層硬體的資源,導致結果難以預測。

◎補充4:Virtual Storage

Virtual Storage.png

圖中簡略說明Virtual Iron的Virtual Storage階層關係,從Disk Group→Logical Disk→Virtual Hard Disk,同樣地具備較佳的擴充性與效能。

此文章於 2008-03-29 02:40 PM 被 carejollg 編輯.
舊 2008-03-29, 02:34 PM #3
回應時引用此文章
carejollg離線中  
carejollg
Regular Member
 

加入日期: Feb 2008
文章: 51
完整文章的PDF版本下載處

這篇文章的PDF版本,放在下列網址:

Virtual Iron_4.2.pdf

請網友指教
舊 2008-03-29, 03:48 PM #4
回應時引用此文章
carejollg離線中  
carejollg
Regular Member
 

加入日期: Feb 2008
文章: 51
Virtual Iron目前支援的虛擬機器

Virtual Iron目前支援的虛擬機器,也就是Guest OS種類:

* RHEL 3 U8 32-bit
* RHEL 4 U4 and U5 AS 32-bit and 64-bit
* CentOS 4 U4 and U5 32-bit and 64-bit
* RHEL 5 U0 32-bit and 64-bit
* CentOS 5 U0 32-bit and 64-bit
* SUSE Linux Enterprise Server 9 SP3 32-bit and 64-bit
* SUSE Linux Enterprise Server 10 SP1 32-bit and 64-bit
* Windows 2000 SP4 32-bit
* Windows XP SP2 Professional 32-bit
* Windows Server 2003 SP2 32-bit and 64-bit
* Windows Vista 32-bit

文章中安裝uBuntu 7.10當成範例,在安裝選項中是選擇「Other Linux」。

Windows Vista 64-bit與Windows Server 2008還不支援。
舊 2008-03-29, 04:06 PM #5
回應時引用此文章
carejollg離線中  
anigi
Regular Member
 
anigi的大頭照
 

加入日期: Feb 2003
您的住址: 地球
文章: 64
你在洗版嗎??

賺文章數也不是這種方法吧...

想PO教學直接PO連結上來即可,你弄成這樣

很多人連看都不想看!!
__________________
簽名檔這些有的沒的東西,我不需要
舊 2008-03-30, 01:24 AM #6
回應時引用此文章
anigi離線中  
carejollg
Regular Member
 

加入日期: Feb 2008
文章: 51
因為發表文章有字數的限制,超過就不能發布了,所以文章被切割成多篇;

另外,貼圖時也無法在文章的預覽中看到正確的圖形,

所以改用超連結,這些不便之處都請網友包涵,我沒有賺文章數的意思。
舊 2008-03-31, 01:05 AM #7
回應時引用此文章
carejollg離線中  
Aegean
Basic Member
 

加入日期: Mar 2006
文章: 13
Thumbs down

引用:
作者anigi
你在洗版嗎??

賺文章數也不是這種方法吧...

想PO教學直接PO連結上來即可,你弄成這樣

很多人連看都不想看!!


對熱心網友的分享不需要這樣潑冷水吧
舊 2008-03-31, 04:23 AM #8
回應時引用此文章
Aegean離線中  
pcboy2
Power Member
 

加入日期: Mar 2003
文章: 648
Google "Virtual Iron v4.2 Single Server Edition" 居然只有一篇
請問文章來源 ? 網路上可以直接看到 ?

邊看文章 邊點圖片 看有些累

或者做成 word 檔案, 上傳到 http://www.badongo.com/
大家再去下載看會比較輕鬆點

引用:
你在洗版嗎??


把圖片網址逐一貼入文章中是很辛苦的, 要洗版灌水就不會這樣了
舊 2008-03-31, 11:49 AM #9
回應時引用此文章
pcboy2離線中  
cmwang
Elite Member
 

加入日期: May 2002
您的住址: 板橋
文章: 5,105
鵝來贊助一下好了,下圖是在一台支援SVM的X2-3600+2GB RAM上用VirtualBox開3個guest在同一個Internal LAN,一個擔任DHCP/TFTP/NFS server(就是當storage),另外兩個guest都是以boot from LAN的方式自storage取得約90MB的image file(tgz檔,解開後約250MB),解開到其ramdisk上,再chroot到ramdisk上執行,此時解user time應該是主要解tgz所須時間,sys time應該可以視為處理網路I/O所須時間(或許可以拿來觀察VT的效果)....



由圖中可以看到,上側的guest(有開VT/AMD-V)只要約14sec(BTW,用不同實體主機以GbE對接做同樣的測試只要不到10sec),而下側的guest(沒開VT/AMD-V)就要約38秒了,可能還算有用吧,但是VirtualBox的manual上還是建議不要開VT/AMD-V,不知其考量為何就是了 ....
舊 2008-03-31, 03:00 PM #10
回應時引用此文章
cmwang離線中  


    回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是05:55 AM.


vBulletin Version 3.0.1
powered_by_vbulletin 2025。