VMControl 作為 IBM Systems Director 的一個高級管理器,提供了一系列的管理功能幫助 Power 管理員快速捕獲部署虛擬機系統,進行虛擬化環境的管理。而現代的數據中心,出于安全性,網路負載等多重因素的考慮,一般會存在有多個網絡,常見的像管理網 絡和生產網絡。管理網絡單獨使用一個網段,僅用于系統管理員的維護管理工作,從而保證管理網絡中不會有較多的網絡負載占用帶寬而影響到日常的管理;而生產 網絡往往是私有網絡,也就是系統生產運行的網絡,一般和外部網絡,管理網絡不可互通,以免受到外面的安全威脅;在這種管理網絡和私有網絡的隔離配置的網絡 環境中,如何按照管理員的要求實現 PowerVM 的管理,VMControl 2.4 提供了多網絡的支持,為這一問題提供了全面的解決方案。
在多網絡環境中使用 VMControl,需要管理員進行一些額外的配置,了解和掌握這些配置,才能很好地管理虛擬化環境,實現多網絡的 Power 服務器捕獲和系統部署。本文將會闡釋多網絡支持的原理,并通過實例介紹一些具體的配置。
" src="/CuteSoft_Client/CuteEditor/Images/anchor.gif">VMControl 2.4 對多網絡的支持原理說明
在下圖中,我們給出了一個數據中心的多網絡的虛擬化管理環境的實例,來解釋 VMControl 對多網絡的支持功能。
VMControl 對多網絡環境支持拓撲圖
如圖 1 所示,該數據中心有 3 條通訊網絡,這里用 3 中不同顏色的粗實線表示。其中,
黑線標注的是管理網絡,IP 地址是以 9.12.x.x 的公網 IP,管理員可以通過該網絡對環境中的 Director、HMC、NIM 服務器、Power 服務器進行直接訪問管理;
綠線所示的是生產網絡,也就是私有網絡,IP 地址是以 10.32.136.x 的私網 IP,生產所用的虛擬機系統都在該網絡,這些虛擬機無法和管理網絡互通,無法連接到外部網絡;
藍色所示的是另外一個私有網絡,IP 地址是以 10.32.38.x 的私網 IP,一部分生產所用的虛擬機系統都在該網絡,這些虛擬機之間可以互相通訊,但無法和管理網絡互通,無法連接到外部網絡。
圖 1. VMControl 多網絡環境實例圖

