梅 琨 余 慧
(1.武漢和中信息科技責任有限公司,湖北 武漢 430070;2.湖北第二師范學院計算機學院,湖北 武漢 430205)
應用負載均衡技術原理與實現
梅 琨1余 慧2
(1.武漢和中信息科技責任有限公司,湖北 武漢 430070;2.湖北第二師范學院計算機學院,湖北 武漢 430205)
應用負載均衡技術在應用交付方面具有良好的可用性和安全性。本文詳細講解了應用負載均衡技術的原理及實現算法,并就下一步新型應用負載均衡技術的發展方向進行了展望。
應用負載均衡;HA;輪詢;動態性能分配
在負載均衡技術向當前的應用交付技術演變過程中,人們經常容易忽略一個最基本的問題,即負載均衡器設計的目的—產生高可用性、高擴展性和可預測的應用服務。當前,智能應用路由、服務器虛擬化以及共享信息化基礎設施部署是新的技術發展方向,為了在企業的數據中心建設中實現這些技術,負載均衡技術必須在基礎建設構架中提供良好的技術保障。
負載均衡目的是創建一個整體系統,將來自實際運行服務的大量物理服務器中的“服務”進行虛擬化處理。更基本的定義是在大量物理服務器之間實現負載均衡,并使這些服務器對外界看起來猶如一個整合的大服務器,使系統實現高可用性、擴展性和可預測性。
高可用性 (HA)是一個IDC數據中心即使在一個或多個服務器癱瘓的情況下仍保持可用和可接入的能力。服務虛擬化為高可用性提供了條件。如果用戶接入點與實際的服務器分離,單個服務器的故障不會造成整個系統的失效。
擴展性是指負載的增加不會對現有計算性能造成影響。服務虛擬化為擴展性提供了良好的條件。如果服務與實際的服務器分離,當應用擴展的時候只是需要增加更多數量的虛擬服務器,而最終用戶并不需要關心服務器硬件的擴充。
可預測性是指控制如何交付服務以及何時交付以實現高可用性和性能等方面的能力。
在互聯網商用的初期,許多互聯網公司發現其信息系統中的一個嚴重問題。主機沒有Web服務器軟件,即使有,使用他們也需要龐大的預算。對他們中的大多數來說,無法使基于單個PC的服務器始終能夠處理所產生的流量,而且如果流量下降、脫機開展業務,這些問題也無法處理。為了滿足這些需求,負載均衡技術應運而生。
應用負載均衡是網絡層的設備,由于這些設備與應用無關,而且它們部署于應用服務器外部,因此,它們能夠采用更直接的網絡技術實現負載均衡。從本質上講,這些設備會對外提供一個虛擬服務器地址,而且當用戶試圖連接時,它會將連接通過雙向網絡地址轉換 (NAT)轉到最適合的真正服務器上。如下圖1:

圖1 應用負載均衡技術邏輯架構
3.1 靜態負載均衡算法
輪詢(Round Robin):將請求按順序循環地連接每個服務器。當其中某個服務器發生第2到第7層的故障,BIG-IP就把其從順序循環隊列中抽取出來,不參加下一次的輪詢,直到其恢復正常。
比率(Ratio):給每個服務器分配一個加權值作為比例,根椐這個比例,把用戶的請求分配到每個服務器。當其中某個服務器發生第2到第7層的故障,BIG-IP就把其從服務器隊列中抽取出來,不參加下一次的用戶請求的分配,直到其恢復正常。
優先權(Priority):給所有服務器分組,給每個組定義優先權,把用戶的請求分配給優先級最高的服務器組(在同一組內,采用輪詢或比率算法,分配用戶的請求);當最高優先級中所有服務器出現故障,BIG-IP才將請求送給次優先級的服務器組。這種方式,實際為用戶提供一種熱備份的方式。
3.2 動態負載均衡算法
最少的連接方式(Least Connection):傳遞新的連接給那些進行最少連接處理的服務器。當其中某個服務器發生第2到第7層的故障,負載均衡設備就把其從服務器隊列中抽取出來,不參加下一次的用戶請求的分配,直到其恢復正常。
最快模式(Fastest):傳遞連接給那些響應最快的服務器。當其中某個服務器發生第2到第7層的故障,BIG-IP就把其從服務器隊列中抽取出來,不參加下一次的用戶請求的分配,直到其恢復正常。
觀察模式(Observed):該模式是以連接數目和響應時間這兩項指標的最佳平衡為依據選擇服務器。當其中某個服務器發生第2到第7層的故障,負載均衡設備就把其從服務器隊列中抽取出來,不參加下一次的用戶請求的分配,直到其恢復正常。
預測模式(Predictive):BIG-IP利用收集到的服務器當前的性能指標,進行預測分析,選擇在下一個時間段內性能達到最佳的服務器響應用戶的請求。
動態性能分配(Dynamic Ratio-APM):負載均衡設備收集應用程序和應用服務器的各項性能參數,根據各項指標動態調整流量分配。
動態服務器補充(Dynamic Server Act.):當主服務器群中因故障導致數量減少時,動態地將備份服務器補充至主服務器群。
服務質量(QoS):按不同的優先級對數據流進行分配。
服務類型(ToS):按不同的服務類型(在Type of Field中標識)對數據流進行分配。
規則模式:針對不同的數據流設置導向規則,用戶可自行編輯流量分配規則,BIG-IP利用這些規則對通過的數據流實施導向控制。
應用負載均衡技術在應用交付方面具有良好的可用性和安全性。隨著集成網絡接入控制、網絡緩存/壓縮、廣域網加速等新技術不斷出現,以及將業務規則運用到應用交付管理和控制過程中的重要性日益提高,這些方面將擴展負載均衡設備的各項功能來為企業的信息化提供更多的支持。對用戶和應用之間的網絡進行整合,并減少由于訪問數量增加所產生的壓力。在未來的發展中,還會將傳統的單機技術(例如防火墻、防DDOS和防病毒)融合到應用負載均衡技術領域中。
目前還不清楚應用負載均衡技術最終的功能體系,但有一點可以明確,即應用負載均衡技術將發展成為數據系統建設中不可或缺的一部分,為企業新型數據中心的發展提供堅實的技術支撐。
[1]趙少卡,李立耀,凌曉.基于OpenStack的清華云平臺構建與調度方案設計[J].計算機應用,2013,33(12):3335-3338,3349.
[2]王聰,王翠榮,王興偉.面向云計算的數據中心網絡體系結構設計[J].計算機研究與發展,2012,49(2):286-293.
[3]盛憲鋒,及俊川,周小軍.基于虛擬化技術的私有云APCS平臺設計[J].計算機工程,2012,38(8):210-212.
[4]劉鹛程,陳椿.面向云計算的虛擬機動態遷移框架[J].計算機工程,2010,36(5):37-39.
[5]邢劍鋒,王鵬飛,沈松.基于虛擬機的可信云計算平臺研究與設計[J].微型機與應用,2010,29(16):75-78.
Principle and Realization of Load Balancing
Mei Kun1Yu Hui2
(1.Wuhan Orizone Information Technology Co.,Ltd,Wuhan 430070,Hubei) (2.Hubei University of Education,Wuhan 430205,Hubei)
Load balancing technique contributes good usability and security to application delivery.This paper presents not only the principle of load balancing technique,but also its realization in detail.Further,prospective application of this technique and future research work are also discussed.
load balancing;HA;polling;dynamic ratio-APM
梅琨,男,湖北武漢人,工程師。研究方向:云計算。
湖北省科技廳自然科學基金項目,項目編號:2013CFB012。