字體:  

巧妙運用 Virt-Manager 在RHEL5 Xen之中進行虛擬網路設定與管理

adj 發表於: 2008-1-03 21:24 來源: ADJ網路控股集團


不可諱言,「伺服器虛擬化」這門技術,當下對於多數企業而言,確實愈來愈有顯學的意味,此乃由於,伴隨企業資訊應用史一路演進至今,業已累積了滿坑滿谷的歷史包袱,而這些包袱彼此間的協同運作效率偏弱、資源使用效率不彰,連帶迫使企業資訊管理架構變成了複雜且難解的習題,再加上機房、能源等現實環境因子交相壓迫,在在鋪陳出虛擬化技術「趁亂崛起」的時空背景;因此,現在朝虛擬化技術高談闊論者,已不再僅止於VMware、XenSource或微軟等虛擬軟體供應者,就連CPU、甚或中介軟體廠商,也積朝向此一領域靠攏。

相信對於Red Hat Enterprise Linux(簡稱RHEL)作業系統稍有研究的人們,都已知道,其自從5.0版本開始,便已將Xen虛擬化軟體,內建於系統的Kernal之中,不像先前的RHEL 4.5僅支援Xen而未內建。

深究Xen的虛擬化技術核心,箇中最精采之處,著實可用「半虛擬化(Para-virtualization)」這個字眼一言以蔽之(註:在配合Intel VT或AMD-V等CPU虛擬化技術,亦可執行全虛擬化),其與諸如VMware Server及Workstations、抑或微軟Virtual Server的全虛擬化技術之間,最大的差別在於,它需要修改被虛擬化系統的核心,緊接著,所有攸關硬體資源的調度事宜,通通都透過Xen Hypervisor來運籌帷幄,藉由此一模式所造就的虛擬化執行效率,相對接近於裸機上的效能水準,比起全虛擬化強過許多。

儘管半虛擬化是1項相當出色的技術,但對於從前僅熟稔全虛擬化的人們,在進入此一全新應用領域之初,肯定都會碰上一大難題,亦即不知如何進行虛擬網路管理,縱使稍有認知,也可能為繁複的步驟而苦惱;緣於此故,本文特以Virt-Manager這個GUI工具為出發點,引領讀者進入RHEL5 Xen虛擬網路管理的實戰步驟,期能化繁為簡,輕鬆搞定這項艱難的任務。

而在進入RHEL5 Xen虛擬網路管理的實戰步驟之前,茲先以若干文字的鋪陳,提供予讀者一些基本概念,繼而對Xen的技術內涵有所掌握。

360°技術-半虛擬化

所謂半虛擬化(Para-virtualization),就好比作業系統的Supervisor一般,本身就如同OS,可在虛擬機器作業系統、底層硬體架構之間,居中負責溝通、調度,並支應虛擬機器所需之運算資源,故經常被稱之為Hypervisor,其道理便在於此;另外,人們經常聽聞的虛擬機器監視器(VMM)一詞,其所指的也是半虛擬化。

有別於全虛擬化,半虛擬化的Hypervisor,並不需要真實電腦的整套硬體資源進行虛擬化,而是透過抽象層次的介面來執行資源調度、溝通事宜,且其僅負責直接執行Guest OS,而非就完整的x86指令集加以虛擬化,故其運行虛擬機器的效率,會比全虛擬化要來得優異。

一窺Xen基本知識 躋身虛擬化實用殿堂

Xen是1款虛擬化軟體,其可同時支援半虛擬化、全虛擬化等模式,就算不在現今被炒得火熱的Hardware-assisted虛擬化技術基礎(譬如Intel VT)上,也照樣跑得起來,但就僅能以半虛擬化模式來運行。而所謂半虛擬化,即是需要修改被虛擬系統的內部核心,藉以讓系統能夠完美、平順地被虛擬化於Xen之上,而半虛擬化之下的系統效能,其實已相當接近在裸機上的計算性能。

此外,Xen是由1個名為xend者,作為其進程維護的樞紐,換言之,意欲運行虛擬系統,就得先開啟xend;而xend的配置檔案,係身處於/etc/xen/xend-config.sxp之中,其內容包含了Host系統類型、Host OS資源使用設定、網路連結架構,以及攸關於vnc連結的若干內容,假設用戶欲於系統中增加虛擬網路設備,同樣都得在xend配置檔案裡進行設定。

