由于公司最近網(wǎng)站流量暴增,單臺服務(wù)器的連接數(shù)經(jīng)常過2W,為了讓用戶獲得更好的性能和網(wǎng)站的容災(zāi)型,配置 負(fù)載平衡(負(fù)載均衡、NLB) 也成了首要任務(wù)。公司服務(wù)器是 Windows 2003 英文版本,用2臺服務(wù)器來配置負(fù)載均衡。
在 Google 和 Baidu 上面看了2天,發(fā)現(xiàn)有一些 負(fù)載平衡(負(fù)載均衡、NLB) 的配置經(jīng)驗(yàn)還是蠻不錯的,所以把這些摘錄過來,做下備忘,并希望能幫助更多的人配置。
網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群)概述
首先,我們先了解下 Windows 2003 自帶的 負(fù)載平衡(負(fù)載均衡)——Network Load Balancing,簡稱NLB。NLB是一種集成高可用性,高可靠性和高擴(kuò)展性的集群。它不但能實(shí)現(xiàn)均衡負(fù)載,而且還能實(shí)現(xiàn)多種形式的冗余。NLB主要用于那些文件改動不大,并且不常駐內(nèi)存的環(huán)境,比如WEB服務(wù)、FTP服務(wù)、和VPN服務(wù)等。NLB不適合用于數(shù)據(jù)庫、郵件等服務(wù),因?yàn)椴荒鼙WC每個(gè)節(jié)點(diǎn)的數(shù)據(jù)是一樣的。
當(dāng)用戶訪問集群的時(shí)候,集群能將訪問請求分?jǐn)偟郊褐械拿總€(gè)服務(wù)器上,以達(dá)到均衡負(fù)載的效果。這些服務(wù)器被稱為集群節(jié)點(diǎn)。在 負(fù)載平衡(負(fù)載均衡、NLB) 中,每個(gè)節(jié)點(diǎn)的文件一般都要求是一樣的。這樣每個(gè)節(jié)點(diǎn)返回給客戶的結(jié)果都是一致的。一般來說組建一個(gè)NLB要求至少兩個(gè)節(jié)點(diǎn),其中一個(gè)節(jié)點(diǎn)不能使用,這全部負(fù)載將落入到剩下的那個(gè)節(jié)點(diǎn)上,即全載。Windows server 2003 最多支持32個(gè)節(jié)點(diǎn)。節(jié)點(diǎn)越多,可用性(availability),可靠性(reliability)就越高。
NLB能提供三種冗余功能,軟件冗余、硬件冗余、站點(diǎn)冗余。
網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群)工作原理
每個(gè)NLB節(jié)點(diǎn)都有同一個(gè)虛擬IP地址。當(dāng)訪問請求發(fā)向虛擬IP,NLB會負(fù)責(zé)把這個(gè)請求路由到其中的一個(gè)節(jié)點(diǎn)上,以達(dá)到均衡負(fù)載的作用。如圖所示:
接下來,開始著手配置NLB 的測試站點(diǎn)。假設(shè),網(wǎng)站為web.gooduck.com。準(zhǔn)備兩臺服務(wù)器server1和server2,分別安裝windows server 2003 Enterprise并安裝IIS組件。
Vir20 |
Vir21 |
Client |
|
IP |
192.168.10.20 |
192.168.10.21 |
202.108.22.9 |
VIP |
202.108.22.5 |
在這里需要描述下,DNS解析web.goodluck.com為202.108.22.5,(測試地址,非真實(shí))。當(dāng)訪問web.goodluck.com時(shí),NLB會把請求路由到192.168.10.20或者192.168.10.21上,由他們來處理請求。整個(gè)過程就像是202.108.22.5返回處理的結(jié)果。用戶是感覺不到其中的過程。
網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群)測試站點(diǎn)的配置
1.配置vir20、vir21的IIS服務(wù)
在各服務(wù)器中,run中輸入inetmgr
在Default Web Site中創(chuàng)建default.htm文件,在其中輸入:Hello world!
右擊選擇”Browse”瀏覽結(jié)果
兩臺服務(wù)器都是執(zhí)行同樣的操作。
網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群)通過單節(jié)點(diǎn)的配置方法
網(wǎng)絡(luò)負(fù)載平衡有兩種配置方法:
一種是通過配置每個(gè)節(jié)點(diǎn)的連接屬性;
一種是通過Network Load Balancing Manager(windows server 2003 新特性)。
這兩種方法各有所長,但是個(gè)人比較推薦第一種方法
網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群)單節(jié)點(diǎn)的配置方法如下:
打開節(jié)點(diǎn)連接屬性,勾選Network Load Balancing。
點(diǎn)擊Properties,進(jìn)一步設(shè)置
在Cluster Parameters頁面中,輸入虛擬IP地址202.108.22.5,DNS解析web.goodluck.com就是這個(gè)地址。
在單網(wǎng)卡的節(jié)點(diǎn)中,只能使用多播的方式來收發(fā)內(nèi)部IP流和NLB流。在有兩張網(wǎng)卡的情況中,就可以用單播的方式,這樣一張網(wǎng)卡負(fù)責(zé)NLB流,另外一張負(fù)責(zé)IP流。所以從訪問性能來說,單播的方式要比多播的方式快?,F(xiàn)在的許多服務(wù)器有兩個(gè)網(wǎng)口。如果滿足條件,最好能使用單播模式。
進(jìn)入到Host Parameters頁面。
priority設(shè)置成1,此節(jié)點(diǎn)在集群中為主節(jié)點(diǎn)。說明 網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群)會在未達(dá)到負(fù)載極限的時(shí)候,首先把請求路由到優(yōu)先權(quán)高的節(jié)點(diǎn)上。在另外一個(gè)節(jié)點(diǎn)的值則不能為1。請注意這個(gè)值在每個(gè)節(jié)點(diǎn)上是唯一的。輸入節(jié)點(diǎn)的IP地址。
在Port Rules中
可以對流量進(jìn)行篩選。表示,對于任何訪問http 80端口的任何訪問都接受。對于https 443端口的接受特定IP。如果要添加其他的規(guī)則單擊Add增加。
還可以設(shè)置節(jié)點(diǎn)的負(fù)載,默認(rèn)選擇均衡。
Filtering mode:
Affinity(相似性)這是用于控制訪問請求路由。當(dāng)使用None時(shí),來自同一個(gè)IP的請求將得到不同節(jié)點(diǎn)的回應(yīng),這提高了集群的性能。如果Protocols使用UDP或Both,為了能正確的處理IP片段,應(yīng)該盡量不要使用None。在處理http時(shí)建議選擇None以提高性能。Single模式,將來自相同的IP地址路由到同一個(gè)節(jié)點(diǎn)上,提訪問的高安全性。Class C模式將來自與節(jié)點(diǎn)同一個(gè)子網(wǎng)的訪問路由到同一個(gè)節(jié)點(diǎn)上。
OK結(jié)束。
接下來要在節(jié)點(diǎn)的TCP/IP中添加虛擬IP。
點(diǎn)擊OK完成NLB的設(shè)置。
兩臺服務(wù)器上都設(shè)置好后,進(jìn)行測試。
在client上瀏覽web.goodluck.com。注意,client上一定要能正確解析web.goodluck.com。
可以修改hosts文件,手工添加解析。但一定要保證能和節(jié)點(diǎn)連通。
再來考慮,如果其中一個(gè)節(jié)點(diǎn)不能訪問,瀏覽是否會受到影響。
停止一個(gè)server1的IIS來測試下。修改server1和server2的default.htm內(nèi)容成“Hello world! The IIS of vir20 is stopped.”
可以看出vir21承擔(dān)了所有的訪問。
接下來開啟vir20,并且關(guān)閉vir21??纯磿霈F(xiàn)什么情況。同樣修改這兩臺的defualt.htm文件。“Hello world! The IIS of vir20 is working now.”
在vir21停止工作,vir20正常工作的時(shí)候,網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群)依然正常工作。這樣就達(dá)到了均衡負(fù)載的要求了。
下面我們做一次簡單的測試。如果vir20和vir21兩個(gè)節(jié)點(diǎn)的內(nèi)容不同,顯示結(jié)果會如何。
在vir20中修改default.htm內(nèi)容為: ’Hello World! Here is vir20’ 。
vir21的default.htm內(nèi)容為:’Hello World! Here is vir21’ 。
注意:vir21的優(yōu)先級為1,vir20的優(yōu)先級為2。
Vir20和vir21的IIS服務(wù)都正常工作。瀏覽web.goodluck.com,發(fā)現(xiàn)IE顯示結(jié)果
顯示出兩個(gè)結(jié)果。
隔段時(shí)間刷新,結(jié)果也會發(fā)生變化。通過這個(gè)測試說明NLB把訪問請求路由到不同的的結(jié)點(diǎn)上。
為了使訪問者都能得到正確的結(jié)果,一定要保證訪問的文件必須一樣。在這里可以使用分布式文件系統(tǒng)(Distributed File System)來同步文件。在我的Blog上即將貼出。
網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群)通過Network Load Balancing Manager的配置方法
網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群)第二種配置方法:使用Network Load Balancing Manager,這個(gè)工具是windows server 2003中新加上的工具,配置更為簡單。
首先配置vir20和vir21的TCP/IP屬性,在Advanced中增加虛擬IP,這一步直接影響到后面的配置效果。
在開始Run中輸入’nlbmgr’,打開NLBM。
右擊選擇New Cluster。
在Cluster Parameters配置集群的IP地址和域名,如下。
下一步,如果集群IP地址不止一個(gè),或在其他的站點(diǎn)也有集群。就在其中添加其他集群的IP地址,這個(gè)lab中只有一個(gè)集群,所以這里不用添加,Next。
配置相應(yīng)的規(guī)則如下。
接下來連接到節(jié)點(diǎn),輸入節(jié)點(diǎn)的IP地址。這個(gè)地址是網(wǎng)卡的地址而不是虛擬IP地址。
配置節(jié)點(diǎn)IP及優(yōu)先級,如同上面所述。
增加完節(jié)點(diǎn)后,顯示如下
綠色的表示運(yùn)行正常,如果出現(xiàn)黃色的感嘆號,查看詳細(xì)列表中的錯誤信息。多半是因?yàn)闆]有把虛擬IP正常加入到節(jié)點(diǎn)的TCP/IP中。
到此 網(wǎng)絡(luò)負(fù)載平衡(網(wǎng)絡(luò)負(fù)載均衡、NLB、集群) 配置完成了。
標(biāo)簽:梅州 無錫 山西 邯鄲 保定 廣東 福州 阿里
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Windows 2003下網(wǎng)絡(luò)負(fù)載平衡(負(fù)載均衡/NLB)的配置詳細(xì)圖文教程》,本文關(guān)鍵詞 Windows,2003下,網(wǎng)絡(luò),負(fù)載,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。