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