用戶意欲讓被虛擬化的系統,能夠伴隨著Host主系統一併啟動的話,則必須將該虛擬系統的相關配置檔案,置於/etc/xen/auto目錄之中。此外,/etc/xen/scripts則屬於腳本檔案的集散之處,讓用戶藉以針對譬如虛擬網橋等各式虛擬設備進行初始化,值得一提的,假使用戶要想增加1個虛擬網路設備,亦必須在此處做一些相對應的調節動作。

而在/etc/xen底下,則會夾帶部分配置檔案,且多半是關於虛擬系統引導之際,所必須使用到的引導記錄與硬體資訊。在配置工具方面,本文標題所帶到的Virt-Manager即屬一例,它是用於管理暨安裝系統,其餘較常見者尚有virt-install、xm,前者旨在滿足系統安裝需求,至於後者,則被用以啟動系統。

論及半虛擬化Linux的安裝之道,其實方法不僅1種,用戶可以先行建立鏡像檔案,然後加以格式化,再將之附掛到本地檔系統,接著把虛擬系統所須動用的檔案複製進去,同時做必要的修改,再以手動模式建立配置檔案,隨之將其啟動,即可大功告成;另1項做法是,藉由Linux的網路安裝模式來進行安裝,包括像http、nfs或ftp等途徑,都在選項範圍之列,此後再配合RHEL5自動生成配置檔案的動作,即可完成安裝程序。或許有讀者好奇,過去在全虛擬化環境中,藉由Local端光碟機抑或ISO鏡像等途徑,不也一樣可完成安裝作業?但在半虛擬化模式之中,並不支援這些方式。

提到網路設備的虛擬化,主要含括了Bridge、NAT或Router等模式,其中的Bridge模式為系統所默認,透過此一模式,虛擬系統和Host主系統兩者之間,將被認為具有並列關係,故虛擬系統一旦被配置IP或DHCP後,即可與Host主系統進行溝通。

值得一提的,若在RHEL5版本之前的作業環境,iptables並無力針對Bridge模式下的資料封包,從事任何的處理作為,但進入RHEL5世代,其iptables當中便增加1個名為physdev的模組,俾使用戶能透過iptables -m physdev –h,進行必要的查驗動作,據此解決此一難題。

在瞭解RHEL5 Xen的來龍去脈後,事不宜遲,用戶便可趕緊赴rhn之上,下載並安裝Virt-Manager此一用以管理虛擬機器的GUI工具。

下載相關套件 啟動虛擬網路

用戶可先行造訪www.rhn.redhat.com網址,經登錄使用者名稱及密碼後,從中找尋以下套件,然後進行下載動作。




圖說:如圖顯示的6項rpm套件,堪稱建立Virt-Manager管理機制的必備標的物。

待下載完前述相關rpm套件後,便可隨即進行重新啟動,其程序如下步驟指引。



此後,即將進入虛擬網路的啟動程序,惟在進行之前,用戶不妨可先看看下列的檔案。



為何要留意前述檔案?此乃由於,此一檔案即是網路的設定檔,用戶一旦進入它,即可細看到類似於下列頁面圖之內容。



與此同時,用戶不妨可考慮採用virsh,藉以針對虛擬網路進行必要的管理作為,而相關使用步驟如下。



一路下來,當前述這些程序逐步完成後,此時用戶便不難在操作畫面上,看到virbr0新網路卡的存在,即代表設定動作初步圓滿成功。

建立全新虛擬網段 做足Xen安裝前夕的必要準備

在進入Xen的安裝作業之前,用戶還有必要的準備工作尚待進行,即是建立1個全新的虛擬網段,從而在前段落的virbr0新網路卡之外,再創建另1張名為virbr1的網路卡;至於虛擬網段的建構程序,則可參考如下步驟。



緊接著,再依循前段落的virsh使用方式,針對虛擬網路進行管理,其相關步驟如下。完成此道程序後,用戶便可看到virbr1全新網路卡的誕生。



利用全新的網路環境 進行Xen安裝作業

