陳榕利
(廣東創(chuàng)新科技職業(yè)學(xué)院廣東·東莞523960)
云計算環(huán)境下實驗室資源調(diào)度策略
陳榕利
(廣東創(chuàng)新科技職業(yè)學(xué)院廣東·東莞523960)
隨著我國科學(xué)技術(shù)與信息技術(shù)的快速發(fā)展,各個領(lǐng)域都取得了很大的進(jìn)步,云計算是從分布式計算、效用計算以及并行計算發(fā)展而來的,它為人們生活提供了很大的便利與服務(wù),云計算是一種新型的計算模式,它作為互聯(lián)網(wǎng)發(fā)展的主要趨勢之一已經(jīng)引起了各個領(lǐng)域的注意,云計算有著獨特的技術(shù)與很大的發(fā)展?jié)摿?,它改變了傳統(tǒng)的服務(wù)模式,與互聯(lián)網(wǎng)結(jié)合形成新型商業(yè)模式,云計算主要是利用付費的方式來進(jìn)行工作,云計算系統(tǒng)具有一定的透明性,用戶在進(jìn)行操作的時候可以通過虛擬化的計算與存儲來進(jìn)行,這樣能夠及時的解決用戶所提出的問題,本文對云計算環(huán)境下實驗室資源的調(diào)度策略進(jìn)行具體的分析與研究,希望能為以后該方面的工作提供一些幫助。
云計算;實驗室;資源調(diào)度;蟻群算法;策略分析
21世紀(jì)是信息的時代,云計算的出現(xiàn)正慢慢改變著人們對軟件的認(rèn)識與看法。云計算具有虛擬性、可靠性、可擴展性以及自治性等特性,有了這種方法人們就不需要再對軟件進(jìn)行安裝與維護,只要通過付費的方式就能在網(wǎng)上獲取到自己想要的資源,讓信息化的世界真正走進(jìn)人們的日常生活,云就是由大量的廉價計算節(jié)點所構(gòu)成的,也可以說云是由成百上千的計算機所構(gòu)成的,這些構(gòu)成云的節(jié)點會受到計算與存儲等方面的限制,因此用戶想要找到合適的資源就要將信息合理的分配到虛擬機上面,這樣才能保證用戶能夠準(zhǔn)時的完成任務(wù)。目前云計算的主要工作是對用戶實驗室資源調(diào)度方面的研究,同時利用云來解決本地資源短缺的現(xiàn)象,也能從很大程度上降低成本。蟻群算法是用于解決計算機中問題最常用的方法之一,大多蟻群算法都是通過信息素進(jìn)行交流的,而且云的規(guī)模比較大,因此高效的資源調(diào)度算法可以對云計算性能得到很大提高,本文就對基于蟻群算法的資源調(diào)度策略以及算法的描述與結(jié)果進(jìn)行具體的分析與研究。
隨著科學(xué)技術(shù)的日益進(jìn)步,智能化時代已經(jīng)到來,一種新型的計算模式云計算已經(jīng)誕生了。云計算節(jié)點的規(guī)模是很大的,但是單個的節(jié)點資源配置比較低,可以將雙向螞蟻機制很好的引入到資源調(diào)度中根據(jù)蟻群優(yōu)化的方式讓螞蟻之間進(jìn)行更好的交流,這樣也可以快速的發(fā)現(xiàn)虛擬機資源,讓主節(jié)點能快速的為用戶任務(wù)分配虛擬機[1]。利用云計算的虛擬化技術(shù)可以將資源進(jìn)行分類,從而形成多級的資源池,其中一個資源池可以用來充當(dāng)服務(wù)器的作用以方便與云外面的交互、分配任務(wù)等,隨著數(shù)據(jù)中心規(guī)模的擴大,使用云計算的用戶數(shù)量也在不斷的增加,利用云中的虛擬機資源就能夠讓用戶不必等待很長的時間從而完成云計算資源調(diào)度的問題。云計算虛擬機資源調(diào)度讓虛擬機的資源通過蟻群算法來分配給不同的用戶使用,以滿足各個用戶對系統(tǒng)的要求,真正實現(xiàn)提高云計算資源使用率以及減少計算時間的效果。下面就將對雙向螞蟻機制、信息素的定義與修改、任務(wù)預(yù)計執(zhí)行時間的定義三個方面對基于蟻群算法的資源調(diào)度策略進(jìn)行具體的分析與研究。
(一)雙向螞蟻機制研究
雙向螞蟻機制顧名思義就是將螞蟻分成兩大類,分別為前向螞蟻與后向螞蟻。前者主要負(fù)責(zé)對云計算的虛擬機節(jié)點的尋找工作,在找到之后就要原路返回,在返回的過程中可以在途中的各個節(jié)點上留下一些信息素。如果在尋找的過程中兩只螞蟻相遇了,那么其中一只螞蟻就會向另一只螞蟻提供關(guān)于食物位置的相應(yīng)信息,螞蟻獲得了信息就能很快的找到食物的具體位置,因此要想計算資源調(diào)度的問題只需要對螞蟻相遇次數(shù)進(jìn)行計算就可以得到,具體的做法如下:首先要保留存儲的區(qū)域,這些區(qū)域通常會出現(xiàn)在各個節(jié)點上是用來存儲反向螞蟻攜帶的信息,當(dāng)前向螞蟻到達(dá)節(jié)點之前定時器就應(yīng)該啟動并且歸零,螞蟻相遇時節(jié)點的信息會自動清零,這些反向螞蟻可能是由多個資源產(chǎn)生的,對于這種問題的解決可以采用兩種方法,第一種方法是讓每一個節(jié)點都只能存儲一個反向螞蟻的信息,如果第二只螞蟻也到達(dá)的時候就會將前一個螞蟻的信息覆蓋掉,并且需要重新對定時器進(jìn)行啟動。第二種方法是由于多個反向螞蟻攜帶的信息都放在一個節(jié)點區(qū)域中,因此如果反向螞蟻要通過的時候啟動器就會被啟動,如果是來自于同一資源的兩只螞蟻的話那么通常只會保存后面的那只反向螞蟻的信息,這樣的方法有著空間大、計算量也大的優(yōu)點,被人們廣泛的應(yīng)用。
(二)信息素的定義與修改
所謂信息素就是用虛擬機的硬件資源來對節(jié)點進(jìn)行衡量,將CPU、內(nèi)存、外存以及帶寬等硬件的信息素進(jìn)行初始化操作,對修改信息素的問題可以從兩個方面進(jìn)行分析:一方面是可以對資源節(jié)點上的信息素進(jìn)行修改操作,另一方面當(dāng)反向螞蟻經(jīng)過的時候可以進(jìn)行保存,將螞蟻所攜帶的節(jié)點進(jìn)行修改也是十分有效的。當(dāng)計算節(jié)點上出現(xiàn)新任務(wù)的時候,CPU的利用率就會慢慢變大,同時信息素就會減小,然后要對信息素的濃度進(jìn)行測驗,在對信息素的濃度測驗完成之后就應(yīng)該對該節(jié)點進(jìn)行獎勵,還可以增加一些節(jié)點上的信息素以便于其他的螞蟻對該節(jié)點進(jìn)行選擇,當(dāng)然有獎勵也應(yīng)該有相應(yīng)的處罰,如果任務(wù)沒有很好的完全那么就應(yīng)該給予相應(yīng)的處罰。隨著時間的不斷變化,有效節(jié)點上的任務(wù)數(shù)也變得少了,但是節(jié)點上的信息素卻在不斷的增加,通常是隔一段時間就會增大有效節(jié)點的信息素濃度。
(三)對任務(wù)執(zhí)行時間的預(yù)計問題
隨著科技的不斷進(jìn)步,云計算得到了快速的發(fā)展,在云計算的環(huán)境之下,如果一個節(jié)點想要同時進(jìn)行多個任務(wù)但是又想對整個云的性能進(jìn)行提高,那么就需要將任務(wù)分配給很多個節(jié)點從而保證任務(wù)的正常執(zhí)行,建立起任務(wù)預(yù)計時間的模型對任務(wù)的執(zhí)行也有很大的好處。當(dāng)節(jié)點變得很少的時候任務(wù)預(yù)計時間也就相應(yīng)的變短了,需要定期的對節(jié)點進(jìn)行修改保證任務(wù)執(zhí)行時間正確才可以,如果前向螞蟻與反向螞蟻沒有相遇,那么就應(yīng)該將其中的概率大的節(jié)點作為下一跳的節(jié)點,如果一個節(jié)點只能保存一個反向螞蟻所攜帶的信息素,并且反向螞蟻還要在對下一個節(jié)點進(jìn)行選擇之前就選擇下一節(jié)點,對前后節(jié)點進(jìn)行比較可以發(fā)現(xiàn)前向螞蟻被選擇的幾率通常是比較大的,因此可以對多個節(jié)點信息進(jìn)行分析。
(一)資源調(diào)度策略算法的描述
資源調(diào)度算法主要包括以下方面,首先,可以對每一個節(jié)點的信息素進(jìn)行初始化操作,然后由用戶對主節(jié)點進(jìn)行作業(yè)提交,當(dāng)主節(jié)點取到第一個作業(yè)的時候主節(jié)點就可以將作業(yè)分為多個任務(wù),同時啟動一個定時器將多個前向螞蟻進(jìn)行發(fā)送,即使不同的前向螞蟻也都會對下一節(jié)點進(jìn)行選擇,這種選擇是隨機的。然后當(dāng)主節(jié)點的螞蟻進(jìn)入到虛擬機的節(jié)點時,可以根據(jù)公式來進(jìn)一步判斷節(jié)點是否為有效的節(jié)點,從而更好的進(jìn)行標(biāo)記讓反向螞蟻能夠按照路徑返回。反向螞蟻經(jīng)過每一個節(jié)點都需要隔一段時間,這樣也能對節(jié)點上的信息素濃度進(jìn)行保留同時及時的修改節(jié)點的任務(wù)預(yù)計執(zhí)行時間值,在主節(jié)點的定時器歸零之前如果收到反向螞蟻的信息,就認(rèn)為反向螞蟻的節(jié)點是有效的,若是在主節(jié)點的定時器歸零之前沒有收到合適的資源那么就表示不能分配到任務(wù),最后還要對分配到的任務(wù)節(jié)點進(jìn)行操作,即對信息素濃度進(jìn)行一定的修改,當(dāng)任務(wù)失敗的時候需要由主節(jié)點轉(zhuǎn)移到其他的節(jié)點上,主節(jié)點取到作業(yè)然后再重復(fù)進(jìn)行上述操作。
(二)算法仿真結(jié)果及分析
為了對蟻群優(yōu)化算法進(jìn)行驗證,就需要將基于蟻群算法的資源調(diào)度策略與螞蟻系統(tǒng)的資源調(diào)度進(jìn)行一定的比較,通過比較可以發(fā)現(xiàn)以下幾點內(nèi)容:第一,可以發(fā)現(xiàn)時間復(fù)雜度。由于整個蟻群算法的時間復(fù)雜度是可以計算出來的,因此在進(jìn)行計算的時候可以將其中的時間復(fù)雜度都記錄下來,將作業(yè)放到虛擬機上就可以把其中的作業(yè)個數(shù)或者螞蟻尋找資源的時間復(fù)雜度都計算出來,這樣的方式能讓虛擬機的整個時間都減小,也能讓資源的利用率得到提高。第二,對實驗參數(shù)的設(shè)置問題。在算法中可以利用字母a,b,c,d的形式來對虛擬機中的CPU、內(nèi)存、外存以及帶寬進(jìn)行表示,在執(zhí)行任務(wù)的時候可能會受到處理器的影響,因此可以將虛擬機的這四個部分分別設(shè)置上數(shù)值,通過實驗來找到最佳的組合方案。對實驗結(jié)果進(jìn)行分析的時候,首先要提交一個作業(yè),這個作業(yè)需要提交10次左右,然后取出不同大小的作業(yè)進(jìn)行重復(fù)操作,當(dāng)作業(yè)的任務(wù)調(diào)度時間最少的時候即為最合理的組合,在資源調(diào)度的時候時間用的明顯少了很多,前向螞蟻在對虛擬機進(jìn)行搜尋的過程中能夠與其他的螞蟻進(jìn)行交流與溝通,通過前向螞蟻留下的信息素來進(jìn)行更好的選擇從而能夠找到最合適的節(jié)點。如果前向螞蟻能夠根據(jù)反向螞蟻留下的信息找到虛擬機節(jié)點那么就可以將任務(wù)分配的整個時間都縮短。
綜上所述,本文主要分析了云計算環(huán)境下實驗室資源調(diào)度策略,這種資源調(diào)度策略能夠充分的適應(yīng)云計算環(huán)境,這種云計算環(huán)境有著很多特點,包括大規(guī)模性、共享性等等,能夠讓用戶快速的找到各種虛擬機資源,然后再根據(jù)相應(yīng)的資源配置不同的任務(wù)。一些企業(yè)單位也可以與用戶簽訂一系列的服務(wù)協(xié)議并結(jié)合一些其他的算法讓用戶找到虛擬機資源,從而完成整個的資源調(diào)度過程。相信在眾多專業(yè)人員的共同努力之下,未來我國云計算環(huán)境下實驗室資源調(diào)度方面會有更大的進(jìn)展,邁上新的歷史階段。
[1]盧民榮,許鄧艷.基于桌面云的實驗室資源優(yōu)化研究[J].現(xiàn)代教育技術(shù).2015,25,(7):101-106
[2]季霞.探討基于云計算技術(shù)的高校實驗室資源的優(yōu)化應(yīng)用[J].軟件工程師.2015,(11):35-36
[3]宋芳.基于云計算技術(shù)的高校實驗室資源的優(yōu)化應(yīng)用[J].電子世界.2013,(2):8-8.
責(zé)任編校:徐向陽
TP301
A
1009-8534(2017)01-0110-02
廣東省教育廳,校企協(xié)同構(gòu)建高職管理類生產(chǎn)性實訓(xùn)基地的研究與實踐(項目編號:GDJG2015016)
陳榕利,廣東創(chuàng)新科技職業(yè)學(xué)院實驗師,本科。