如何啟用 Windows 2003 Server的網路負載平衡(NLB)功能?

轉貼自
http://www.synnex.com.tw/asp/fae_qaDetail.asp?from_prg=&topic=FAE&group=&parent=&classifyid=01997&seqno=17605

 

網路負載平衡(NetWork Load Balance,簡稱NLB)是屬於叢集(cluster)的架構之一。所謂的叢集,顧名思義就是將兩部或多部主機組織在ㄧ起提供相關服務,用以提高可用性、可靠性及延展性,同時當叢集內主機故障時,可將服務需求轉由其他主機負擔,有點類似備援的方式。Windows 2003可使用三種叢集架構,這三種叢集架構依使用性來看,可將其分為三個區段:前端(NLB)、中介(元件負載平衡)、後端(伺服器叢集)。

1. 伺服器叢集:主要是針對後端應用程式及服務(如資料庫伺服器)提供故障時移轉的支援。

2. 元件負載平衡:主要是提供使用COM+元件的中介層應用程式動態負載平衡用。

3. 網路負載平衡:則是屬於前端有關IP應用程式及服務(如Web、FTP等)的負載平衡,主要作用在於支援TCP、UDP以及一般路由封裝(Generic Routing Encapsulation 簡稱GRE)流量負載平衡用。

其中NLB就是今日本文所要探討的叢集架構,其可藉由更改網路連線內容設定來啟動,以下將針對NLB工作架構、系統需求及設定方式來一一說明。

一、NLB工作架構
NLB是將多部主機
(最多32部)集合成一部主機來看(稱為叢集),並賦予這個組合ㄧ個IP Address及一個MAC Address,這裡將此IP及MAC稱為Virtual IP及Virtual MAC。當用戶端提出服務需求時,系統會將用戶端的需求導引至叢集內其中一部主機上,藉由此方式,將所有的服務需求分配至叢集內的各部主機,以分散服務需求的流量,而不至於使某一部主機負擔過大。

二、NLB系統需求
1. 需架設DNS服務,以便於DNS服務內新增對應至叢集IP(Virtual IP)的主機記錄。

2. 只支援TCP/IP通訊協定,不支援其他協定如IPX/SPX。

3. 只支援TCP及UDP連接埠使用,若使用之應用程式非TCP或UDP,如ICMP(ping指令),則不支援。

4. 建議使用兩張網卡,若只使用一張網卡,則叢集內主機與主機並無法互通,因此時網卡間連線的功能類似「伺服器叢集」的「Heart Beat」,是用來判斷鄰近的主機是否仍運作中,以便讓系統了解目前叢集內主機運作是正常(約8-10 sec會偵測一次,若有主機故障,系統會將其由叢集中移除,主機回復後會再自動將主機加入叢集中)。若是使用兩張網卡,則只能在其中一張網卡上設定default gateway,否則封包將無法轉送至正確的IP位址上。

5. 所有主機之網域名稱須相同,且主機內需各自執行應用程式複本,同時應用程式需有自我的管理及監控機制,因為NLB不提供應用程式管理、監控及複寫的功能。

三、NLB設定步驟
● DNS設定

於DNS服務中新增對應至叢集IP的主機記錄,步驟如下:

「系統管理工具」→「DNS」→左窗格「正向對應區域」→網域名稱按滑鼠右鍵→「新增主機」→鍵入主機名稱及叢集IP,完成後如下圖所示。

 

● 區域網路連線設定
必須針對叢集內每部主機的區域連線內容做設定。

1. 勾選「區域連線」內容裡的「網路負載平衡」的選項,並點選『內容』。

2. 輸入「叢集IP位址」,此時下方之「網路位址(MAC Address)」會隨著輸入之IP值自行變動。

3. 輸入「優先順序值」及「叢集內主機IP位址」。

4. 設定主機服務連接埠規則,可點選『新增』或『編輯』來新增或修改連接埠規則內容(設定「叢集IP」及所提供之「服務連接埠」)。

5. 網路負載平衡內容設定完成後,系統會出現以下的提示訊息,要求於TCP/IP協定『進階設定內容』中新增一個IP位址,此IP位址也就是叢集IP位址(可參考下圖的解說)。

至此NLB的設定可算是完成了,我們可以利用以下三種方式來驗證:
1. 利用ping的指令來ping叢集IP位址是否成功。

2. 利用wlbs query指令顯示叢集狀態,用以檢視叢集內主機數量是否正確及各主機是否成功加入叢集。

3. 暫停叢集內某部主機提供之服務(如Web),再檢視整個叢集服務是否仍正常運作。除非將叢集內所有主機服務皆暫停,否則只要有一部主機服務運作正常的話,整個叢集服務就不會中斷,但相對的叢集內主機的負擔會加大,進而影響叢集服務的效能。

~ 由 壞孩子 於 一月 5, 2007.

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s

 
%d 位部落客按了讚: