![]() |
PCDVD數位科技討論區
(https://www.pcdvd.com.tw/index.php)
- 效能極限
(https://www.pcdvd.com.tw/forumdisplay.php?f=18)
- - [軟體應用]軟、硬兼施下的虛擬化:Virtual Iron
(https://www.pcdvd.com.tw/showthread.php?t=786262)
|
---|
[軟體應用]軟、硬兼施下的虛擬化: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的伺服器操作。 |
(接上頁)結論: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無法察覺的問題,例如在伺服器集中管理時,資源的動態調配以及虛擬機器如何部署、負載平衡等,則仰賴管理員的經驗。 |
(接上頁)◎補充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,同樣地具備較佳的擴充性與效能。 |
完整文章的PDF版本下載處
|
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還不支援。 |
你在洗版嗎??
賺文章數也不是這種方法吧... 想PO教學直接PO連結上來即可,你弄成這樣 很多人連看都不想看!! |
因為發表文章有字數的限制,超過就不能發布了,所以文章被切割成多篇;
另外,貼圖時也無法在文章的預覽中看到正確的圖形, 所以改用超連結,這些不便之處都請網友包涵,我沒有賺文章數的意思。 |
引用:
對熱心網友的分享不需要這樣潑冷水吧 :unbelief: :tu: |
Google "Virtual Iron v4.2 Single Server Edition" 居然只有一篇
請問文章來源 ? 網路上可以直接看到 ? 邊看文章 邊點圖片 看有些累 或者做成 word 檔案, 上傳到 http://www.badongo.com/ 大家再去下載看會比較輕鬆點 引用:
把圖片網址逐一貼入文章中是很辛苦的, 要洗版灌水就不會這樣了 |
鵝來贊助一下好了,下圖是在一台支援SVM的X2-3600+2GB RAM上用VirtualBox開3個guest在同一個Internal LAN,一個擔任DHCP/TFTP/NFS server(就是當storage:p),另外兩個guest都是以boot from LAN的方式自storage取得約90MB的image file(tgz檔,解開後約250MB:ase),解開到其ramdisk上,再chroot到ramdisk上執行,此時解user time應該是主要解tgz所須時間,sys time應該可以視為處理網路I/O所須時間(或許可以拿來觀察VT的效果:p)....
![]() 由圖中可以看到,上側的guest(有開VT/AMD-V)只要約14sec(BTW,用不同實體主機以GbE對接做同樣的測試只要不到10sec),而下側的guest(沒開VT/AMD-V)就要約38秒了,可能還算有用吧,但是VirtualBox的manual上還是建議不要開VT/AMD-V,不知其考量為何就是了:think: :think: .... |
所有的時間均為GMT +8。 現在的時間是01:59 AM. |
vBulletin Version 3.0.1
powered_by_vbulletin 2025。