不懂“接入層”原理好意思說懂架構(gòu)嗎?
應(yīng)用的接入層通常需要承載大量的網(wǎng)絡(luò)請求,有些互聯(lián)網(wǎng)企業(yè)幾十萬PV請求,在軟件負載均衡無法支撐的情況下會考慮采用硬件負載均衡的技術(shù)幫助控制流量,然后再轉(zhuǎn)發(fā)給軟件負載均衡進行進一步的分發(fā)。
要點:
- 什么是硬件負載均衡?
- 硬件負載均衡的優(yōu)缺點是什么?
- 使用的注意事項以及應(yīng)用的場景?
- 硬件負載均衡器實現(xiàn)哪些功能?
什么是硬件負載均衡?
網(wǎng)絡(luò)結(jié)構(gòu)圖
硬件負載均衡解決方案是直接在服務(wù)器和外部網(wǎng)絡(luò)間安裝負載均衡設(shè)備,這種設(shè)備我們通常稱之為負載均衡器,由于專門的設(shè)備完成網(wǎng)絡(luò)請求轉(zhuǎn)發(fā)的任務(wù),獨立于操作系統(tǒng),整體性能高,負載均衡策略多樣化,流量管理智能化。
硬件負載均衡的優(yōu)缺點是什么?
優(yōu)點:直接連接交換機,處理網(wǎng)絡(luò)請求能力強,與系統(tǒng)無關(guān),負載性可以強。可以應(yīng)用于大量設(shè)施、適應(yīng)大訪問量、使用簡單。
缺點:成本高,配置冗余.即使網(wǎng)絡(luò)請求分發(fā)到服務(wù)器集群,負載均衡設(shè)施卻是單點配置;無法有效掌握服務(wù)器及應(yīng)使用狀態(tài).
使用的注意事項以及應(yīng)用的場景?
注意事項,需要注意的是硬件負載均衡技術(shù)只專注網(wǎng)絡(luò)判斷,不考慮業(yè)務(wù)系統(tǒng)與應(yīng)用使用的情況。有時候系統(tǒng)處理能力已經(jīng)達到了瓶頸,但是此時網(wǎng)絡(luò)并沒有異常,由于硬件負載均衡并沒有察覺到應(yīng)用服務(wù)器的異常,還是讓流量繼續(xù)進入到應(yīng)用服務(wù)器。
使用場景,一般應(yīng)用與PV 幾十萬甚至百萬的互聯(lián)網(wǎng)應(yīng)用,一般的軟件負載均衡器例如Nignx 處理并發(fā)一般在1-2w,不足以支撐如此大的網(wǎng)絡(luò)請求,所以在其之前通常會防止類似F5這樣的硬件負載均衡器幫助控制網(wǎng)絡(luò)請求。如果一般的互聯(lián)網(wǎng)企業(yè)網(wǎng)絡(luò)請求數(shù)在1w左右的可以考慮使用Nignx(軟件負載均衡器)就足以滿足當前的業(yè)務(wù)了。
硬件負載均衡器實現(xiàn)哪些功能?
目前市面上有NetScaler, F5, Radware, Array 等產(chǎn)品,基本實現(xiàn)原理大致相同,我們這里把使用的比較多的 F5做為例子給大家做簡單解釋,算是窺豹一斑。
多鏈路負載均衡
關(guān)鍵業(yè)務(wù)都需要安排和配置多條ISP(網(wǎng)絡(luò)服務(wù)供應(yīng)商)接入鏈路以保證網(wǎng)絡(luò)服務(wù)的質(zhì)量。如果某個ISP停止服務(wù)或者服務(wù)異常了,那么可以利用另一個ISP替代服務(wù),提高了網(wǎng)絡(luò)的可用性。不同的ISP有不同自治域,因此需要考慮兩種情況:INBOUND 和 OUTBOUND。
- INBOUND,來自網(wǎng)絡(luò)的請求信息。F5 分別綁定兩個ISP 服務(wù)商的公網(wǎng)地址,解析來自兩個ISP服務(wù)商的DNS解析請求。F5可以根據(jù)服務(wù)器狀況和響應(yīng)情況對DNS進行發(fā)送,也可以通過多條鏈路分別建立DNS連接。
- OUTBOUND,返回給請求者的應(yīng)答信息。F5可以將流量分配到不同的網(wǎng)絡(luò)接口,并做源地址的NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換),即通過IP地址轉(zhuǎn)換為源請求地址。也可以用接口地址自動映射,保證數(shù)據(jù)包返回時能夠被源頭正確接收。
防火墻負載均衡
針對大量網(wǎng)絡(luò)請求的情況單一防火墻的能力就有限了,而且防火墻本身要求數(shù)據(jù)同進同出,為了解決多防火墻負載均衡的問題,F(xiàn)5提出了防火墻負載均衡的“防火墻三明治"方案
防火墻會對用戶會話的雙向數(shù)據(jù)流進行監(jiān)控,從而確定數(shù)據(jù)的合法性。如果采取多臺防火墻進行負載均衡,有可能會造成同一個用戶會話的雙向數(shù)據(jù)在多臺防火墻上都進行處理,而單個防火墻上看不到完成用戶會話的信息,就會認為數(shù)據(jù)非法因此拋棄數(shù)據(jù)。所以在每個防火墻的兩端要架設(shè)四層交換機,可以在作流量分發(fā)的同時,維持用戶會話的完整性,使同一用戶的會話由一個防火墻來處理。而F5 會協(xié)調(diào)上述方案的配置和實現(xiàn),把“交換機”,“防火墻”,“交換機”夾在了一起好像三明治一樣。
防火墻“三明治”
服務(wù)器負載均衡
- 對于應(yīng)用服務(wù)器服務(wù)器可以在F5上配置并且實現(xiàn)負載均衡,F(xiàn)5可以檢查服務(wù)器的健康狀態(tài)如果發(fā)現(xiàn)故障,將其從負載均衡組中移除。
- F5 對于外網(wǎng)而言有一個真實的IP,對于內(nèi)網(wǎng)的每個服務(wù)器都生成一個虛擬IP,進行負載均衡和管理工作。因此,它能夠為大量的基于TCP/IP的網(wǎng)絡(luò)應(yīng)用提供服務(wù)器負載均衡服務(wù)。
- 根據(jù)服務(wù)類型不同定義不同的服務(wù)器群組。
- 根據(jù)不同服務(wù)端口將流量導向?qū)?yīng)的服務(wù)器。甚至可以對VIP用戶的請求進行特殊的處理,把這類請求導入到高性能的服務(wù)器使VIP客戶得到服務(wù)響應(yīng)。
- 根據(jù)用戶訪問內(nèi)容的不同將流量導向指定服務(wù)器。
可用性
- 自身高可用性,在雙機冗余模式下工作時實現(xiàn)毫秒級切換。
- 設(shè)備冗余電源模塊可選。
- 每臺設(shè)備通過心跳線監(jiān)控其他設(shè)備的電頻,發(fā)現(xiàn)故障的時候可以完成自動切換。
- 鏈路冗余:對鏈路故障進行實時檢測,一旦發(fā)現(xiàn)故障進行自動流量切換,過程透明。
- 服務(wù)器冗余:對服務(wù)器進行心跳檢測,一旦發(fā)現(xiàn)故障立即從服務(wù)器列表中移除,如果恢復工作又重新加入到服務(wù)器列表中。
安全性
- 站點安全防護
- 拆除空閑連接防止拒絕服務(wù)攻擊
- 能夠執(zhí)行源路由跟蹤防止IP欺騙
- 拒絕沒有ACK緩沖確認的SYN防止SYN攻擊
- 拒絕teartop和land攻擊;保護自己和服務(wù)器免受ICMP攻擊
系統(tǒng)管理
- 提供瀏覽器級別管理軟件,Web圖形用戶界面。
總結(jié):對于高并發(fā),高訪問量的互聯(lián)網(wǎng)應(yīng)用可以考慮加入硬件負載均衡器作為接入層,協(xié)助代理層的軟件負載均衡器進行負載均衡的工作。硬件負載均衡器的特點是獨立于操作系統(tǒng),處理大訪問量,費用高。從功能上來說支持多鏈路,多服務(wù)器,多防火墻的負載均衡,在可用性和安全性上也有良好的表現(xiàn)。



























