謝 睿
(湘南學院 軟件與通信工程學院,湖南 郴州 423000)
云計算虛擬化平臺的內(nèi)存資源全局優(yōu)化研究
謝 睿
(湘南學院 軟件與通信工程學院,湖南 郴州 423000)
云計算能夠在虛擬化技術(shù)的協(xié)助下,大規(guī)模地將資源計算進行統(tǒng)一的管理,利用效率進行有效的提升,但是,資源的全局優(yōu)化能力,在一定的程度上,被云計算物理的服務(wù)器內(nèi)存資的邊界所限制。因此,文章對云計算虛擬化平臺的內(nèi)存資源全局優(yōu)化進行研究,認為應(yīng)該將虛擬機內(nèi)部資源邊界的最小內(nèi)存值進行增加,改進全局優(yōu)化框架。
云計算;虛擬化;內(nèi)存資源;全局優(yōu)化
信息服務(wù)隨著互聯(lián)網(wǎng)的快速發(fā)展,也在快速地發(fā)展,云計算模式也誕生了,云計算模式按使用進行付費,使用起來比較方便,無論是對企業(yè),還是對用戶,都比較受歡迎。在虛擬化技術(shù)的協(xié)助下,不但大規(guī)模地將資源計算進行統(tǒng)一的管理,還利用效率進行有效的提升,維護了成本和對管理進行了簡化,同時,還將易擴展和獲取的按需服務(wù)提供給了用戶。
虛擬化在云計算的基礎(chǔ)上,有關(guān)的計算機模塊在虛擬技術(shù)上進行有效地運行,而不是作為物理的硬件,在此基礎(chǔ)上單獨地運行[1]。針對資源計算,云計算可以借助虛擬化的技術(shù),進行大規(guī)模的統(tǒng)一管理,對物理資源利用效率進行有效的提升,維護了成本,對管理進行了簡化,同時,還將易擴展的按需服務(wù)不斷給用戶進行提供。云計算有效地結(jié)合虛擬技術(shù),具有極大的優(yōu)勢,既提供了良好的使用模式,又提供了全新資源的整合。
從當前來看,物理服務(wù)器的內(nèi)存資源邊界,在一定程度上,對資源全局的優(yōu)化能力進行了限制。針對虛擬機間內(nèi)存的資源結(jié)合云平臺的物理資源采用有效算法來進行深入的研究,來有效地提升內(nèi)存資源的整體利用率。再將云計算平臺的虛擬化優(yōu)化的內(nèi)存框架進行引入,運用地址空閑的空間和邏輯的地址空間來將全局內(nèi)存的優(yōu)化框架構(gòu)成,而使內(nèi)存資源的充分利用得以有效地提升[2]。該機制很大程度上,將內(nèi)存資源利用率進行了極大的提升,但是,空閑內(nèi)存只要存在,與全局空閑內(nèi)存池就必須進行地址的映射,導(dǎo)致內(nèi)存使用和存儲的空間負擔增加。對于全局調(diào)節(jié)協(xié)同的算法和內(nèi)存自調(diào)節(jié)的算法認真進行研究和分析后,在資源的利用率比較低時,為了將內(nèi)存資源進行平衡,各個虛擬機都采用了自發(fā)的調(diào)節(jié)策略;而內(nèi)存資源利用率比較高時,采用空閑內(nèi)存全局調(diào)度來對平衡內(nèi)存的資源進行有效的調(diào)節(jié)。兩種算法所存在的問題,就是對各個虛擬機內(nèi)存資源不斷地進行交互,既占用了內(nèi)存,又使計算延遲增加。對于調(diào)節(jié)虛擬機內(nèi)存的資源優(yōu)化問題,運用熵優(yōu)化和進化的算法分別進行解決,但是,精確模型難以建立,算法的適用性也比較低。
內(nèi)存的優(yōu)化模型提出以后,將全局擴展的地址空間構(gòu)成和邏輯的地址空間引入,運用雙層的地址空間的映射機制來將抽象的跨物理器的可靠內(nèi)存資源和資源邊界高效構(gòu)成。將一種透明頁面的交換機制進行引入,來將虛擬機的透明空閑頁面的回收得以有效地實現(xiàn),從而使流動資源目的得以實現(xiàn)[3]。在模型中加入空閑內(nèi)存池概念,對于調(diào)度內(nèi)存資源非常方便,同時,也能夠?qū)?nèi)存資源的利用率得以有效地提升。
但是,虛擬創(chuàng)建的內(nèi)存在正常利用的情況上,也在不斷地進行變化,其變化與全局空閑的內(nèi)存池的地址不斷地進行映射,從而使空間復(fù)雜度和內(nèi)存負擔得以增加。系統(tǒng)結(jié)構(gòu)的整體模型如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)示意
在各個物理的平臺中,虛擬機的負載會不斷地進行動態(tài)的變化,在一定時間內(nèi),內(nèi)存的利用率就會隨著負載的變化,而有相應(yīng)的現(xiàn)象產(chǎn)生。所以,不同物理機之間的內(nèi)存和各臺的物理服務(wù)器內(nèi)部,將會有不均衡性的利用率呈現(xiàn)出來,隨著時間的變化,這種不均衡的利用率也會不斷地進行動態(tài)的變化。對于平臺上應(yīng)用性,都會因為以上涉及的因素受到限制。
在設(shè)計結(jié)構(gòu)模型時,將全局空閑內(nèi)存池引入,來將各個虛擬機的內(nèi)存分配進行有效地調(diào)節(jié)。思路的設(shè)計:虛擬機內(nèi)存的資源利用率比較低,先調(diào)節(jié)虛擬機自身的內(nèi)部,對于計算最小邊界是否達到進行判斷,若此閾值已滿足,在空閑的內(nèi)存池,再放入多余空閑的內(nèi)存,同時,在虛擬機的內(nèi)部應(yīng)該有部分預(yù)留內(nèi)存,否則,內(nèi)存就不會放入到空閑的內(nèi)存池中。
虛擬機的內(nèi)存資源的利用率如果比較高,應(yīng)該從全局空閑的內(nèi)存池中,將內(nèi)存進行申請,來將內(nèi)存負載的過大壓力進行降低,內(nèi)存池中空閑內(nèi)存如果不足時,就是比較少見的現(xiàn)象,空閑的內(nèi)存池中將大部分的虛擬機空閑內(nèi)存聚集,各個虛擬機最小的邊界值,都是在一段的時間內(nèi),結(jié)合各個虛擬機內(nèi)存資源的利用率波動的情況而計算出來的。所以,在日常的作用中,這種極端的情況是很少見的。若有全局空閑內(nèi)存池不足的現(xiàn)象出現(xiàn),對于最小的邊界值就需要重新進行計算,對于內(nèi)存資源利用率低的虛擬機的預(yù)留內(nèi)存重新進行分配。
計算虛擬機最小邊界值思路:結(jié)合當前時刻和前一個時刻的值來進行計算,再將計算以后的值存入到虛擬機中,因此,每次只將一個計算后的值保存到虛擬機中。
2.1 虛擬機內(nèi)部的調(diào)節(jié)策略
對于內(nèi)存的調(diào)節(jié)程序進行有效地執(zhí)行,內(nèi)部調(diào)節(jié)策略是否啟用進行有效地判定。基本原理如下:(1)虛擬機初始時,根據(jù)虛擬機的配置文件,對內(nèi)部調(diào)節(jié)的啟用進行決定,一旦配置狀態(tài)被全局調(diào)節(jié)改變,虛擬機內(nèi)部調(diào)節(jié)的啟用,只能由全局調(diào)節(jié)進行控制。(2)將調(diào)節(jié)虛擬機的內(nèi)部啟用的狀態(tài),傳達給主控的模塊,對于Domain U所做出的自身調(diào)節(jié)進行確定,若空閑內(nèi)存池中資源不夠時,以免有內(nèi)存資源競爭發(fā)生。(3)在proc文件的系統(tǒng)中,在meminfo中可以將Guese OS內(nèi)存信息得到,還可以將內(nèi)存值committed-AS進行提交。對于Domain-O與Guest OS之間,可以運用Xenstore作用控制和內(nèi)存信息傳遞的媒介。利用氣球驅(qū)動機制作為對Guest OS內(nèi)存進行調(diào)節(jié)的基礎(chǔ)。
2.2 內(nèi)部調(diào)節(jié)與全局調(diào)節(jié)的協(xié)作策略
虛擬機內(nèi)部調(diào)節(jié)與全局調(diào)節(jié)具有本質(zhì)的區(qū)別。
(1)虛擬機內(nèi)部之間進行調(diào)節(jié)時,各個虛擬機之間內(nèi)存使用的信息不需要相互之間了解和知曉。如果虛擬的內(nèi)存資源率相對比較低,該虛擬機就會結(jié)合內(nèi)存信息的情況決定自身的資源分配,對于特定容量也會結(jié)合最小的邊界值來進行確定,然后融入全局內(nèi)存中。
(2)全局調(diào)節(jié)主要是決定各個虛擬內(nèi)存的資源量的分配情況,從全局的角度出發(fā),來平衡地調(diào)節(jié)有關(guān)的策略。與內(nèi)部調(diào)節(jié)相比,全局調(diào)節(jié)更具有全面性。能夠?qū)⒖臻e內(nèi)存池中內(nèi)存的大小進行有效地掌握,同時,還要針對受控的Guest OS內(nèi)存的使用信息進行掌握。
虛擬機內(nèi)存管理系統(tǒng)在內(nèi)存資源豐富的情況下,能夠自發(fā)地將系統(tǒng)進行有效地調(diào)節(jié),調(diào)節(jié)目標的內(nèi)存值由各個Guest OS利用所提交的內(nèi)存值獲得。random和mono是Guest OS分別運行的兩個測試標準,40~300 MB是內(nèi)存申請的范圍。
針對random和mono兩個測試的標準而言,二者是在物理內(nèi)存足夠的條件下,程序?qū)?nèi)存資源的占用,系統(tǒng)提交的內(nèi)存表明,內(nèi)存的資源利用率比較低且具用空閑的內(nèi)存狀況下,對于最小邊界值與提交值對比的情況進行改進,致使算法高效性的改進得以充分地顯示[4]。
運用random和mono兩個標準測試的程序,都是根據(jù)有效的空閑內(nèi)存價格的調(diào)節(jié)方式。
在內(nèi)存值的分配上,各臺Guest OS都是256 MB,所以mono和random在對40~300 MB的訪問內(nèi)存的范圍內(nèi),結(jié)合空閑內(nèi)存資源的調(diào)節(jié)策略,Guest OS的兩個目標內(nèi)存值,與Guest OS上運行的測試標準,都能夠很好地進行吻合。
虛擬機的內(nèi)存在資源的利用率比較高的時候,用量也會相應(yīng)地增加,而虛擬機內(nèi)存的資源如果出現(xiàn)欠缺的現(xiàn)象時,就會向全局空閑的內(nèi)存池將內(nèi)存進行申請,虛擬機內(nèi)存利用增加,全局內(nèi)存池容量減少,虛擬內(nèi)存資源的利用率降低,全局空閑的內(nèi)存池增加容量,從而使有效性的全局調(diào)節(jié)算法有效地表現(xiàn)出來。
綜上所述,云計算能夠在虛擬化技術(shù)的協(xié)助下,大規(guī)模地將資源計算進行統(tǒng)一的管理,利用效率進行有效地提升,同時,也維護了成本和對管理的簡化。
[1]董運萌.一種云計算環(huán)境下負載均衡敏感的聚類部署方法研究[D].長春:吉林大學,2015.
[2]鄭光遠.云計算環(huán)境下基于時間的公平帶寬動態(tài)分配算法[D].杭州:浙江工商大學,2014.
[3]蔚歡樂.基于OpenStack的資源動態(tài)分配框架的設(shè)計與實現(xiàn)[D].西安:西北大學,2014.
[4]周丹紅.云計算虛擬化平臺的內(nèi)存資源全局優(yōu)化研究[D].沈陽:東北大學,2013.
Study on global optimization of internal memory resources in cloud computing virtualization platform
Xie Rui
(Software and Communication Engineering School of Xiangnan College, Chenzhou 423000, China)
With the help of virtualization technology, cloud computing can manage the resource computing on a large scale, and effectively promote use ef fi ciency. But to a certain degree, the global optimization ability of the resource is limited by the boundaries of the cloud physical server memory resources. Therefore, this paper studies the internal memory resources’ global optimization of cloud computing virtualization platform, and thinks that the minimum internal memory value of the internal resource boundary of virtual machine should be increased and the global optimization framework should be improved.
cloud computing; virtualization;internal memory resources; global optimization
湘南學院校級課題;項目編號:2016-28。
謝睿(1983— ),男,湖南郴州,碩士,助教;研究方向:云計算,嵌入式系統(tǒng),人工智能。