小編的話
“品高公開(kāi)課”系列文章意在分享技術(shù)牛人的知識(shí)干貨,和大家一起交流學(xué)習(xí)云知識(shí),每期主題都不一樣喲!期待各位讀者在文后發(fā)表留言,來(lái)一場(chǎng)技術(shù)上的交流和思想上的碰撞!本期品高公開(kāi)課由吳炯輝帶來(lái)“如何實(shí)現(xiàn)高性能負(fù)載均衡”的技術(shù)分享。
分享嘉賓
吳炯輝,目前就任品高云架構(gòu)產(chǎn)品部的軟件開(kāi)發(fā)工程師。專注于SDN開(kāi)發(fā)和云網(wǎng)絡(luò)安全領(lǐng)域,擁有多年網(wǎng)絡(luò)程序開(kāi)發(fā)經(jīng)驗(yàn)。15年開(kāi)始轉(zhuǎn)向SDN方向的研究,主要負(fù)責(zé)SDN和云網(wǎng)絡(luò)安全的開(kāi)發(fā)任務(wù)。
分享正文
負(fù)載均衡提供了一種廉價(jià)有效透明的方法,以便擴(kuò)展網(wǎng)絡(luò)設(shè)備和服務(wù)器的帶寬、增加吞吐量、加強(qiáng)網(wǎng)絡(luò)處理能力、提高網(wǎng)絡(luò)的靈活性和可用性。
而在云網(wǎng)絡(luò)中,對(duì)負(fù)載均衡的需求是大量存在的,因此各個(gè)云廠商都對(duì)應(yīng)其產(chǎn)品開(kāi)發(fā)出不同的負(fù)載均衡器。
這里,我們品高也因應(yīng)這個(gè)大環(huán)境開(kāi)發(fā)出一種具有一定顛覆性的負(fù)載均衡器。在正式介紹品高云網(wǎng)絡(luò)負(fù)載均衡器之前,我們先看看傳統(tǒng)上比較常用的負(fù)載均衡部署方法。
代理式負(fù)載均衡:
在負(fù)載均衡器的發(fā)展歷史上,代理式負(fù)載均衡器是一種比較常用也是最早出現(xiàn)的基于代理服務(wù)器軟件實(shí)現(xiàn)的一種代理方式。
它是一種雙向代理的負(fù)載均衡器,好處是通用容易理解并且配置簡(jiǎn)單成熟,后排機(jī)器不需要任何操作。但又往往因?yàn)殡p向的流量都需要通過(guò)負(fù)載均衡器處理,所以這種方式的負(fù)載均衡,通常都需要一個(gè)性能極其優(yōu)秀的機(jī)器作為負(fù)載均衡器,不然很可能會(huì)成為這個(gè)網(wǎng)絡(luò)中的性能瓶頸位。
LVS-DR模式負(fù)載均衡:
LVS-DR模式負(fù)載均衡器的工作原理是:客戶端發(fā)送請(qǐng)求到負(fù)載均衡器的VIP,然后通過(guò)負(fù)載均衡處理后到后排機(jī)器,后排機(jī)器收到請(qǐng)求后,直接回復(fù)到客戶端而非再次通過(guò)負(fù)載均衡器。
這樣解決了來(lái)回雙向流量都要經(jīng)過(guò)代理機(jī)器的問(wèn)題,但使用LVS的不足是負(fù)載均衡器和后排服務(wù)器都需要配置VIP。綜合上來(lái)說(shuō),這種模式的負(fù)載均衡在性能上有很大的提升。
品高云網(wǎng)絡(luò)負(fù)載均衡:
在介紹完兩個(gè)傳統(tǒng)的負(fù)載均衡器后。我們正式介紹一下品高云網(wǎng)絡(luò)負(fù)載均衡器,我們的均衡器基于SDN上,吸收了LVS-DR模式——高效低成本特性的負(fù)載均衡器。屏棄了VIP的配置,同時(shí)支持Keepalived等常用配備,也可選擇配備專用的品高WAF防火墻作為安全的保證。
品高云網(wǎng)絡(luò)負(fù)載均衡工作原理:
那么我們的負(fù)載均衡器是怎樣工作的呢?我們來(lái)具體一點(diǎn)說(shuō)說(shuō)。
當(dāng)客戶端訪問(wèn)負(fù)載均衡器時(shí),SDN控制器會(huì)配置正向的流表,讓數(shù)據(jù)包送達(dá)負(fù)載均衡器,同時(shí)SDN控制器會(huì)配置后排機(jī)器訪問(wèn)客戶端的流表,以達(dá)到當(dāng)后排機(jī)器可以正?;匕娇蛻舳说哪康?。
那為什么不讓后排機(jī)器訪問(wèn)客戶機(jī)時(shí)才配置流表?正常來(lái)說(shuō),SDN控制器會(huì)在有新的數(shù)據(jù)包到達(dá),才會(huì)配置一條讓數(shù)據(jù)包通過(guò)的流表到物理節(jié)點(diǎn)(NC)。
品高云是單向通過(guò)負(fù)載均衡器,當(dāng)后排機(jī)器要響應(yīng)請(qǐng)求去查找客戶端MAC地址時(shí),如果負(fù)載均衡器和后排機(jī)器不是同一控制器管理的話,不能快速查找到MAC地址,這樣就違背了高效的特點(diǎn)了。
綜合情況,品高云是讓后排機(jī)器訪問(wèn)客戶端的流表在客戶端發(fā)送請(qǐng)求時(shí)就配置完畢。
六大亮點(diǎn)
好了,說(shuō)完了品高負(fù)載均衡器的一些工作原理和技術(shù)細(xì)節(jié)之后。我們來(lái)談?wù)勎覀兊钠犯哓?fù)載均衡器有究竟具有了哪些顛覆性的亮點(diǎn)。
這些亮點(diǎn)是品高負(fù)載均衡器的價(jià)值所在,對(duì)于用戶來(lái)說(shuō),它可以得到與使用其他負(fù)載均衡所沒(méi)有的愉快體驗(yàn)。
免配置:
免配置是針對(duì)LVS來(lái)說(shuō)的,即后排機(jī)器免除了配置,節(jié)省用戶的培訓(xùn)與時(shí)間成本。
免VIP:
免VIP是針對(duì)LVS和Keepalived來(lái)說(shuō)的,即免除了LVS頭機(jī)和后排機(jī)器的VIP??梢越档驮俅钨?gòu)買公有IP的成本。
高性能:
性能高低是判斷負(fù)載均衡器是否值得使用的重要指標(biāo)。品高云可以滿足絕大部分想用低成本就獲得高效的用戶的要求。
這里列舉了一下用Nginx、Apache和品高負(fù)載均衡器作為均衡器的測(cè)試數(shù)據(jù)。很明顯的是品高負(fù)載均衡器的處理能力,隨著客戶端的并發(fā)數(shù)上升而線性上升。
高可用:
品高負(fù)載均衡器配備免VIP高可用特性,在有一臺(tái)均衡器當(dāng)機(jī)之后可以快速響應(yīng)達(dá)到無(wú)縫交替,用戶并無(wú)感知。
彈性:
彈性是指即時(shí)添加后排機(jī)器即時(shí)可用,擴(kuò)容方便。傳統(tǒng)的負(fù)載均衡器如果要添加一臺(tái)后排機(jī)器需要重新編寫(xiě)配置文件,而且必須重新啟動(dòng)應(yīng)用。而品高負(fù)載均衡器則無(wú)需這些操作,避免消耗配置時(shí)間。
安全:
品高負(fù)載均衡器可選擇配備專用的品高WAF。針對(duì)SQL注入、XSS危險(xiǎn)字段、敏感字段、自定義規(guī)則都可以用很好的防護(hù)功能。
其他云廠商負(fù)載均衡器介紹
說(shuō)完了我們的品高負(fù)載均衡器的亮點(diǎn)之后。可能我們還想知道其他云廠商的負(fù)載均衡器是怎樣的。
所以我們還分別測(cè)試了阿里云和青云的負(fù)載均衡器,看看它們的工作狀況是如何的。
我們?cè)谒麄兊脑破脚_(tái)上同樣創(chuàng)建兩臺(tái)2核2G內(nèi)存的后排機(jī)器,一臺(tái)負(fù)載均衡器和兩臺(tái)2核2G內(nèi)存的測(cè)試客戶端。
也同樣使用了autobench和ab工具,對(duì)負(fù)載均衡器進(jìn)行并發(fā)測(cè)試和性能壓力測(cè)試得出一些數(shù)據(jù)。
阿里云負(fù)載均衡器:
從下面第一張表中,我們可以看到,阿里云的負(fù)載均衡器的并發(fā)處理能力到7000并發(fā)數(shù)時(shí),就開(kāi)始處于一個(gè)峰值位置,直到21000并發(fā)數(shù)時(shí),才開(kāi)始不平穩(wěn)而且急速衰減。
而第二張表中,我們可以看到300000個(gè)包的處理總耗時(shí)是52秒多,而且90%的包的處理時(shí)間都在319ms內(nèi)。
這樣一個(gè)數(shù)據(jù)是一個(gè)不錯(cuò)的數(shù)據(jù),可以看出阿里云的負(fù)載均衡器的處理能力還是不錯(cuò)的。
青云負(fù)載均衡器:
而青云在下面第一張表中,我們可以看到負(fù)載均衡器的并發(fā)處理能力到2000時(shí)便到了高峰,到5000的時(shí)候就一直保持在400多個(gè)實(shí)際并發(fā)處理。
而第二張表中,我們可以看到300000個(gè)包的處理總耗時(shí)是86秒多,90%的包的處理時(shí)間都在951ms內(nèi)。
可以看出青云相對(duì)于阿里云的負(fù)載均衡器的處理能力不怎么樣,客戶請(qǐng)求處理比較慢,并發(fā)處理能力不足。
歡迎大家一起來(lái)交流!
想提出問(wèn)題的同學(xué)們,可以在右下方“寫(xiě)留言”,分享嘉賓會(huì)熱情并且耐心地進(jìn)行解答噢!
你想和更多志同道合的技術(shù)大咖一起交流嗎?你想收聽(tīng)每周的“品高微信群公開(kāi)課”的直播嗎?
長(zhǎng)按識(shí)別以下二維碼關(guān)注“品高云計(jì)算”微信公眾號(hào),回復(fù)“公開(kāi)課”,品高公開(kāi)課的最新咨詢、往期精彩回顧都在這里!