亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于Linux集群技術的負載均衡方法

        2014-07-18 11:53:26謝曉燕張靜雯
        西安郵電大學學報 2014年3期
        關鍵詞:輪詢吞吐量集群

        謝曉燕, 張靜雯

        (西安郵電大學 計算機學院, 陜西 西安 710121)

        一種基于Linux集群技術的負載均衡方法

        謝曉燕, 張靜雯

        (西安郵電大學 計算機學院, 陜西 西安 710121)

        針對單純提高硬件性能已經(jīng)無法解決的網(wǎng)絡服務質量問題,提出一種基于Linux集群技術的負載均衡分配方法。在Linux虛擬服務器異構集群的基礎上,引入動態(tài)反饋模型來優(yōu)化采集負載信息的通信機制,并通過智能分配策略來避免傳統(tǒng)輪詢算法對服務器資源的過度消耗。結合Linux腳本及命令進行性能測試,實驗結果表明,提出的智能分配方法比加權輪詢算法具有更好的響應時間和吞吐量。

        負載均衡;Linux 虛擬服務器;調(diào)度算法

        互聯(lián)網(wǎng)日新月異的發(fā)展帶來了3G井噴時代,客戶端的增加和網(wǎng)絡請求的實時性、突發(fā)性、并發(fā)性等特征帶給了服務器巨大的壓力,而單純提高硬件性能根本無法滿足需求。集群技術就是在這種情況下應運而生的。

        集群的核心技術之一就是負載均衡,負載均衡通常由多臺服務器以對稱的方式組成一個服務器集群。每臺服務器都具有等價的地位,可以單獨對外提供服務而無需其他服務器的輔助。系統(tǒng)通過某種負載分擔技術將外部發(fā)來的請求均勻分配到對稱結構中的某一臺服務器上或是將重負載節(jié)點的任務分擔到多臺服務器上做并行處理,接受到請求的服務器獨立地回應客戶的請求。均衡負載能夠平均分配客戶請求到服務器集群,從而提供快速獲取重要數(shù)據(jù)并解決并發(fā)訪問服務問題[1-2]。

        目前最常用的負載均衡技術有基于DNS的負載均衡,反向代理負載均衡,基于NAT的負載均衡。基于DNS的負載均衡雖然簡單易行但它不能穩(wěn)定、可靠、高效地滿足企業(yè)對服務器的需求也不能滿足用戶對網(wǎng)絡訪問的及時響應和可用性;基于NAT的負載均衡雖然很好地解決了IP地址緊張的問題,但是每次NAT轉換勢必會增加NAT設備的開銷;反向代理服務器通過代理技術顯著地提高了靜態(tài)網(wǎng)絡的瀏覽速度,改善了網(wǎng)絡的訪問質量并且保證了一定的安全性,但其在工作的時候需要為每一種應用服務專門設計反向代理,這就很大程度上增加了工作量。由此可見對負載均衡技術的選擇取決于具體的環(huán)境和需求。

        目前負載均衡算法的研究主要包括靜態(tài)負載均衡、動態(tài)負載均衡和自適應負載均衡[3]。在對負載均衡的應用中,Linux虛擬服務器(Linux Virtual Server,LVS)負載均衡系統(tǒng)因其資源共享,源碼公開和免費成為了當今的另一個研究熱點。在LVS集群系統(tǒng)[4]中主要研究靜態(tài)和動態(tài)兩大類調(diào)度策略:靜態(tài)調(diào)度策略是以定好的規(guī)則來分配資源,不考慮服務器的實時工作情況和負載狀況,它在實現(xiàn)的時候比較容易但其適應性不強。當大量請求并發(fā)時容易造成節(jié)點之間負載不均衡,使系統(tǒng)整體性能變低。動態(tài)調(diào)度策略主要是以服務器當前的連接數(shù)來代表服務器的負載狀況,經(jīng)過具體的策略規(guī)則將請求發(fā)到合適的服務器上。

        LVS作為基于Linux系統(tǒng)的負載調(diào)度技術,主要用于創(chuàng)建具有良好的可擴展性、高可靠性、高性能和高可用性集群[5],這樣的集群系統(tǒng)在文獻[6]中有很好的應用。在對LVS異構集群性能的集中研究中,文獻[7]采用類似于網(wǎng)絡管理的模式實現(xiàn)了動態(tài)反饋的最低利用率的最小連接數(shù)調(diào)度算法,文獻[8]也對WLC權值的靜態(tài)問題提出應該科學合理地整合硬件有效因素和協(xié)調(diào)網(wǎng)絡應用性能指標來綜合考慮。綜上所述,在選擇異構服務器集群算法的時候,大多都采用WLC算法直接進行解決,但是WLC算法作為一種動態(tài)算法,無論從實現(xiàn)復雜度還是資源消耗都遠遠大于靜態(tài)算法。

        靜態(tài)輪詢調(diào)度實現(xiàn)簡單,響應時間比較短,但它在實現(xiàn)過程中均勻地將請求發(fā)送給每臺服務器,并不會根據(jù)服務器集群的差異來分配資源,因此并不適合異構服務器集群,這就使得具有權值分配的加權輪詢WRR作為對輪詢算法RR的一個優(yōu)化得到廣泛的應用[9-10]。

        本文擬針對LVS系統(tǒng)中服務器性能不一致的情況,引入動態(tài)負載反饋模型來優(yōu)化通信機制,并在其基礎上開辟兩塊共享內(nèi)存來實現(xiàn)對不同狀態(tài)服務器的處理。通過在服務器端開啟上報進程和在負載均衡器上開啟管理進程,以優(yōu)化傳統(tǒng)的輪詢策略,實現(xiàn)集群節(jié)點的動態(tài)增加和屏蔽。

        在LVS輪詢調(diào)度算法的實現(xiàn)中,當服務器的性能存在差異的時候,服務器的整體性能取決于最差服務器的性能。如果在輪詢策略中負載均衡器LD可以智能地分配請求,那么在理想狀態(tài)下框架的性能可以達到最優(yōu)。這就需要負載均衡器LD清楚RS集群的負載信息。本文在實現(xiàn)分配的時候,服務器需要上報自己的性能信息,負載均衡器不僅需要對服務器上報的信息進行處理還要及時根據(jù)分配策略來智能分配資源,因此不妨將文中所給方法稱為智能分配算法。

        1 LVS系統(tǒng)框架

        在設計的LVS系統(tǒng)中,建立LD與RS集群的性能同步通信機制也就是動態(tài)反饋機制[11],使負載均衡器可以清楚后端RS集群的性能信息并且在分配請求的時候優(yōu)先把請求分配到負載低的節(jié)點;對于負載高的RS節(jié)點,暫時停止分配請求并在每個時間周期去判斷該高負載節(jié)點是否恢復正常。具體邏輯如圖1所示。

        圖1 LVS系統(tǒng)框架

        對LVS框架做如下優(yōu)化。

        (1) 在RS集群的每個節(jié)點開啟agent進程,用來上報RS節(jié)點的負載信息;在負載均衡器上增加一個獨立的模塊monitor,用來接收agent的數(shù)據(jù),并判讀RS的健康情況。

        (2) LD需要額外開辟兩塊共享內(nèi)存來存放輸出結果,存放“可用的RS”和“不可用的RS”。LD分配請求的時候需從“可用RS池”讀取RS信息并轉發(fā)請求。

        (3) RS處理請求的同時,agent會實時監(jiān)控服務器節(jié)點負載情況,按周期上報給LD的monitor模塊,monitor模塊根據(jù)agent上報的信息通過規(guī)則來判斷RS是否可以繼續(xù)處理更多的請求。

        (4) 如果該RS負載信息正常,則把其放入“可用RS池”,等待LD的請求分配;如果該RS負載信息異常,則放入“不可用RS池”。同時LD還需要對“不可用RS池”的 RS節(jié)點進行監(jiān)測。

        2 算法研究及性能分析

        傳統(tǒng)的輪詢算法在面對服務器性能一樣的時候,通常能較好地分配任務請求,但是當服務器性能不一樣的時候,往往不能使服務器資源利用最大化,這就使集群系統(tǒng)的整體性能受到影響。以下結合服務器的參數(shù)指標分析系統(tǒng)在不同情況下的服務器集群性能。

        (1) 在一個具有n個服務器的集群中,服務器i的性能指標有很多[12],包括當前連接數(shù)、CPU使用率、內(nèi)存使用率、輸入/輸出設備,網(wǎng)絡帶寬等等。在此假定CPU使用率為C,內(nèi)存使用率為M,磁盤使用率為D,網(wǎng)卡使用率為W。在Web服務集群中,處理單次請求所需要的資源使用率分別為w,x,y,z。任何一個指標達到性能瓶頸都會影響服務器的處理性能,所以服務器i(i=1,2,…,n)的并發(fā)處理能力取決于函數(shù)

        f(i)=min{Ci/w,Mi/x,Di/y,Wi/z} 。

        為要保證集群有服務器,n應是大于0 的數(shù)。Ci,Mi,Di,Wi為服務器i當前使用率也就是i的動態(tài)參數(shù)。

        當且僅當

        (2) 在系統(tǒng)穩(wěn)定且狀態(tài)良好的時候,集群理想處理性能為各個真實服務器處理性能的總和。

        (3) 在系統(tǒng)不穩(wěn)定的時候,假設服務器i到達性能瓶頸并處在短暫屏蔽狀態(tài),則服務器i的處理性能約等于f(i),當且僅當

        而此時集群中其它服務器的性能可以寫成βf(i),即為除i外其它真實服務器性能的總和。β取值范圍可表示為

        此時系統(tǒng)仍然具有的理論處理能力為

        F(x)-f(i)-βf(i)。

        (4) 如果在短暫的屏蔽后,服務器i性能恢復正常,則系統(tǒng)目前的處理能力仍然為各個真實服務器處理能力的和。如果服務器i就此宕機,則此時系統(tǒng)具有的最大處理能力為F(x)-f(i)。

        (5) 集群x的性能可表示為

        通過對服務器集群性能的研究結合對輪詢算法的理解可知,輪詢調(diào)度并不適合異構服務器集群。帶有權值的輪詢算法能夠很好地解決異構服務器集群性能不一的情況,它根據(jù)靜態(tài)配置的權值來分配工作請求。但是在所有權值算法中,都有如下兩個問題無法避免:其一就是各個服務器間的性能無法完美的符合M∶N,其次就是即使在權值比接近完美的時候,個別服務器會因為突發(fā)地運行某些服務或者處理異常的請求導致權值比失去平衡;而且當系統(tǒng)運行一段時間或增加節(jié)點時勢必需要重新配置,增加了集群的維護成本。此外,如果權值分配不合理則會使系統(tǒng)性能得不到充分的利用甚至還會引發(fā)服務器宕機;即使在權值分配理想的情況下,由于它無法動態(tài)地獲取服務器的真實狀況,因此無法根據(jù)服務器的具體性能變化而及時動態(tài)合理地分配請求。智能分配策略可以動態(tài)地監(jiān)測每臺服務器的負載信息,靈活增加節(jié)點以及屏蔽不可用的節(jié)點,具體實現(xiàn)如圖2所示。

        圖2 系統(tǒng)流程

        業(yè)務通過外網(wǎng)把請求發(fā)送到負載均衡器LD的外網(wǎng)卡,LD接收到請求后查詢“可用的RS池”,通過策略將請求發(fā)送給合適的RS進行處理。處理完成后通過RS本身外網(wǎng)卡把處理結果直接反饋給用戶,這里采用的是LVS-DR方式。RS上部署的agent進程會定期把RS的性能數(shù)據(jù)和負載狀況上報到LD“存儲RS負載模塊”,然后通過規(guī)則進行判斷。如果該RS可用,則把該RS的信息更新到“可用的RS池”,否則把該RS放到“暫不可用的RS池”,同時把該RS的信息在“可用的RS池”中去掉相當于屏蔽這個節(jié)點,等待一個周期后再由agent上報數(shù)據(jù)進行判斷。當需要動態(tài)增加一個節(jié)點的時候,只需要為其開啟agent進程就可以正常上報信息了。

        3 系統(tǒng)測試及分析

        通過虛擬機來實現(xiàn)系統(tǒng)的搭建和測試,在負載參數(shù)的采集過程中由于CPU使用率、內(nèi)存使用率以及磁盤使用率數(shù)據(jù)波動不大,選擇網(wǎng)卡來驗證算法,當網(wǎng)卡超過規(guī)定的閾值時就自動進行屏蔽。實驗平臺選擇Redhat企業(yè)版本,其中Linux內(nèi)核版本為2.6,采用Linux系統(tǒng)管理工具和shell腳本來共同完成。測試拓撲圖如圖3所示。

        圖3 測試拓撲圖

        通過測試獲取基于LVS-DR方式的Web服務的吞吐量及響應時間,通過對WRR算法和智能分配算法分別進行壓測來驗證服務集群的性能,其中后端服務器的參數(shù)信息如表1。

        表1 服務器性能對比表

        針對上表服務器性能不統(tǒng)一的情況,智能分配算法通過優(yōu)化輪詢算法RR來避免靜態(tài)算法中權值的選擇。用RI表示RS1的性能,Ri表示RS2的性能,通過表1可以大致地認為2Ri

        ab -n 2000 -c 4 http://192.168.0.254/a.file來實現(xiàn),其中-n和-c分別表示一共要發(fā)送的請求數(shù)和一次并發(fā)的請求數(shù)。整個命令表示對192.168.0.254下的a.file文件發(fā)送2 000個請求,每次并發(fā)4個。

        通過調(diào)整-c后面的參數(shù)來調(diào)整并發(fā)的數(shù)目。多次測試后,通過ipvsadm命令可以查看WRR的連接數(shù)比例基本為3∶1。對智能分配算法和加權輪詢算法WRR從1至17不斷調(diào)整并發(fā)數(shù),分別比較其響應時間和吞吐量,結果如圖4所示。

        (a) 響應時間

        (b) 吞吐量

        通過圖4對加權輪詢算法WRR進行分析,WRR算法在并發(fā)為4的時候,吞吐量達到最大值,該點也正好符合權值3∶1的分配。同時在并發(fā)為8,12的時候吞吐量也略有毛刺。并發(fā)為14的時候性能較好的RS1首先出現(xiàn)失敗率徒增,原因是RS1與RS2的性能關系是2Ri

        同樣,通過上圖對智能分配算法進行分析。

        (1) 并發(fā)為1到13之間,兩種算法的響應時間和吞吐量相差不大,WRR算法按照3∶1給RS1和RS2分配請求,智能分配算法仍按照輪詢算法來分配請求。因此RS1和RS2的性能都正常。通過測試,在并發(fā)為6的時候,智能分配算法吞吐量達到最佳,系統(tǒng)性能基本上為F(x)。

        (2) 在并發(fā)為14和15的時候,RS1性能比RS2好,系統(tǒng)運行基本正常。隨著并發(fā)數(shù)繼續(xù)增加,RS2漸漸出現(xiàn)性能問題。在并發(fā)為16的時候,智能分配算法已暫停給RS2分配請求了,此時系統(tǒng)的性能為

        F(x)=f(i)+βf(i),

        其中f(i)為RS2的性能,可以看出此時智能分配算法的響應時間曲線與吞吐量曲線優(yōu)于WRR算法。

        (3) 當并發(fā)數(shù)達到17的時候,RS2宕機了。智能分配算法和WRR算法均出現(xiàn)了大量的失敗,吞吐量有所下降。圖中智能分配算法的響應時間在并發(fā)數(shù)17的時候會超過WRR算法,可能是因為當并發(fā)請求繼續(xù)增加的時候,系統(tǒng)進行算法判斷、處理中斷的代價增大造成了響應時間的延長。

        綜上所述,對于整體系統(tǒng)而言,智能分配算法在響應時間上比WRR算法短,吞吐量比WRR算法高,在整體性能上比加權輪詢算法WRR優(yōu)。

        4 結 語

        在LVS輪詢算法的基礎上引入了動態(tài)反饋機制,避免了靜態(tài)分配所造成的負載分配不均衡。通過對比輪詢算法最常用的優(yōu)化策略,即加權輪詢算法,提出了智能分配策略,既避免了輪詢算法對異構服務器集群資源的浪費,也避免了加權輪詢算法中權值靜態(tài)分配所造成的不適應性。

        使用Linux腳本對智能分配方法進行了測試,測試結果表明,智能分配策略比加權輪詢算法具有更好的響應時間及吞吐量。通過對比加權輪詢算法WRR和智能分配算法的響應時間與吞吐量,可以明顯地看出智能分配算法的整體響應時間比加權輪詢算法WRR低,吞吐量比加權輪詢算法WRR高。由此可見,智能分配算法的整體性能優(yōu)于加權輪詢算法,它是輪詢算法的一個很好的優(yōu)化策略。

        [1] 湯君.基于集群的動態(tài)反饋負載均衡系統(tǒng)的研究與應用[D].天津:天津大學,2008:11-12.

        [2] 朱志祥,許輝輝,王雄.基于云計算的彈性負載均衡方案[J].西安郵電大學學報,2013,18(6):43-47.

        [3] Valeria C, Michele C, Philips Y. Dynamic Load Balancing on Web-Server Systems[J]. IEEE Internet Computing,1999,3(3):28-29.

        [4] 崔小燕.Linux集群系統(tǒng)分析[J].西安郵電學院學報,2006,11(5):103-106.

        [5] 李莉,盧春,楊柯.LVS:優(yōu)秀的服務器集群解決方案[J].信息安全與通信保密,2011(9):74-77.

        [6] Xu Yang, Xie Xiaoyao, Xia Daoxun. Research and Design on LVS Cluster System[C]//2009 IEEE International Workshop on Open-source Software for Scientific Computation. Guiyang: IEEE, 2009:68-72.

        [7] 謝茂濤,宋中山.LVS集群系統(tǒng)負載均衡策略的研究[J].計算機工程與科學,2006,28(8):30-39.

        [8] 劉玉艷.LVS負載均衡技術在網(wǎng)絡服務中的應用研究[D].合肥:合肥工業(yè)大學,2007:34-35.

        [9] 李慧玲,周繼成.加權輪詢算法在TCP非對稱網(wǎng)絡中的應用及其性能分析[J].計算機工程與技術,2000(3):10-11.

        [10] 張鵬,俞伯峰,龐琳,等.基于公平服務多維加權輪詢調(diào)度的IPTV組播流量控制策略[J].計算機應用,2008,28(7):1832-1834.

        [11] 田紹亮,左明,吳紹偉.一種改進的基于動態(tài)反饋的負載均衡算法[J].計算機工程與設計,2007,28(3):572-573.

        [12] 劉武釗.集群計算機系統(tǒng)負載均衡技術研究[D].哈爾濱:哈爾濱工程大學,2008:19-22.

        [責任編輯:王輝]

        A method of load balancing based on Linux cluster

        XIE Xiaoyan, ZHANG Jingwen

        (School of Computer Science and Technology, Xi’an University of Posts and Telecommunications, Xi’an 710121, China)

        The rapid increase of concurrent request brings great burden on the server. Simply raising the performance of hardware cannot fundamentally solve the problem and on the contrary it will increase overhead cost. Therefore load balancing is becoming one of hot research topics. The proposed method in this paper is based on the LVS heterogeneous cluster. It adopts dynamic feedback mechanism to optimize the communication mechanisms of load information collection, and gives an intelligent allocation method to improve the overall system performance. The experiment results show that the proposed method can significantly improve throughput and decrease response time compared with the weighted round robin algorithm.

        load balancing, Linux virtual server, dispatch algorithm

        10.13682/j.issn.2095-6533.2014.03.013

        2014-03-11

        陜西省自然科學基礎研究計劃資助項目(2012JQ8029);陜西省教育廳科研計劃資助項目(12JK0938)

        謝曉燕(1972-),女,副教授,從事網(wǎng)絡及服務計算研究。E-mail:35731599@qq.com 張靜雯(1989-),女,碩士研究生,研究方向為計算機網(wǎng)絡和多媒體技術。E-mail:773684821@qq.com

        TP399

        A

        2095-6533(2014)03-0064-05

        猜你喜歡
        輪詢吞吐量集群
        海上小型無人機集群的反制裝備需求與應對之策研究
        基于等概率的ASON業(yè)務授權設計?
        一種無人機集群發(fā)射回收裝置的控制系統(tǒng)設計
        電子制作(2018年11期)2018-08-04 03:25:40
        Python與Spark集群在收費數(shù)據(jù)分析中的應用
        2016年10月長三角地區(qū)主要港口吞吐量
        集裝箱化(2016年11期)2017-03-29 16:15:48
        2016年11月長三角地區(qū)主要港口吞吐量
        集裝箱化(2016年12期)2017-03-20 08:32:27
        勤快又呆萌的集群機器人
        依托站點狀態(tài)的兩級輪詢控制系統(tǒng)時延特性分析
        自動化學報(2016年8期)2016-04-16 03:38:56
        利用時間輪詢方式操作DDR3實現(xiàn)多模式下數(shù)據(jù)重排
        2014年1月長三角地區(qū)主要港口吞吐量
        集裝箱化(2014年2期)2014-03-15 19:00:33
        欧美巨大xxxx做受中文字幕 | 精品亚洲成a人在线观看青青| 色综合中文综合网| 亚洲AⅤ永久无码精品AA| 九九久久精品大片| 美女一级毛片免费观看97| 久久精品午夜免费看| 午夜亚洲精品视频网站| 国产在线精品成人一区二区三区| 亚洲最大免费福利视频网| 亚洲成熟丰满熟妇高潮xxxxx| 久久精品成人无码观看不卡| 天天爽天天爽天天爽| 偷拍网日本一区二区三区| 人妻色中文字幕免费视频| 日本一区二区三区四区在线视频| 国产自拍视频在线观看网站| 欧美亚洲日本国产综合在线美利坚| 美女视频黄的全免费视频网站| 国产黑色丝袜一区在线| 久久洲Av无码西西人体| 免费看草逼操爽视频网站| 亚洲天堂成人av影院| 免费人妻无码不卡中文字幕系| 人人爽人人爽人人爽| 亚洲欧洲日产国码久在线观看| 大肥婆老熟女一区二区精品| 国产免费人成视频在线观看播放播| 亚洲国产精品一区二区毛片| 国产精品a免费一区久久电影| 开心五月婷婷激情综合网| 日韩中文字幕一区二十| 日本美女在线一区二区| 欧美老熟妇乱子| 久久精品免视看国产成人| 国产国拍亚洲精品永久不卡| 一区二区三区国产偷拍| 在线亚洲国产一区二区三区| 日韩av天堂一区二区| 亚洲日韩国产av无码无码精品| 国产激情精品一区二区三区|