許繪香
(鄭州工程技術學院信息工程學院 河南省鄭州市 450044)
計算機技術的快速發(fā)展促進了互聯(lián)網在更大范圍內的應用,隨之而來的,其運載的數據資源總量也曾呈現(xiàn)出爆發(fā)式的增長趨勢[1]。為了提高數據計算的效率,云計算技術應運而生,并在互聯(lián)網中得到了廣泛應用。與一般的算法相比,云計算以客戶端的數據資源需求作為計算目標,對網絡中存儲的資源進行篩選,以此實現(xiàn)資源的個性化推送[2]。同時,在云計算技術不斷發(fā)展下,其逐漸成長為一種商業(yè)化模式,在IT、教育、金融等領域取得了良好的應用效果。為了提高云計算的效率,以數據為依托的云計算中心成為了數據資源計算、分配的中樞,并且在規(guī)模不斷擴大的同時,其運作形式也隨著用戶需求發(fā)生動態(tài)變化[3-5]。考慮到資源規(guī)模本身的龐大屬性,解決資源調度階段的能耗問題、以及資源利用率問題成為了提高云虛擬機云計算中心工作效率的關鍵?,F(xiàn)階段,虛擬機云計算中心數據資源調度主要考慮的是效率問題,以能耗為目標的研究相對較少。因此,以調度能耗控制為目標,綜合考慮性能和經濟效益之間的平衡關系,加強對虛擬機數據資源調度技術的優(yōu)化研究是十分必要的[6]。
為此,本文提出基于云計算中的虛擬機數據資源調度優(yōu)化技術研究。在合理分配調度任務的基礎上,利用遺傳算法優(yōu)化調度任務的安置位置,最后實現(xiàn)資源的低能耗遷移,并通過實驗驗證了所提方法的有效性。通過本文的研究,以期為提升數據資源的調度效果提供有價值的參考。
為了降低資源調度過程中由于調度任務分配不當帶來的額外能耗,本文首先根據云計算中心接收到的調度任務,對任務與虛擬機資源之間建立匹配關系,通過這樣的方式實現(xiàn)對調度任務的合理分配。
當云計算中心接收到資源調度任務后,首先根據任務的緊迫性將其進行排序處理,根據排序結果,依次匹配任務。緊迫性的排序依據主要調度任務中ID信息中的時間鐘,將時間鐘上時刻與排序時刻距離最遠的任務作為首要任務,后面依次推進。其計算方式為:
其中,pest(*)表示任務的排序結果,Dn表示云計算中心接收到的調度任務,tn表示Dn任務對應的時間鐘顯示的時間,T表示分配執(zhí)行起始時間。
以此為基礎,假設在n個調度任務中,首要任務為Dn,在對其分配時,本文采用廣度優(yōu)先的原則,在云計算中心按照自上而下的方式,遍歷中心包含的每一個與任務適配的物理機[7]。由于云計算中心是以分布式的形式存在的,因此,在計算最佳調度物理機時,本文主要運用發(fā)送者啟動策略篩選。將調度任務的發(fā)送端作為目標節(jié)點,首先計算云計算中心虛擬機到任務發(fā)送節(jié)點的距離,其可表示為:
其中,d表示虛擬機到任務發(fā)送節(jié)點的距離,p表示虛擬機的分布,λ為二者之間的空閑系數,q為調度任務的可接受的損耗系數。通過這樣的方式,確定滿足調度需求的最佳虛擬機,實施Dn任務。
在確定實施調度任務的虛擬機后,為了降低調度過程中的能耗,本文采用遺傳算法對數據資源的安置位置進行優(yōu)化計算,以此實現(xiàn)提高數據調度的適配性,降低能耗。
首先,將完成調度工作可能經過的物理機作為遺傳算法的染色體,由于遺傳算法的冗余度會隨著計算規(guī)模的增加而變大,因此,本文將容量相同的物理機設計為相同的編碼,以此為基礎建立物理機小于虛擬機之間的多對一關系。其次就是對染色體的選擇。本文建立了適應度指標,按照適應度篩選出初代群體。其中,染色體的適應度計算方式為:
通過這樣的方式,統(tǒng)計各個染色體的適應度。考慮到遺傳算法容易受到局部最優(yōu)的限制,影響下一代的計算精度。
為了確保交叉得到的染色體具有初代群體中的優(yōu)秀基因,本文將單個染色體的負載作為評價指標,分析交叉結果的優(yōu)劣,其可以表示為:
其中,gp表示染色體p的評價結果。當gp越大時,表明該物理機的負載越高,對應的調度鏈路均衡性越差,調度過程中的能耗越高;當gp越小時,表明該物理機的負載越低,對應鏈路的均衡性越高,調度過程中的能耗越低。故而本文選擇gp=maxgp的染色體作為最終的安置位置。
在確定最終的資源安置位置后,既可以實施數據資源的遷移。由于云計算中心點各個虛擬機的負載會隨著調度任務的進行而出現(xiàn)變化,因此,本文設計了單臺虛擬機的遷移時間閾值。
當調度任務提交到云計算中心后,首先將其部署到對應方虛擬機資源中,并在每個虛擬機上對任務適配性進行計算,當虛擬機的負載結果為c時,計算遷移時間的上限和下限,將調度任務中的虛擬機的數量表示為調度任務量數量,完成對資源的遷移。
為了測試本文提出優(yōu)化技術的應用效果,進行了試驗測試,利用仿真平臺模擬不同的調度環(huán)境,通過對比的方式分析了文獻[3]、文獻[4]、文獻[5]以及本文方法的調度效果。
本文利用CloudSim作為實驗的基礎框架,CloudSim的技術源是GridSim,其可以通過模擬的方式對大規(guī)模云計算中心的運行狀態(tài)進行還原,可以以更加直觀的方式展示資源調度的效果。同時,CloudSim對運行環(huán)境的要求較低,支持Windows 和 Linux 雙平臺運行,可以滿足對大型云基礎設施的模擬需求,不僅可以實現(xiàn)對不同類型資源的分類,并且可以按照輸入的控制命令進行相應的資源分配動作。除此之外,CloudSim自身具備完整的服務代理模塊,自帶的虛擬引擎可以確保虛擬機與物理機之間的轉換。更重要的是,其允許加入不同模擬元素,因此在能耗感知方面具有更高的靈敏性。以此為基礎,本文應用的承載設備為內存64G的Win7操作系統(tǒng)。為了分析在不同的虛擬機請求規(guī)模下,四種方法的性能,實驗將工作負載規(guī)模分別設置為100、200、300、400、500個虛擬機,并運行10次,將10平均值作為評估的最終數據。
四種方法下,不同調度規(guī)模的能耗情況如表1所示。
表1:不同方法下能耗情況/w
從表1中可以看出,隨著虛擬機請求規(guī)模逐漸增加,本文方法的優(yōu)勢越來越明顯,能夠實現(xiàn)降低調度能耗的目的,在相同調度條件下,能耗更少。
為了進一步對本文方法的節(jié)能效果進行深入分析,對比了四種方法下,在完成調度任務時記錄的物理機數量,其結果如圖1所示。
圖1:激活物理機數量
從圖1中可以看出,本文方法的激活數量更少,且隨著虛擬機數量增加,這種優(yōu)勢并未受到影響,而是以穩(wěn)定的趨勢保持,實現(xiàn)了對能耗的有效控制。
隨著互聯(lián)網用戶數量增多,數據資源在類型以及數量上都呈現(xiàn)出明顯的增長趨勢,考慮到這種增長將會以長期的形式存在,對虛擬機的資源調度提出了相對較高的要求。如何面對海量的數據資源和調度任務實現(xiàn)節(jié)能高效的資源調度成為了計算機行業(yè)面臨的關鍵問題。本文提出基于云計算中的虛擬機數據資源調度優(yōu)化技術研究。通過建立調度任務與云計算中心虛擬機之間的匹配關系,實現(xiàn)對調度任務的合理分配,利用遺傳算法的優(yōu)越性,對安置位置進行優(yōu)化,確保安置鏈路負載的均衡性,以此為基礎實施資源的遷移,降低資源調度過程中的能耗。通過本文,以期為資源調度的研究提供有價值的參考。