引言
在過去的幾年中,隨著互聯網的快速發展和企業應用WEB化,服務器負載均衡(SLB)技術已經不再陌生。服務器負載均衡根據用戶數據請求中的4-7層信息將其智能轉發到后端少則數臺多則成百上千臺應用服務器,并且確保根據事先定義的策略選擇最佳的服務器進行轉發,從而一定程度上解決了應用的可用性、擴展性等問題。但是,隨著用戶對應用可用性和擴展性需求的進一步增加,越來越多的用戶不滿足于在單一數據中心提供服務,開始考慮容災、用戶就近訪問等問題。這正是負載均衡設備中的全局服務器負載均衡技術(GSLB)所要解決的問題。盡管GSLB技術早在數年前就是大部分負載均衡設備提供的必備功能,但由于用戶需求較小、功能不夠完善、性能不足、價格高昂等因素,目前部署GSLB的用戶在負載均衡整個用戶群中所占比例還是很小。相信在未來幾年中,GSLB的應用比例將快速增加。本文針對GSLB相關技術及解決方案進行介紹。
GSLB技術
市場上存在的GSLB技術可以歸納為以下幾類:
·基于DNS的GSLB
絕大部分使用負載均衡技術的應用都通過域名來訪問目的主機,在用戶發出任何應用連接請求時,首先必須通過DNS請求獲得服務器的IP地址,基于DNS的GSLB正是在返回DNS解析結果的過程中進行智能決策,給用戶返回一個最佳的服務IP。用戶應用流程與沒有GSLB時未發生任何變化。這也是市場上主流的GSLB技術。
·基于應用重定向的GSLB
基于應用重定向的GSLB是在負載均衡設備收到用戶應用請求并選擇最佳服務IP后,通過應用層協議將用戶請求重定向到所選擇的最佳服務IP。這種方式只適用于支持應用重定向的協議(如HTTP、MMS),且性能較差。
·基于IP地址偽裝(三角傳輸)的GSLB
有個別負載均衡設備廠商采用這種技術來實現GSLB。當用戶應用請求到達一臺負載均衡設備時,這臺負載均衡設備計算出對于該用戶最佳的服務IP(定義在另一臺同一廠商負載均衡設備上)并將用戶請求轉發給該IP。第二臺負載均衡設備直接將響應返回用戶,但必須將源地址修改為第一臺負載均衡設備的服務IP。這種方式要求所有站點必須為同一廠家的負載均衡設備,另外地址偽裝的數據包會可能被互聯網中的路由設備過濾掉。因為所有用戶請求都要經過廣域網三角方式傳輸而不是發到最佳的負載均衡設備,用戶訪問效果和性能都比較差。
基于主機路由注入的GSLB(Anycast)
在多個站點定義相同的服務IP,并由負載均衡設備或路由器將該IP的主機路由發送出去,這樣網絡中會存在多條到達該主機地址的路由。由于路由設備總是選擇最近(Metric最小)的路由轉發數據,用戶的訪問請求總是被轉發到最近的負載均衡設備。這種方式要在不同站點廣播相同的主機路由,由于運營商的限制問題很難實現。另外這種方式策略非常簡單,只能根據最短路由選擇,客戶無法定義靈活的選擇策略。
根據上面的分析,后面的三種方式都有很多局限性或性能較差,這也是為什么基于DNS的GSLB成為主流技術的原因。在基于DNS的GSLB具體實現中,不同廠家的功能會有所不同,也有部分用戶自己開發智能DNS實現類似功能??傮w來說,一個完善的基于DNS的GSLB設備可以滿足以下需求:
支持任何IP應用。
各服務站點可以使用不同廠家的本地服務器負載均衡設備或直接使用真實服務器。
GSLB控制設備可直接作為授權DNS,也可以配置為DNS代理方式。DNS代理方式在做GSLB決策控制同時可以對后端DNS服務器進行負載均衡。當業務量增加時可以通過增加后端的真實DNS服務器數量進行擴展。
內置國際IANA機構提供的全球各區域地址分配表,且用戶自定義區域可以包含足夠多的IP前綴。同時區域定義支持樹狀分層結構,如China.Beijing.HaiDian。這些功能在GSLB控制設備進行靜態基于區域選擇服務站點時是必須的。
支持返回A記錄和CNAME等記錄。尤其在多級GSLB控制時,返回CNAME是必須具備的。
支持豐富的GSLB策略,常見的如往返時間(RTT)、權重、活動服務器等。
具有靈活的自定義腳本用于過濾各種非法DNS請求或攻擊。
強大的DDoS攻擊防護功能。一旦GSLB控制設備被攻擊癱瘓,所有業務都無法提供。
頁次:1/2 首頁 上一頁 下一頁 尾頁 Go: |