韓俊瑞,袁艷紅
(河北北方學(xué)院教務(wù)處 河北 張家口 075000)
隨著信息技術(shù)的革新應(yīng)用,信息管理系統(tǒng)在部門事務(wù)處理中發(fā)揮了相當大的作用,為用戶提供方便、規(guī)范、及時地響應(yīng)請求,大大提升了用戶對單位事務(wù)服務(wù)的滿意度。信息系統(tǒng)的開發(fā)應(yīng)用,讓事務(wù)管理方式趨向科學(xué)、規(guī)范,辦事流程更加快捷、高效,是當前信息現(xiàn)代化建設(shè)的重要手段,加速了管理走向現(xiàn)代化進程,是企事業(yè)單位發(fā)展的主要標志和必由之路。
信息系統(tǒng)的開發(fā)應(yīng)用具備各自的特點,滿足不同的個性要求,但同時部署應(yīng)用過程中存在不變的共性,即用戶訪問的要求,對外服務(wù)的質(zhì)量及響應(yīng)速度是系統(tǒng)的一個重要的表現(xiàn)特征。 在應(yīng)答服務(wù)要求的同時,能及時反饋服務(wù)結(jié)果,也是評價信息系統(tǒng)工作的重要指標。 學(xué)校的事務(wù)處理中,從日常辦公、學(xué)生行為管理到學(xué)籍管理等,信息系統(tǒng)有著日益普遍的應(yīng)用,促進了日常事務(wù)處理工作能力的提升。 隨著信息管理系統(tǒng)的深入應(yīng)用,凸顯出系統(tǒng)之外的問題是,用戶訪問高峰時,系統(tǒng)的響應(yīng)能力,其中包括系統(tǒng)穩(wěn)定性和數(shù)據(jù)安全。 為此,解決系統(tǒng)請求高并發(fā)時訪問請求的合理分配,是提高系統(tǒng)處理功能的關(guān)鍵。 本研究以此為切入點,研究用戶訪問高峰時,信息系統(tǒng)對外響應(yīng)能力,在高校信息管理系統(tǒng)中,構(gòu)建服務(wù)器集群,部署F5 負載均衡服務(wù)器,平衡用戶服務(wù)請求,解決系統(tǒng)訪問高峰時,負載壓力分配及數(shù)據(jù)安全問題。
信息系統(tǒng)部署實施完成后,隨著用戶訪問量的增加,系統(tǒng)的事務(wù)作業(yè)隨之增加,單個服務(wù)器無法滿足高并發(fā)請求,在此情況下提升系統(tǒng)的對外服務(wù)能力,需要擴充服務(wù)器數(shù)量,多個web 服務(wù)器共同協(xié)作完成。 在web 服務(wù)集群中,將用戶請求合理分發(fā)到多個web 服務(wù)器,需要解決在原服務(wù)器網(wǎng)絡(luò)架構(gòu)基礎(chǔ)上增加負載分配方式或設(shè)備。
F5 BIG-IP 是F5 Network 公司全球領(lǐng)先的硬件負載均衡器,集負載均衡,流量控制優(yōu)化、安全等功能于一體,不僅強調(diào)系統(tǒng)穩(wěn)定性,而且注重智能與優(yōu)化功能特性,通過B/S 模式管理,提供WEB 管理界面,用于配置系統(tǒng)功能[1]。 其利用一種任務(wù)分配方法,擴充網(wǎng)絡(luò)設(shè)備,在原有網(wǎng)絡(luò)基礎(chǔ)之上,增加的一種網(wǎng)絡(luò)性能優(yōu)化設(shè)備,由此達到服務(wù)器整體的帶寬及系統(tǒng)吞吐量的增加,網(wǎng)絡(luò)數(shù)據(jù)處理能力,系統(tǒng)網(wǎng)絡(luò)的可用性與靈活性增強。
F5 負載均衡設(shè)備,其系統(tǒng)基本組成主要有節(jié)點服務(wù)器(Node)、資源池(Pool)和虛擬服務(wù)器(Virtual Server)構(gòu)成,每一個Node 代表一個應(yīng)用服務(wù)器,資源池由接收和處理用戶訪問流量的一組web 服務(wù)器組成即Web 服務(wù)器集群,虛擬服務(wù)器提供F5 負載均衡整體對外服務(wù)的功能。
當用戶通過客戶端向系統(tǒng)發(fā)起請求,首先由BIG-IP收到用戶請求,由Virtual Server 收集處理,在Pool 中進行映射服務(wù),將用戶請求轉(zhuǎn)發(fā)給pool 中服務(wù)器集群的節(jié)點服務(wù)器,當用戶請求由節(jié)點服務(wù)器響應(yīng)后,處理結(jié)果再次轉(zhuǎn)給Virtual Server,最后由BIG-IP 將結(jié)果返回給客戶端,完成用戶訪問請求。 如圖1 所示:
圖1 F5 負載均衡架構(gòu)圖
F5 BIG-IP 是一種高效的實現(xiàn)負載分配的網(wǎng)絡(luò)設(shè)備,其獨立基礎(chǔ)網(wǎng)之外的網(wǎng)絡(luò)性能優(yōu)化設(shè)備,有12 種負載分配算法[2],系統(tǒng)能滿足多種形式流量分配要求。 其中常用的有以下幾種:
(1)輪詢(Round Robin)。 負載均衡系統(tǒng)將web 服務(wù)器節(jié)點構(gòu)建有序隊列,將用戶請求依次循環(huán)地分配給每一個web 服務(wù)器,實現(xiàn)對外服務(wù)功能。 當某個節(jié)點服務(wù)器發(fā)生第二到第七層的故障,BIG-IP 按算法調(diào)整服務(wù)隊列,暫時剔除故障服務(wù)器,不再進入下一次的輪詢服務(wù)。 當系統(tǒng)故障處理完成后,恢復(fù)正常。
(2)比率(Ratio)。 系統(tǒng)給各節(jié)點服務(wù)器賦予相應(yīng)數(shù)值,作為加權(quán)值,系統(tǒng)按照數(shù)值大小將用戶請求分配到相應(yīng)節(jié)點服務(wù)器。 當某個節(jié)點服務(wù)器發(fā)生第二到第七層的故障,BIG-IP 就跳過此節(jié)點服務(wù)器,同時將其從服務(wù)名單中剔除,任務(wù)分配不再給此節(jié)點服務(wù)器,直到其恢復(fù)正常。
(3)優(yōu)先權(quán)(Priority)。 首先將全部節(jié)點服務(wù)器進行分組,按組定義優(yōu)先權(quán),在同一組內(nèi),用戶請求按輪詢或比率算法分配。 BIG-IP 進行用戶請求分配時,按組優(yōu)先級進行分配,當服務(wù)組中的所有節(jié)點出現(xiàn)故障時,無法再提供服務(wù)時,BIG-IP 將請求分配給下一優(yōu)先級的服務(wù)器組。
(4)最少的鏈接方式(Least Connection)和最快模式(Fastest)。 BIG-IP 系統(tǒng)經(jīng)過檢測,找到鏈接最少或響應(yīng)最快的節(jié)點服務(wù)器[3],將新的鏈接請求傳遞給最少鏈接處理的服務(wù)器或響應(yīng)最快的節(jié)點服務(wù)器。 與輪詢、比率等算法一樣,系統(tǒng)按時檢測服務(wù)器運行情況,發(fā)現(xiàn)待分配任務(wù)的節(jié)點服務(wù)器發(fā)生第二到第七層的故障時,BIG-IP 將其從服務(wù)隊列暫時剔除,不再參加請求處理工作,任務(wù)由正常的服務(wù)器完成,直到其恢復(fù)正常。
Virtual Server 模式常用有Performance L4、Standard VS等。 Performance L4 只關(guān)注請求源IP 地址,端口號和目標地址IP 地址。 用戶請求到達F5 后,只改變目的地址IP地址及端口號進行數(shù)據(jù)轉(zhuǎn)發(fā),不需要進行數(shù)據(jù)處理,不占用CPU 資源,因此對系統(tǒng)影響較小,轉(zhuǎn)發(fā)速度快。 若對系統(tǒng)訪問沒有嚴格要求,僅考慮到F5 負載均衡引入對應(yīng)用系統(tǒng)的影響,可以優(yōu)先選用Performance L4。
Standard VS 該模式下,設(shè)備上啟用7 層功能,客戶端發(fā)起請求與F5 經(jīng)過三次握手建立連接,然后F5 再與后端服務(wù)器進行三次握手,完成后連接,數(shù)據(jù)處理完全由F5 完成,CPU 資源占用相對較高,當系統(tǒng)要求Cookie、Session ID 及Header 會話基于交易的長鏈接拆分、對Syn 攻擊防御等訪問要求較高時,可以采用Standard Virtual Server。
綜上所述,F(xiàn)5 具備以下性能及特點:
(1)高可用性。 由F5 構(gòu)成的負載均衡服務(wù)系統(tǒng),可以優(yōu)化整個服務(wù)集群框架,實時監(jiān)測集群中服務(wù)器服務(wù)狀態(tài),當系統(tǒng)宕機或出現(xiàn)非正常情況時,剔除無法服務(wù)節(jié)點,保證系統(tǒng)的對外服務(wù)功能,同時具有熱備功能,若系統(tǒng)在運行當中BIG-IP 出現(xiàn)服務(wù)中斷,即可啟動另一條備用服務(wù)鏈路,進行毫秒級服務(wù)轉(zhuǎn)換,接管事務(wù)工作,同步會話功能,避免服務(wù)的中斷[4]。 所以F5 不僅能完成負載均衡的完整分配,同時提供鏈路冗余功能,充分保證系統(tǒng)穩(wěn)定性[5]。
(2)較高的安全性。 信息系統(tǒng)對外服務(wù)中最大的危險之一是來自網(wǎng)絡(luò)的非法訪問,諸如SYN flood,網(wǎng)絡(luò)拒絕服務(wù)(DoS)和分布式拒絕服務(wù)(DDoS)等。 F5 基本功能是系統(tǒng)的流量控制,負載均衡分配,提供四層和七層過濾規(guī)則,可以做到安全代理,防止基于網(wǎng)絡(luò)的攻擊。 除此之外F5 可提供訪問策略管理器(Access Policy Manager)、高級防火墻管理器(Advanced Firewall Manager)、應(yīng)用安全管理器(Application Security Manager)、安全Web 網(wǎng)關(guān)服務(wù)等多種相關(guān)安全服務(wù),提供完整的攻擊防御系統(tǒng),可明顯增加Web 服務(wù)的數(shù)據(jù)安全,防止和避免數(shù)據(jù)的丟失或損壞、保護用戶權(quán)益。
(3)會話保持功能。 F5 可以實現(xiàn)Session 會話功能,同一用戶請求可以保持由同一個服務(wù)器持續(xù)服務(wù),避免服務(wù)鏈接中斷,保證服務(wù)的完整性[6-7]。
高校信息管理系統(tǒng),主要是解決系統(tǒng)日常事務(wù)的處理,諸如任務(wù)下達、成績查詢、排課排考、畢業(yè)信息審核、學(xué)生選課等教學(xué)工作,系統(tǒng)包括用戶登錄、數(shù)據(jù)處理、信息存儲等部分構(gòu)成,不僅要有完備的數(shù)據(jù)處理算法,較強的數(shù)據(jù)處理能力,更要有較高數(shù)據(jù)安全性要求。 系統(tǒng)運行的顯著特點,需要進行身份安全驗證,建立會話通道,會話保持狀態(tài)下,用戶與系統(tǒng)間進行信息交互。 另外系統(tǒng)之外更重要的是用戶訪問高峰時,請求高并發(fā)狀態(tài),系統(tǒng)的處理事務(wù)的能力,以及系統(tǒng)自身的穩(wěn)定性。 為達到以上要求,增加應(yīng)用服務(wù)器,在Web 服務(wù)器前增加F5 負載均衡,實現(xiàn)各服務(wù)器均衡工作,滿足用戶請求,做到請求及時響應(yīng),事務(wù)及時處理,系統(tǒng)高峰穩(wěn)定不宕機。
(1)建立Pools,選擇BIG-IP 使用的負載均衡算法并設(shè)置健康監(jiān)測模式。
選擇Main 菜單,依次點擊Local Traffic->Pools ->Pool List 選擇增加,建立Pools。
Pools 命名Name 為“PoolX”,Health Monitors 健康監(jiān)測模式選擇為“tcp_half_open”;在Resources 中選擇Load Balancing Method 使用的負載均衡算法為“Round Robin”,New Members 中adress 填入節(jié)點服務(wù)器IP 地址,共計四臺,Service Port 中選擇“HTTP”,點擊完成。
(2)設(shè)置Virtual Servers,建立對外訪問環(huán)境,選擇服務(wù)轉(zhuǎn)發(fā)模式及會話保持協(xié)議。
進入Main 菜單,依次選擇Local Traffic->Virtual Servers->Virtual Server List 點擊增加,建立Virtual Servers命名為“vs”,Destination 中type 設(shè)置為“Host”,Address 設(shè)置為vs 對外訪問地址:x. x. x. x;Service Port 選擇“All ports”,State 選擇設(shè)置為Enabled 可用狀態(tài)。 Configuration中type 選擇“standard”模式,SNAT Pool 選擇為“Auto map”,保證當防火墻策略啟用時,用戶訪問請求,由相應(yīng)節(jié)點服務(wù)器完成后,順利返回到vs,避免策略阻斷錯誤的發(fā)生;Resources 中選擇為已建立Pools 名稱。 Default Persistence Profile 選擇會話保持協(xié)議“ my-sourcepersistence”,設(shè)置會話保持功能。
在Local Traffic->profiles 協(xié)議下選擇persistence 添加會話協(xié)議,命名為“my-source-persistence”,Persistence Type選擇“source address affinity”,Timeout 設(shè)置為3 600 s。
在Local Traffic->Monitors 中添加命名為“http_new”的Health monitors 協(xié)議,type 選擇“tcp”,配置健康狀態(tài)檢測參數(shù),設(shè)置interval =5 s,timeout =16 s,在16 s 時間內(nèi),按5 s 間隔探測系統(tǒng)的響應(yīng)情況。
Local Traffic->iRules 中添加irule 規(guī)則命名為“Post_limitation”,設(shè)置基于源地址的固定時間內(nèi)訪問次數(shù),以此達到DDoS 攻擊。 在Post_limitation 中,設(shè)置同一IP 地址1秒內(nèi)訪問超過25 次Http post 請求,屏蔽訪問,添加以下代碼:
(1)硬件組成
F5 型號:BIG-IP 3600 SERIES,web 服務(wù)器四臺,配置如下:CPU,Intel(R) Xeon(R) E5-2630 v3 @ 2.40 GHz;內(nèi)存,16 G;磁盤,100 G。
BIG-IP 配置后,檢查節(jié)點服務(wù)器運行情況,統(tǒng)計信息如圖2。
圖2 F5 BIG-IP 節(jié)點服務(wù)器健康狀態(tài)圖
通過以上F5 BIG-IP 配置統(tǒng)計,說明系統(tǒng)功能正常。
(2)性能測試
在Windows 下模擬訪問環(huán)境,系統(tǒng)Windows10,壓力測試軟件Apache2.4。
在系統(tǒng)中以管理員模式進入windows PowerShell 環(huán)境,命令提示符下輸入:
ab -nx -cy http:/ /服務(wù)器地址/xtgl/login_slogin.html其中x 代表訪問次數(shù),y 代表用戶量,x 大于或等于y。 實驗測試1000-10000 用戶情況,按步長2000 遞增。 整個測試過程統(tǒng)計數(shù)據(jù)如表1。
表1 BIG-IP 不同量級壓力測試數(shù)據(jù)統(tǒng)計表
相同硬件環(huán)境下,應(yīng)用負載均衡軟件Nginx 進行測試。 Nginx 是使用較多的負載均衡軟件,其負載均衡策略,用戶訪問會話保持,安全訪問可以實現(xiàn)高校信息系統(tǒng)功能要求。 實驗測試使用Nginx 1.18,采取步長1 000 進行,構(gòu)建高并發(fā)信息服務(wù)集群,實驗運行過程中,Nginx 服務(wù)器集群,當并發(fā)量上升到6 000 時和8 000 時,系統(tǒng)壓力測試出現(xiàn)異常,提示:apr_pollset_poll: The timeout specified has expired,服務(wù)無法正常完成。
兩項測試數(shù)據(jù)形成F5 BIP-IP 服務(wù)集群與Nginx 軟件服務(wù)器集群性能對比如圖3。
圖3 F5 服務(wù)集群與Nginx 服務(wù)集群對比
通過對比可以看出:F5 負載均衡在整個測試過程中,系統(tǒng)每秒完成平均請求數(shù)量不隨用戶的激增出現(xiàn)波動,趨勢比較平穩(wěn),系統(tǒng)功能正常,更沒有出現(xiàn)錯誤或宕機情況,穩(wěn)定性較好。 軟件負載均衡服務(wù)器集群,當用戶量級在較低范圍時,系統(tǒng)表現(xiàn)正常,甚至優(yōu)于F5 負載均衡服務(wù)集群,用戶激增時系統(tǒng)每秒處理請求數(shù)值波動較大,系統(tǒng)服務(wù)出現(xiàn)不穩(wěn)定,甚至服務(wù)異常。
綜上所述,軟件負載均衡處理系統(tǒng)瓶頸時具備一定的優(yōu)勢,不用增加硬件設(shè)備,成本較低,缺點是需要進行軟件布置,消耗硬件資源和軟件資源,系統(tǒng)鏈接達到一定請求高峰時也會出現(xiàn)瓶頸問題。 F5 硬件負載均衡是獨立于服務(wù)器集群之外,單獨的硬件設(shè)備,有一定的硬件成本[8-9],其優(yōu)點比較明顯,部署在web 服務(wù)器與客戶端之間,提供多樣化的請求分配策略,智能化訪問流量控制,能達到最佳的負載均衡要求,極大地保障系統(tǒng)的穩(wěn)定性。
隨著信息系統(tǒng)在日常工作中普及,用戶請求的及時響應(yīng)和請求訪問高峰時系統(tǒng)功能的穩(wěn)定,是衡量系統(tǒng)的重要指標。 F5 BIG-IP 部署實施在高校信息管理系統(tǒng)中,不僅能做到訪問高并發(fā)時負載均衡合理,而且能達到Web 服務(wù)器節(jié)點實時健康監(jiān)測,優(yōu)化訪問策略,防止非法攻擊,做到系統(tǒng)高效、穩(wěn)定。 其部署實施基本功能相對簡便易行,不足之處,硬件價格偏高,但隨著技術(shù)革新,相信一定會趨于合理。