同時,在這個數據中心環境中,Director 系統、HMC 系統、NIM Master 系統都配置了公網和私網 IP 地址,Power 服務器的 VIOS 系統僅配置了管理網絡 IP 地址。
管理員使用 VMControl 的多網絡支持功能,可以規劃管理網絡,生產網絡中的不同網絡通訊,包括:
- 指定 Director 服務器使用哪個網絡進行管理;
- 指定 NIM Master 使用哪個網絡和平臺管理器 HMC 進行通訊;
- 指定 NIM Master 使用哪個網絡進行部署虛擬機系統;
- 指定 NIM Master 使用哪個網絡對虛擬機系統進行捕獲備份;
從而通過這一規劃,可以實現 Director 管理相關的通訊在一個網絡,而 VMControl 基于 NIM 的捕獲和部署在另外一個網絡,實現管理網絡和生產網絡(部署和捕獲網絡)的隔離,保證日常虛擬機管理工作的安全有序地進行。
在上圖中,管理員使用 VMControl,使得 NIM 捕獲和部署的通訊走 10.32.136.x 私有網絡,這樣當捕獲和部署發生時,管理網絡 9.12.x.x 網絡不受任何影響,可專門用于系統管理的通訊。
VMControl 2.4 對多網絡的支持說明
VMControl 2.4 通過更改 Director Server 和 NIM Master 上的配置文件,來提供多網絡環境中網絡通訊的規劃支持。除此之外,還需要對 NIM Master 做一些額外的配置,創建附加的 NIM 網絡定義和網絡對象之間的靜態路由。
同時,VMControl 2.4 支持部署和捕獲具有多個網絡的虛擬機系統。例如,在上面的例子中,有些生產所用的虛擬機系統除了使用 10.32.136.x 私有網絡外,可能還需要額外的私有網段 10.32.38.x 地址。
針對這種具有多網絡的虛擬機系統,盡管 VMControl 允許用戶為每一個網絡適配器指定網關,但它并不能為虛擬機系統自動配置所有的路由。在目標虛擬機系統,只有主適配器上的網關被用于創建默認的路由,其它適 配器配置的網關信息并不會被用于創建對應于這個適配器上額外的路由。這個額外的路由,需要在部署完成后手動(或者使用腳本)進行添加。
實例介紹如何配置使用 VMControl 多網絡支持功能
數據中心多網絡管理配置的需求:管理網絡,捕獲網絡和部署網絡的分離
下面開始介紹如何使用 VMControl 完成數據中心的管理需求,首先來看一下該數據中心要實現怎樣的網絡通訊的規劃。
在該環境中,管理員希望通過 Director 服務器的 9.12.x.x 公網 IP 地址對 HMC、NIM Master 和 Power 服務器(VIOS,FSP)進行管理;而 NIM 服務器通過 10.32.136.x 私有網段進行網絡部署和捕獲,并通過該網絡與平臺管理器 HMC 進行通訊,虛擬機系統使用該私有網絡進行網絡通訊,另外,有兩個虛擬機系統同時需要配置額外的私有網絡 10.32.38.x。
使用 VMControl 多網絡支持需要完成的配置任務
在基于 NIM 的 VMControl 管理環境中使用多網絡的支持,來實施管理員對網絡規劃的要求 - 管理網絡,捕獲網絡和部署網絡的分離,我們需要完成以下的配置任務。
- 修改 Director 服務器的配置文件指定管理網絡。
- 準備 NIM Master 系統為多個網絡分別創建 NIM 網絡對象,并且配置網絡對象之間的路由。
- 修改 NIM Master 端的配置文件指定部署網絡和捕獲網絡。
下面我們會實例介紹每個任務的具體步驟。完成這三個任務后,我們就可以使用 VMControl 管理界面部署和捕獲虛擬機系統。
修改 Director 服務器端的配置文件指定管理網絡
通過配置 Director 服務器的配置文件,可以定制服務器通過指定網絡地址和管理節點進行通訊,具體配置方法如下。
在 Director 系統安裝目錄(缺省為 /opt/ibm/director) 的 data 文件夾下,新建一個位置文件并命名為 IPPreference.properties ,使用文本編輯添加如下的配置項,指定 Director 服務器管理網絡。在本例中,我們使用服務器的公網 IP 地址 9.12.29.232 作為首選管理地址與管理節點進行通訊。
com.ibm.director.server.preferred.ip=9.12.29.232 |
保存文件退出后,需要重啟 Director Server 使得服務器讀入該配置,使得該配置生效。之后,Director 服務器將會開始使用公網 IP 地址 9.12.29.232 和它管理的 HMC、NIM Master 系統、Power 服務器 (VIOS) 等進行通訊。
在 NIM Master 端創建和配置 NIM 網絡對象和路由
由于該 NIM Master 端具有 2 個網絡 IP 地址,公網 9.12.33.51 和私網 10.32.136.51。缺省安裝 NIM Master 時,會自動為公網創建網絡對象,如果想要使用 10.32.136.51 私網進行捕獲和部署虛擬機系統,需要在 NIM 系統中為該私有網絡定義并創建網絡對象。具體步驟如下:
第一步,為私有網絡定義網絡對象 secondary_net
nim -o define -t ent -a net_addr=10.32.136.0 -a snm=255.255.255.0 secondary_net |
第二步,把該網絡對象 secondary_net 加入到 NIM Master 資源中。
nim -o change -a if2='secondary_net 10.32.136.51 0' -a cable_type2=N/A master |
這里需要注意的是,這里我們使用 10.32.136.x 作為要部署的虛擬機主 IP 地址,因為該地址和 NIM Master 系統的第二個網絡在同一個網段,到這里我們的準備配置結束。
如果要部署的虛擬機系統不使用和 NIM Master 的第二個網絡同網段的 IP 地址,我們就需要做一下額外的配置。例如,虛擬機如果要使用 10.32.38.x 網段作為主 IP 地址,就需要接著完成下面兩步。
第三步,(根據環境可選)我們需要再創建部署網絡 deploy_net 。
nim -o define -t ent -a net_addr=10.32.38.0 -a snm=255.255.255.0 deploy_net |
第四步,(根據環境可選)為 secondary_net 和 deploy_ne t 網絡之間創建靜態路由。
對 secondary_net 創建到 deploy_ne t 的路由可以通過下面命令。
nim -o change -a routing1="deploy_net 10.32.136.1 10.32.38.1" secondary_net |
這個命令行的使用方法如下 :
nim -o change -a routing<NUM>="<Des_Network> <SRC_Network_GW> <Des_Network_GW>" \ SRC_Network |
表示創建從源網絡 SRC_Network 到目的網絡 Des_Network 的路由,其中 SRC_Network_GW 表示源網絡的網關,Des_Network_GW 表示目的網絡的網關。
使用相似的命令,可以為 deploy_net
創建到 secondary_net 的路由。
nim -o change -a routing1="secondary_net 10.32.38.1 10.32.136.1" deploy_net |
到此為止,對 NIM Master 的準備配置結束,下面我們需要修改 VMControl 的配置文件完成多網絡系統中網絡通訊的規劃。
修改 NIM Master 端的 VMControl 配置文件指定部署網絡和捕獲網絡
對于多網絡的數據中心,基于 NIM 端的 VMControl 管理環境中,NIM 系統的網絡通訊主要考慮到兩種通訊:一是 NIM 和平臺管理器(如 HMC, IVM)的通訊,另外一個是 NIM 與部署、捕獲的虛擬機系統的交互通訊。通過 VMControl 的多網絡支持功能,可以定制規劃這兩種通訊使用的網絡;這一功能的實現依賴配置文件 VMControl-NIM.properties ,需要用戶在 NIM Master 系統中特定目錄下創建該文件,并修改相應的配置項。
按照數據中心的需求,我們定制通訊網絡如下:NIM 使用 10.32.136.x 私有網絡與平臺管理軟件 HMC 的交互通訊;NIM 使用 10.32.136.x 私有網絡部署和捕獲虛擬機系統。
定制修改 NIM 使用 10.32.136.x 私有網絡與平臺管理軟件 HMC 的交互通訊
登陸安裝了 VMControl 代理程序的 NIM Master 系統,進入代理程序安裝目錄下的配置文件夾 overrides (缺省情況下為 /opt/ibm/director /agent/conf/overrides ),創建配置文件 VMControl-NIM.properties ,并添加該配置行。
com.ibm.director.im.rf.nim.master.pm.connections=10.32.136.* |
定制修改 NIM 使用 10.32.136.x 私有網絡部署和捕獲虛擬機系統
同樣,在該配置文件中添加以下配置行,使用私有網絡部署和捕獲虛擬機系統。
com.ibm.director.im.rf.nim.master.client.capture.connections=10.32.136.* com.ibm.director.im.rf.nim.master.client.deploy.connections=10.32.136.* |
文件保存后,通過下面命令行重啟 NIM master 的代理程序,使該配置生效。
/opt/ibm/director/agent/runtime/agent/bin/endpoint.sh restart |
通過上述配置,在部署 / 捕獲的過程中,NIM Master 和 NIM Client(虛擬機)間的大量交互通訊使用該專門網絡,避免占用管理網絡或其它重要網絡的帶寬資源而影響到一些需要快速響應的維護管理工作。
對配置文件參數項的一些解釋
通過上面的配置,我們看到通過修改位于 Director server 端和 NIM Master 端的兩個配置文件,可以指定 Director 的通訊網絡,指定 NIM Master 和 HMC(IVM)等平臺管理器的通訊網絡,指定 NIM Master 捕獲和部署網絡。
如何使用 Director Server 端 IPPreference.properties 配置文件
在上面的例子中,我們修改了 /opt/ibm/director/data/IPPreference.properties 配置文件,為 Director Server 定制了首選 IP。
com.ibm.director.server.preferred.ip=9.12.29.232 |
實際上,除了可以指定 Director Server 使用哪個 IP 地址和管理節點通訊之外,在這個配置文件里,我們也可以定制 Director Server 不和多網絡管理節點的某網絡進行通訊。這時,需要用到下面一個配置項。
com.ibm.director.endpoint.excluded.ip.prefix =10.32.33. * |
使用上面的通配符,我們使得,當 Director Server 和多網絡管理節點通訊時,自動避免和 10.32.33.x 網絡 IP 地址進行通訊。
當然,也可以指定地址范圍或者個別的 IP 支持,如下面第一個配置,Director Server 自動避免和 10.32.33.63 到 10.32.33.65 的三個 IP 地址通訊;而第二個配置中,Director Server 自動避免和 10.32.33.63 和 10.32.33.65 這兩個 IP 地址通訊。
com.ibm.director.endpoint.excluded.ip.prefix =10.32.33.63-10.32.33.65 com.ibm.director.endpoint.excluded.ip.prefix =10.32.33.63,10.32.33.65 |
所以,使用這個配置文件的兩個配置項,可以靈活配置 Director Server 和管理節點之間的網絡通訊。
如何使用 NIM Master 端 VMControl-NIM.properties 配置文件
對于配置文件 /opt/ibm/director/agent/conf/overrides/VMControl-NIM.properties ,我們使用了以下 3 個配置項。
com.ibm.director.im.rf.nim.master.pm.connections=10.32.136.* com.ibm.director.im.rf.nim.master.client.capture.connections=10.32.136.* com.ibm.director.im.rf.nim.master.client.deploy.connections=10.32.136.* |
同樣對于這三個配置項,實際上我們還有一些其他的用法。如 pm. connections 項,其標準用法為
com.ibm.director.im.rf.nim.master. pm. connections= addr1 [// addr2 ] |
其中,addr1 是必填項,靜態的 NIM Master 的 IP 地址;addr2 是與 NIM Master 進行通訊平臺管理器(HMC、IVM)的 IP 地址;如果有 addr2 ,必須用雙斜杠 ”//” 進行分隔。如:
com.ibm.director.im.rf.nim.master. pm. connections= addr1 [// addr2 ] |
常見的使用實例如下:
com.ibm.director.im.rf.nim.master.pm.connections=10.10.10.210 com.ibm.director.im.rf.nim.master.pm.connections=10.10.10.* com.ibm.director.im.rf.nim.master.pm.connections=10.10.10.0-10.10.10.255 com.ibm.director.im.rf.nim.master.pm.connections=10.10.10.0/24 com.ibm.director.im.rf.nim.master.pm.connections=10.10.10.210//10.10.10.220 |
對于 capture.connection 和 deploy.connections ,我們還可以使用指定具體的 IP 地址如下:
com.ibm.director.im.rf.nim.master.client.capture.connections=11.11.11.211 com.ibm.director.im.rf.nim.master.client.deploy.connections=12.12.12.212 |
使用 VMControl 界面部署和捕獲虛擬機系統
在上述配置完成之后,我們接下來從 VMControl 圖形界面完成多網絡虛擬機的部署和捕獲。
使用 VMControl 部署多網絡虛擬機系統
對于多網絡虛機的部署,我們需要有一個多網絡的虛擬機系統,在本例中,我們想要在虛擬機系統使用 10.32.136.x 私有網絡和 10.32.38.x 網絡。
啟動部署向導部署虛擬鏡像時,我們需要為該虛擬機提供相應的信息,這里和單網絡虛擬機的配置不同主要體現在以下兩個頁面。
Networking Mapping( 網絡映射)頁面:需要分別為兩個虛擬網卡選擇對應的 VLAN 網絡,
如下圖 2,由于該虛擬機 10.32.136.x 網絡所在的 VLAN ID 是 320,10.32.38.x 網絡對應的 VLAN ID 是 1011,我們在該頁面為兩個網卡選取相應的 VLAN 網絡。
圖 2. VMControl 部署多網絡虛機網絡映射頁面示例

Product 產品頁面:這里需要添加第二塊網卡的配置信息,包括 IP 地址和子網掩碼信息。見下圖:
圖 3. VMControl 部署多網絡虛機產品頁面示例

需要注意的是,對于多網絡虛機部署 NIM Master 本身的一些限制,只有主網卡的默認網關會被運用到所有網卡上,第二塊網卡的路由信息沒有正確配置,需要我們在部署完成后登陸虛擬機系統手工配置修改。命令行為
chdev -l inet0 -a route=net,-hopcount,0,-netmask,<NETMASK><NETWORK_ADDR>,\ <GATEWAY> -P |
例如,本例中,我們輸入下面的命令添加相應的路由信息:
bash-3.2# chdev -l inet0 \ -a route=net,-hopcount,0,-netmask,255.255.255.0,,,,,10.32.38.63,10.32.38.1 -P inet0 changed |
除了上面的路由配置命令外,有時候我們可能會用到下面兩條命令行,下面列出以供參考
查看路由信息: lsattr -El inet0
刪除錯誤路由信息:chdev – l inet0 – a delroute=< 錯誤路由 >
到此為止,我們使用 VMControl 完成多網絡虛擬機系統的部署,下面接著介紹多網絡虛擬機的捕獲。
使用 VMControl 捕獲多網絡虛擬機系統
多網絡的虛擬機捕獲比較簡單,過程和單網絡虛擬機類似。但捕獲的時候需要注意 Netwoking Mapping 網絡映射頁面 VMControl 可以正確獲取所有虛擬網卡的信息。
圖 4. 捕獲多網絡虛擬機網絡映射頁示例

可以看到,VMControl 發現了該虛擬機的兩個網絡,VLAN 320 和 VLAN 1011 所在的網絡,根據該虛擬機捕獲創建的虛擬鏡像可以用于以后部署多網絡虛擬機系統。
總結
本文通過實例介紹了如何使用 VMControl 的多網絡支持功能,在基于 NIM 的 Power 虛擬化環境中,通過修改相應的配置文件,定制不同的通訊網絡,實現管理網絡,部署和捕獲網絡的隔離通訊,優化虛擬化管理工作。對于數據中心管理員而言,隨 著多網絡的普及使用,掌握這種方法,無疑會對日常維護管理工作帶來較大的便利。