劉詠平 劉杰 梁鵬 郝剛
摘要:為了解決高性能云計(jì)算環(huán)境中計(jì)算資源利用率不高、短期用戶(hù)需求大的問(wèn)題,本文提出一種基于多負(fù)載均衡的自適應(yīng)云計(jì)算資源管理模型,通過(guò)采用多種負(fù)載均衡實(shí)現(xiàn)算法,并動(dòng)態(tài)地根據(jù)現(xiàn)有任務(wù)分配來(lái)評(píng)估,最終由評(píng)估結(jié)果使用最優(yōu)負(fù)載均衡,使得等待作業(yè)可以高效地均衡分布在不同的資源上運(yùn)行,從而增加系統(tǒng)的吞吐量及性能。
關(guān)鍵詞:云計(jì)算;資源管理;按需切換
中圖分類(lèi)號(hào):TP391? ? ? ?文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào):1009-3044(2020)36-0225-02
1引言
在高性能計(jì)算環(huán)境中,用戶(hù)需求是連續(xù)較長(zhǎng)時(shí)間的用戶(hù)請(qǐng)求以及短時(shí)間快速響應(yīng),而自適應(yīng)云資源管理模型需要提高集群的利用率以滿(mǎn)足用戶(hù)的快速響應(yīng)。為了解決這一問(wèn)題,本文提出一種基于多負(fù)載均衡的自適應(yīng)云計(jì)算資源管理模型,通過(guò)采用多種負(fù)載均衡實(shí)現(xiàn)算法,并動(dòng)態(tài)地根據(jù)現(xiàn)有任務(wù)分配來(lái)評(píng)估,最終由評(píng)估結(jié)果使用最優(yōu)負(fù)載均衡,使得等待作業(yè)可以高效地均衡分布在不同的資源上運(yùn)行,從而增加系統(tǒng)的吞吐量及性能。
2相關(guān)工作
隨著云計(jì)算的不斷深入發(fā)展,具有負(fù)載均衡調(diào)節(jié)能力的云計(jì)算集群應(yīng)用也逐漸深入各個(gè)行業(yè)領(lǐng)域。最初常見(jiàn)的公共IaaS云計(jì)算收費(fèi)方式是按需收費(fèi)的方式,在此基礎(chǔ)上,亞馬遜公司提供了一種具有彈性資源縮放功能的自適應(yīng)Cloud Watch服務(wù),該服務(wù)無(wú)須用戶(hù)固定租賃軟硬件資源,而是根據(jù)當(dāng)前應(yīng)用所需的資源數(shù)量,動(dòng)態(tài)地租賃付費(fèi)資源,減少了客戶(hù)租用云計(jì)算服務(wù)的成本。
文獻(xiàn)[1]采用了pay-per-use的方式的提供IaaS服務(wù),以極小的成本實(shí)現(xiàn)IT服務(wù)連續(xù)性管理。此外文獻(xiàn)[2]提出了一種高效的應(yīng)用集群方案,該方案減少了IT基礎(chǔ)設(shè)施造成的能源消耗。文獻(xiàn)[3]通過(guò)首先計(jì)算集群中所有作業(yè)的運(yùn)行情況,獲取當(dāng)前運(yùn)行作業(yè)的掛起時(shí)間和預(yù)估時(shí)間,采用動(dòng)態(tài)負(fù)載均衡策略來(lái)配置作業(yè)的運(yùn)行資源。
在商業(yè)應(yīng)用領(lǐng)域的電商平臺(tái)不同于高性能集群,其需求是連續(xù)較長(zhǎng)時(shí)間的用戶(hù)請(qǐng)求以及短時(shí)間快速響應(yīng)。因此,面向高性能應(yīng)用集群的自適應(yīng)云資源管理模型不僅需要考慮實(shí)現(xiàn)可動(dòng)態(tài)調(diào)節(jié)高性能集群的自適應(yīng)能力,還需要盡可能提高集群的利用率以滿(mǎn)足用戶(hù)的快速響應(yīng)。而為了滿(mǎn)足響應(yīng)需求而購(gòu)買(mǎi)大量硬件會(huì)造成資源的浪費(fèi);反之,則會(huì)導(dǎo)致用戶(hù)請(qǐng)求無(wú)法得到迅速響應(yīng)。高性能云計(jì)算集群通過(guò)實(shí)時(shí)地獲取當(dāng)前負(fù)載的變化情況,采用平衡資源調(diào)度策略提高集群的性能和可靠性。文獻(xiàn)[4]提出了一種自適應(yīng)混合云應(yīng)用集群,采用動(dòng)態(tài)監(jiān)測(cè)手段監(jiān)測(cè)集群資源使用情況,可利用本地和云端的資源,動(dòng)態(tài)地增減集群的計(jì)算節(jié)點(diǎn),實(shí)現(xiàn)彈性的資源共享。文獻(xiàn)[5]提出動(dòng)態(tài)彈性Web集群方法,該集群基于計(jì)算節(jié)點(diǎn)的會(huì)話(huà)使用情況,動(dòng)態(tài)地調(diào)整計(jì)算節(jié)點(diǎn)的資源,但是該方案依賴(lài)于活躍的對(duì)話(huà)鏈接數(shù)量。文獻(xiàn)[6]將資源調(diào)度問(wèn)題劃分到存儲(chǔ)層、計(jì)算層、網(wǎng)絡(luò)層三個(gè)層面,根據(jù)每一層的具體資源調(diào)度請(qǐng)求進(jìn)行細(xì)粒度資源調(diào)度。
3 基于多負(fù)載均衡的自適應(yīng)云資源管理模型研究
負(fù)載均衡的主要作用是將用戶(hù)的請(qǐng)求分?jǐn)偟讲煌姆?wù)器上,從而避免集群中某些服務(wù)器由于用戶(hù)請(qǐng)求過(guò)于集中而處于高負(fù)荷狀態(tài),而其他服務(wù)器卻處于低負(fù)荷狀態(tài)。因此可以通過(guò)對(duì)服務(wù)器集群設(shè)置不同策略的負(fù)載均衡,實(shí)現(xiàn)用戶(hù)資源分流,使得服務(wù)器集群整體使用效率最大化。當(dāng)前主流的負(fù)載均衡方法有基于權(quán)重隨機(jī)算法的、基于最少活躍調(diào)用數(shù)算法以及基于加權(quán)輪詢(xún)算法。三種算法的調(diào)度策略有所側(cè)重,要根據(jù)系統(tǒng)評(píng)估的結(jié)果,對(duì)三種算法的運(yùn)行效率進(jìn)行評(píng)估,選擇最好的負(fù)載均衡策略。接下來(lái)對(duì)三種負(fù)載均衡算法進(jìn)行詳細(xì)解釋?zhuān)?/p>
(1)基于權(quán)重隨機(jī)的負(fù)載均衡算法
該算法的關(guān)鍵在于隨機(jī)數(shù)生成器,隨機(jī)數(shù)生成器是一個(gè)可生成[0,10)之間隨機(jī)數(shù)的算法。然后將所有服務(wù)器依次用[0,10)之間不同的權(quán)重劃分區(qū)間,隨機(jī)數(shù)落在某個(gè)區(qū)間時(shí),屬于該區(qū)間的服務(wù)器則被選中。多次加權(quán)后,被選擇次數(shù)最多的服務(wù)器則是該次算法的輸出結(jié)果。算法的流程圖如圖2所示。
該算法的關(guān)鍵在于隨機(jī)數(shù)生成器的分布性,如果隨機(jī)數(shù)生成器產(chǎn)生的數(shù)字分布處于正偏差或者負(fù)偏差情況,則會(huì)導(dǎo)致某一部分服務(wù)器長(zhǎng)期處于高負(fù)荷狀態(tài),不利于提升整體服務(wù)器集群的使用效率。而平均分布隨機(jī)數(shù)的方式雖然簡(jiǎn)單易于實(shí)現(xiàn),但是沒(méi)有考慮每部服務(wù)器當(dāng)前負(fù)載情況以及服務(wù)器的硬件性能差異。因此該算法通常用于集群初始分配資源。
(2)基于最小活躍數(shù)的負(fù)載均衡算法
該算法的原理是,每個(gè)服務(wù)器在初始時(shí)設(shè)定活躍數(shù)為0,當(dāng)分配一個(gè)用戶(hù)請(qǐng)求到該服務(wù)器后,該服務(wù)器的活躍數(shù)+1,當(dāng)完成該用戶(hù)請(qǐng)求并退出后,將該服務(wù)器的活躍數(shù)-1。分配服務(wù)器時(shí),則根據(jù)當(dāng)前集群內(nèi)所有服務(wù)器的活躍數(shù),選擇最小活躍數(shù)的服務(wù)器分配給用戶(hù),當(dāng)有多個(gè)服務(wù)器的活躍數(shù)相等時(shí),采用隨機(jī)分配的形式。算法的流程圖如圖3所示。
該算法的關(guān)鍵在于活躍數(shù)與當(dāng)前服務(wù)器負(fù)載有關(guān),可以動(dòng)態(tài)地根據(jù)服務(wù)器負(fù)載調(diào)整用戶(hù)請(qǐng)求的分配。但是該算法仍然沒(méi)有考慮到服務(wù)器的硬件性能差異。
(3)基于加權(quán)輪詢(xún)的負(fù)載均衡算法
輪詢(xún)算法是不考慮服務(wù)器實(shí)時(shí)負(fù)載的一種算法,即將用戶(hù)請(qǐng)求輪流平均分配給每個(gè)服務(wù)器,而不考慮當(dāng)前服務(wù)器的負(fù)載現(xiàn)狀。由于服務(wù)器的實(shí)時(shí)負(fù)載和性能不一,直接使用輪詢(xún)算法進(jìn)行負(fù)載均衡無(wú)法滿(mǎn)足用戶(hù)的要求。因此,在輪詢(xún)算法的基礎(chǔ)上,根據(jù)服務(wù)器的負(fù)載和性能設(shè)計(jì)權(quán)重,形成加權(quán)輪詢(xún)算法。
4 結(jié)論及未來(lái)工作
本文提出的基于多種負(fù)載均衡的自適應(yīng)云計(jì)算資源管理機(jī)制,通過(guò)采用多種負(fù)載均衡實(shí)現(xiàn)算法,并動(dòng)態(tài)地根據(jù)現(xiàn)有任務(wù)分配來(lái)評(píng)估,最終由評(píng)估結(jié)果使用最優(yōu)負(fù)載均衡,使得等待作業(yè)可以高效地均衡分布在不同的資源上運(yùn)行,實(shí)現(xiàn)按需增加或減少某類(lèi)計(jì)算特性的計(jì)算節(jié)點(diǎn),有效地提高集群的吞吐率及處理能力。
參考文獻(xiàn):
[1] 郭星光.基于SPB技術(shù)的云計(jì)算數(shù)據(jù)中心互聯(lián)實(shí)現(xiàn)[D].南京:南京理工大學(xué),2014.
[2]? Lin W C , Liao C H , Kuo K T , et al. Flow-and-VM Migration for Optimizing Throughput and Energy in SDN-Based Cloud Datacenter[C]// IEEE International Conference on Cloud Computing Technology & Science. IEEE, 2013.
[3]? Al-Dhuraibi Y , Paraiso F , Djarallah N , et al. Elasticity in Cloud Computing: State of the Art and Research Challenges[J]. IEEE Transactions on Services Computing, 2018, 11(99):430-447.
[4]? Huang T C , Shieh C K , Chilamkurti N , et al. Architecture for speeding up program execution with cloud technology[J]. Journal of Supercomputing, 2016, 72(9):3601-3618.
[5]? Lavanya S , Paul D W , Kumar N M S . Secure agent based resource matching and virtual grouping of cloud resources - An integrated approach[J]. International Journal of Pure and Applied Mathematics, 2018, 119(12):1083-1095.
[6]? Qian L , Wang L , Xu M , et al. Research on Resource Scheduling Based on Optimized Particle Swarm Optimization Algorithm in Cloud Computing Environment[J]. Iop Conference, 2018, 452.
【通聯(lián)編輯:梁書(shū)】