從原理講到實(shí)例,帶你學(xué)習(xí)網(wǎng)絡(luò)負(fù)載均衡
大型企業(yè)中,我們可以購置負(fù)載均衡的硬件設(shè)備與軟件相結(jié)合,達(dá)到高性能的網(wǎng)絡(luò)負(fù)載均衡。那么,針對不同的情況,我們要進(jìn)行不同領(lǐng)域的負(fù)載均衡設(shè)定,那么對于負(fù)載均衡的一些技術(shù)我們先來了解一下,之后再對不同的技術(shù)類型,把網(wǎng)絡(luò)負(fù)載均衡系統(tǒng)分開來談。
1>概述
企業(yè)知名度增加,網(wǎng)站訪問量逐漸上升,是每一個網(wǎng)管所盼望的。但同時應(yīng)用服務(wù)器的數(shù)據(jù)流量和訪問量將成倍增加,服務(wù)器將不堪重負(fù)。
這時,可采用兩種方式解決此問題,一是進(jìn)行硬件升級,購買配置更高、性能更好的服務(wù)器,這種方法的優(yōu)點(diǎn)是簡單易行,缺點(diǎn)是投資大, 會造成現(xiàn)有資源的浪費(fèi),且下一次業(yè)務(wù)量的提升還會面臨同樣問題。另一種方法是采用集群技術(shù),利用兩臺以上的服務(wù)器進(jìn)行協(xié)同工作,在集群系統(tǒng)中運(yùn)行的服務(wù)器并不一定是高檔產(chǎn)品(可以是企業(yè)現(xiàn)有的服務(wù)器),但服務(wù)器的集群卻可以提供相當(dāng)高性能的不停機(jī)服務(wù);另外,隨著業(yè)務(wù)量的增大,可隨時增加集群系統(tǒng)中運(yùn)行的服務(wù)器數(shù)量。集群技術(shù)的優(yōu)點(diǎn)是高可靠性和強(qiáng)大靈活的系統(tǒng)擴(kuò)充能力。
兩臺以上的服務(wù)器進(jìn)行協(xié)同工作必然涉及到負(fù)載均衡問題,目前常用的負(fù)載均衡技術(shù)主要有:NAT負(fù)載均衡、反向代理負(fù)載均衡及DNS負(fù)載。
NAT負(fù)載均衡將一個外部IP地址映射為多個內(nèi)部IP地址,對每次連接請求動態(tài)地轉(zhuǎn)換為一個內(nèi)部服務(wù)器的地址,將外部連接請求引到轉(zhuǎn)換得到地址的那個服務(wù)器上。反向代理負(fù)載均衡使用代理服務(wù)器將請求轉(zhuǎn)發(fā)給內(nèi)部的Web服務(wù)器,讓代理服務(wù)器將請求均勻地轉(zhuǎn)發(fā)給多臺內(nèi)部Web服務(wù)器之一上,從而達(dá)到網(wǎng)絡(luò)負(fù)載均衡的目的。DNS負(fù)載均衡在DNS中為多個地址配置同一個名字,從而使得不同的客戶訪問不同的服務(wù)器來實(shí)現(xiàn)負(fù)載均衡。本文將詳細(xì)介紹DNS負(fù)載均衡原理和技術(shù)實(shí)現(xiàn)。
2>DNS負(fù)載均衡原理
DNS負(fù)載均衡是通過循環(huán)復(fù)用實(shí)現(xiàn)的,如果發(fā)現(xiàn)主機(jī)名的多個地址資源記錄,則可用它循環(huán)使用包含在查詢應(yīng)答中的主機(jī)資源記錄。在默認(rèn)情況下,DNS 服務(wù)器的服務(wù)使用循環(huán)復(fù)用對資源記錄進(jìn)行排序,這些資源記錄是在解析為多個映射的主機(jī)名應(yīng)答中返回的。該功能提供了一種非常簡便的方法,用于對客戶機(jī)使用 Web 服務(wù)器和其他頻繁查詢的多宿主計算機(jī)的負(fù)載平衡。
要使循環(huán)復(fù)用正常工作,必須首先在該區(qū)域中注冊所查詢名稱的多個主機(jī)資源紀(jì)錄,并啟用DNS服務(wù)器循環(huán)復(fù)用。如果DNS服務(wù)器禁止循環(huán)復(fù)用,那么這些查詢的響應(yīng)順序以應(yīng)答列表中資源記錄在區(qū)域中存儲時的靜態(tài)排序?yàn)榛A(chǔ)。
3>四臺服務(wù)器的負(fù)載均衡實(shí)例
可提供的服務(wù):Web、Ftp系統(tǒng)實(shí)現(xiàn)的目的:做一個較完善的網(wǎng)絡(luò)負(fù)載均衡系統(tǒng),以共享和高效地利用資源設(shè)備狀況:五臺服務(wù)器,其中四臺服務(wù)器組成集群系統(tǒng),IP地址分別為172.28.20.1、172.28.20.2、172.28.20.3、172.28.20.4;
一臺服務(wù)器作為控制管理服務(wù)器,提供DNS服務(wù),設(shè)企業(yè)域名為www.example.com.cn。
服務(wù)器配置:集群系統(tǒng)服務(wù)器安裝Windows 2000 sever ,須安裝Internet信息服務(wù)組件;
DNS服務(wù)器安裝Windows 2000 sever ,須安裝DNS組件。
⑴ 分別設(shè)置各臺服務(wù)器IP地址、子網(wǎng)掩碼、網(wǎng)關(guān)及DNS服務(wù)器地址,調(diào)通網(wǎng)絡(luò)。
⑵ 設(shè)置DNS服務(wù)器
①在DNS中創(chuàng)建正向搜索的標(biāo)準(zhǔn)主要區(qū)域,實(shí)現(xiàn)域名
DNS服務(wù)器上單擊開始/程序/管理工具/DNS,打開DNS控制臺。
在控制臺樹中,右鍵單擊 “正向搜索區(qū)域",單擊新建區(qū)域/新建區(qū)域向?qū)?下一步,選擇區(qū)域類型為“標(biāo)準(zhǔn)主要區(qū)域"。如果不是在活動目錄的域控制器上創(chuàng)建DNS區(qū)域,則區(qū)域類型中的“與活動目錄集成的區(qū)域"選項(xiàng)按鈕不可用;單擊“下一步"。
輸入要創(chuàng)建的區(qū)域名稱example.com.cn,選擇創(chuàng)建新的區(qū)域文件,文件名為example.com.cn.dns,單擊下一步/完成,區(qū)域 example.com.cn出現(xiàn)在控制臺樹中的“正向搜索區(qū)域"下。
②在區(qū)域example.com.cn中注冊查詢名稱www. example.com.cn的多個主機(jī)資源記錄。
在DNS控制臺樹中右鍵單擊區(qū)域example.com.cn,單擊新建主機(jī),彈出“新建主機(jī)"窗口。在“名稱"欄輸入主機(jī)名www,在“IP地址"欄輸入對應(yīng)的IP地址172.28.20.1,單擊“添加主機(jī)"、“確定"按鈕;重復(fù)此過程,主機(jī)名仍為www, IP地址依次為172.28.20.2、172.28.20.3、172.28.20.4。單擊“完成"。
四條名為www的主機(jī)記錄出現(xiàn)在正向搜索區(qū)域“example.com.cn"中,指針依次為172.28.20.1、172.28.20.2、 172.28.20.3、172.28.20.4#p#
③啟用多宿主名稱的循環(huán)復(fù)用
單擊開始/程序/管理工具/DNS/DNS服務(wù)器名/屬性/高級,在“服務(wù)器選項(xiàng)"中,選擇“啟用循環(huán)"復(fù)選框,然后單擊“確定"。
至此,正向搜索型查詢用于IP 地址分別為172.20.20.1、172.28.20.2、172.28.20.3和172.28.20.4的多宿主主機(jī) (www. example.com.cn)配置完成.
當(dāng)客戶請求訪問www.example.com.cn時,DNS 服務(wù)器將循環(huán)調(diào)度IP地址的次序,將按172.28.20.1、172.28.20.2、172.28.20.3和172.28.20.4的順序應(yīng)答***個客戶的要求,下一個客戶對同樣信息的請求將用旋轉(zhuǎn)后的172.28.20.2、172.28.20.3、172.28.20.4和 172.20.20.1這樣的順序應(yīng)答,旋轉(zhuǎn)過程將持續(xù)下去,成功實(shí)現(xiàn)DNS網(wǎng)絡(luò)負(fù)載均衡。
按以上步驟設(shè)置好后,有時會有疑問,為什么ping www.example.com.cn,返回的都是同一個IP?原因很簡單,這是因?yàn)橹挥?臺電腦做測試,ping了***次后,電腦就會做一個緩存。用多臺電腦來ping,或在一臺電腦上ping完每一次后,均運(yùn)行ipconfig/flnshdns, 就可測試出系統(tǒng)實(shí)現(xiàn)目的已達(dá)到。
4>需注意的兩點(diǎn)問題
⑴ 本地子網(wǎng)優(yōu)先級
當(dāng)集群中的服務(wù)器不在同一網(wǎng)段時,默認(rèn)情況下,當(dāng)客戶機(jī)查詢解析映射到多個 IP 地址的主機(jī)名時,DNS 服務(wù)使用本地子網(wǎng)優(yōu)先排序作為給出同一網(wǎng)絡(luò)上*** IP 地址的方法。此功能要求客戶應(yīng)用程序嘗試使用連接可用的最近(一般是最快的)IP 地址連接至主機(jī)。
DNS 服務(wù)按以下方式使用本地子網(wǎng)優(yōu)先級:
①DNS 服務(wù)確定是否需要本地子網(wǎng)的優(yōu)先級排序查詢響應(yīng)。
如果有多個地址資源記錄與要查詢的主機(jī)名匹配,則 DNS 服務(wù)可按其子網(wǎng)位置重新對記錄進(jìn)行排序。如果查詢的主機(jī)名只與一個 地址資源記錄匹配,或者客戶機(jī)的 IP 網(wǎng)絡(luò)地址與多重資源記錄響應(yīng)列表上的任何映射地址的 IP 網(wǎng)絡(luò)地址匹配,則不需要進(jìn)行優(yōu)先排列。
②對于匹配響應(yīng)列表中的每一個資源紀(jì)錄,DNS 服務(wù)決定了哪些記錄(如果有)與查詢客戶機(jī)的子網(wǎng)位置匹配。
③DNS 服務(wù)重新對響應(yīng)列表進(jìn)行排序,以便將與發(fā)出請求的客戶機(jī)的本地子網(wǎng)匹配的 主機(jī)地址資源記錄排在響應(yīng)列表中的***位。
④按子網(wǎng)的順序進(jìn)行優(yōu)先級排序后,響應(yīng)列表將返回給發(fā)出請求的客戶機(jī)。
⑵ 不足之處
雖然循環(huán)復(fù)用 DNS 是一個普遍使用的在 Web 服務(wù)器上負(fù)載平衡的解決方案,但是,該方式有它自身的缺陷。循環(huán)復(fù)用 DNS 使用 DNS將傳入的 IP 請求映射到定義的一系列循環(huán)形式的服務(wù)器。一旦發(fā)生服務(wù)器故障,循環(huán)復(fù)用 DNS 繼續(xù)把請求發(fā)送到這個故障服務(wù)器,一直到把該服務(wù)器從 DNS 中移走為止。這樣許多用戶必須等到 DNS 連接超時以后才能成功地訪問目標(biāo)網(wǎng)站。
5>結(jié)束語
集群負(fù)載均衡被認(rèn)為是目前十大熱門技術(shù)之一,它也是一個高端應(yīng)用,Internet/Intranet中網(wǎng)絡(luò)負(fù)載均衡方案應(yīng)用十分廣泛,許多大中型網(wǎng)站都難脫離這種技術(shù)。NAT負(fù)載均衡、反向代理均衡及DNS負(fù)載均衡,將視需要而被采用。利用循環(huán)復(fù)用DNS實(shí)現(xiàn)負(fù)載均衡是一種經(jīng)濟(jì)又實(shí)用的方法,不需要添加昂貴的負(fù)載均衡設(shè)備,并且服務(wù)器可以位于互聯(lián)網(wǎng)的任意位置,該技術(shù)當(dāng)前使用在包括Yahoo在內(nèi)的一些Web站點(diǎn)上。















 
 
 


 
 
 
 