完成了虛擬網路、虛擬網段等相關設定暨建立程序後,此時用戶即可透過這個全新的網路環境,來執行Xen的安裝作業;不過,在進入實際的安裝步驟之前,該做的準備功夫仍絲毫馬虎不得,至於相關的準備動作,可參酌下例,惟此處附帶說明的是,下例中第2道有關「#cp *.iso /data/os/rhel5.0/ISO」的設定程序,主要用意是針對RHEL5當中的5個ISO文件,進行必要的複製動作。



準備妥當後,用戶即可進入令人興奮的虛擬機器建立程序,此時,從主功能表中先找到「系統工具」的目錄,再進入其項下的「Virtual Machine Manager」,隨即朝「新建」按下Enter鍵。

第1步,先行設定好系統名稱,然後按Enter。



此後選擇「半虛擬化」,按Enter,再安裝介質URL,操作程序如下所示。



接著進入「簡單文件」,把檔案位置設定好(譬如/var/lib/xen/images/xentest.img),再將文件的Size定義妥當(譬如10000MB)後,務必記得,還需要針對下列功能進行取消,待取消過後,再繼續前進到「Virtual network」。



進入「Virtual network」後,把Network設定好,然後再進入下一道步驟。



安裝作業行進至此,想必用戶走來是輕鬆寫意,無須考慮過多枝節,然而接下來的設定程序,就必須盱衡自身現實環境,方能做出正確設定;倘若設定失當,Xen的安裝作業也就等於宣告失敗,千萬小心!

若用戶本身的Host主機內部,存在著4GB容量的記憶體資源,並有2顆處理器,則可參酌下列步驟來執行,從容設定虛擬機器可使用之記憶體上限,以及起始記憶體(Startup Memory)可使用之記憶體上限等數值。



必須提醒的是,前述設定步驟當中的「VCPUS」,其所對應的設定數據,絕對不能超過Host伺服器內實體處理器的數量(譬如僅有單顆CPU,卻硬要把VCPUS設定為2),一來,亂設一通也毫無用處,再者,也會讓Xen安裝作業功敗垂成,百害而無一益。

待完成記憶體、處理器等相關設定程序後,此時整個設定作業,差不多已臻至大功告成的境地,用戶接下來的動作,即是確定先前的設定一切無誤後,隨即按下「結束」。

緊接著,便將進入虛擬系統的安裝程序,但此過程其實十分簡單,用戶僅須一路朝「OK」猛按,直到系統出現提示字樣-「找不到安裝介質」後,再從「NFS Setup」的介面中,重新就NFS來源資訊進行設定即可,相關步驟的範例如下。



360°技術-RHEL5

RHEL5是最新版Red Hat Enterprise Linux作業系統的簡稱,箇中核心與Fedora Core 6系統相同,皆為2.6.18版本,而其較受到外界矚目之處有二,其一是將Xen虛擬軟體整合在內,另外,則是打破先前RHEL作業系統細分為Server、Workstation、Desktop等3大型態的慣性,精簡到只剩下Server與Desktop等2個版本。

在此之中,RHEL5的Server版產品中,又再細分為Advanced Platform與Base Server等2項子系統,其劃分方式,頗類似早先的RHEL AS、ES等分野,惟值得一提的,過去需要透過額外採購的Global File System、HA等進階功能,目前都已直接內建於Advanced Platform版產品當中。

360°技術-Virt-Manager

所謂Virt-Manager,其本質為虛擬機器管理員,為1種圖形化介面,可幫助RHEL5 Xen使用者,藉由單一管理介面、佐以簡易的操作程序,即能夠在管理本機的各個虛擬機器之餘,猶能管理到區域網路所及的其他domU主機。

Virt-Manager圖形化介面,其實與Fedora Core 6 GUI幾無二致,此乃由於,RHEL5採用了與Fedora Core 6相同的核心所致。其存在的意義在於,裨益用戶僅須憑藉簡單步驟,即可視需求新增、刪除或啟動虛擬機器,而且就連區域網路範圍內其他Xen伺服器上的虛擬機器,亦可一併獲得納管;換言之,使用者透過Virt-Manager單一介面,即可一目瞭然的,綜觀所有虛擬機器的運行狀態。


Origina From: http://office.digitimes.com.tw/ShowNews.aspx?zCatId=J13&zNotesDocId=0000067375_A558FM2PDT8LMH44RZY6K