国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向數(shù)據(jù)中心的能源效率和服務器虛擬化

2018-05-28 08:15:00何花楊段生
電子技術(shù)與軟件工程 2018年8期
關(guān)鍵詞:管理程序內(nèi)存虛擬化

文/何花 楊段生

圖1:實驗設(shè)置

隨著云計算的加速技術(shù),數(shù)據(jù)中心在云計算中扮演了一個中樞角色,并且消耗了大量的電能。如何解決電力消費已經(jīng)成為未來數(shù)據(jù)中心面臨的主要挑戰(zhàn)之一。最近,服務器整合被吹捧為提高數(shù)據(jù)中心能源效率的有效途徑。在這種方法中,運行在多個服務器上的應用程序可以通過虛擬化合并到一個服務器中。因此,數(shù)據(jù)中心的空閑服務器可以被關(guān)閉以減少服務器虛擬化的能源使用。并且已經(jīng)證明,通過虛擬化優(yōu)化數(shù)據(jù)中心操作,可以節(jié)省數(shù)據(jù)中心20%的能耗。然而,虛擬化還會導致潛在的危險效應,比如可能的能源開銷,或者可能減少最大吞吐量。這些有害的影響,如果不是很好理解的話,可能會抵消服務器虛擬化帶來的好處。因此,對數(shù)據(jù)中心服務器能量使用的清晰理解和精確建模將為數(shù)據(jù)中心的操作優(yōu)化提供基本依據(jù)。

在本文中,研究了服務器虛擬化對數(shù)據(jù)中心能源使用的影響,目的是為優(yōu)化數(shù)據(jù)中心操作提供見解。采用了一種經(jīng)驗方法來度量不同虛擬化配置下的服務器所消耗的能量,包括一個基準案例和兩個替代的管理程序(即Xen和KVM,其中物理服務器被虛擬化為多個虛擬機(VMs)。在獲得了CPU使用率、任務執(zhí)行時間、電力和能源消耗的統(tǒng)計數(shù)據(jù)后,在本地計算出密集型任務和網(wǎng)絡密集流量下,對應于云計算和數(shù)據(jù)中心的兩個重要資源、計算和網(wǎng)絡。

1 服務器虛擬化模型

1.1 虛擬化模型概述

虛擬機監(jiān)控程序,也指虛擬機管理器(VMM),它是允許多個操作系統(tǒng)(OSs)同時在一臺服務器上運行的虛擬化技術(shù)之一?,F(xiàn)有的管理程序基于它們與硬件平臺的關(guān)系,可以分為兩種類型。具體來說,Xen是一個type-1管理程序,它直接與底層硬件接口,并使用一個特權(quán)域0來管理其他內(nèi)核修改的客戶機。KVM被設(shè)計為一個type-2管理程序,其中虛擬化接口與實際物理硬件的作用相同。

1.2 虛擬I/O機制

Xen公開了一個超調(diào)用機制(也稱為半虛擬化接口),所有用戶操作系統(tǒng)都必須被修改以執(zhí)行特權(quán)操作(例如,更新頁表)。此外,還建議事件通知機制提供從實際設(shè)備中斷到VMs的虛擬中斷。相反,KVM通常使用完全虛擬化。在KVM之上的客戶OSs不需要改變,它們看起來是正常的Linux進程。當用戶OSs發(fā)出I/O指令時,系統(tǒng)管理程序中的進程上下文切換可以允許I/O信號通過。

Xen和KVM的虛擬化I/O機制的差異直接影響了虛擬服務器的能源消耗。Xen允許客戶在不調(diào)用主機OS的內(nèi)核的情況下進行系統(tǒng)調(diào)用,而KVM則需要額外的內(nèi)核操作來支持I/O行為。額外的操作可能會轉(zhuǎn)化為額外的CPU周期和內(nèi)存訪問,這將進一步導致額外的能源使用。

1.3 虛擬CPU模型

Xen中的默認CPU調(diào)度器是基于信用的調(diào)度器。這個調(diào)度程序運行在主機上的一個獨立的會計線程上,為每個虛擬CPU(VCPU)分配一定的信用。當一個VCPU運行時,它會消耗它的信用。一旦VCPU耗盡了信用,它只在其他更節(jié)約的VCPU完成執(zhí)行時運行。

KVM使用常規(guī)的Linux CPU和內(nèi)存調(diào)度器。默認情況下,KVM使用完全公平的調(diào)度器(CFS)來將每個客戶視為正常的線程。在KVM上運行的每個任務都有一個優(yōu)先級,這決定了CPU周期和內(nèi)存分配的大小。

盡管有不同的機制,但這兩個CPU調(diào)度程序的目標是平衡多核上的全局負載,以達到更好的分配,這將得到我們的驗證。

2 實驗設(shè)備

2.1 物理設(shè)置

圖1展示了我們實驗的物理設(shè)置,該實驗由三個相同的服務器組成。正在測試的機器是浪潮3060服務器,每個服務器包含一個四核Intel 2.13 GHz英特爾至強處理器,2GB內(nèi)存,500gb硬盤和1千兆以太網(wǎng)卡。所有這些都連接到友訊gds-1024t 1000 Base-T開關(guān)試驗網(wǎng)。Kill-A-Watt功率表,標準精度為0.2%,用于測量每個服務器的能源使用情況。使用Linux內(nèi)核2.6.18的CentOS 5.6-final-x86 64被用作主機和客戶系統(tǒng)的操作系統(tǒng)平臺。Xen 3.0.3和KVM 83分別安裝在服務器B和C上。3個客戶虛擬機配置4個VCPUs、512mb RAM和50gb映像。我們保留了所有的軟件參數(shù)。

我們的實驗由另一臺計算機控制,它也與內(nèi)部網(wǎng)相連,以獲得基準時間、能源和電能消耗。每個服務器負責收集其平均CPU使用量。

圖2:局部任務基準的相對能量開銷

圖3:網(wǎng)絡基準測試的相對能量開銷

圖4:完成時間曲線

圖5:能耗曲線

2.2 測試設(shè)計

我們從收集所有服務器空閑時的背景能耗開始。在此之后,一組本地和網(wǎng)絡的連接被啟動,以強調(diào)所有的三個服務器。詳細的測試用例說明如下:

(1)本地計算基準:Linux中的bc命令用于計算常量π到精確的水平(小數(shù)點后10萬位數(shù))。我們同時運行多個實例來生成計算密集型負載。5個案例的數(shù)據(jù)數(shù)量從3個到7個,測試了2個或3個活動域。在物理機器上,所有實例都是在相同的操作系統(tǒng)上執(zhí)行的,而在虛擬服務器上,并發(fā)實例分布在所有活動域上。

(2)Http請求基準:通過Http請求模擬網(wǎng)絡密集型的流量基準。

在服務器端,測試的所有服務器上配置了三個Apache服務器。在物理上,三個HTTP服務器在三個TCP端口上執(zhí)行連接隔離。對于虛擬機,三個實例在所有活躍的客戶域上均勻分布,用于2或3個活動域。使用相同的TCP端口進行公平的比較。在HTTP服務器上存儲的內(nèi)容是從商業(yè)web站點檢索的1000個唯一文件,平均文件大小為10.8 KB。

在客戶端,我們使用AB(Apache Bench)工具模擬真實的Web流量。配置了三個客戶端來生成特定速率的http GET請求,每個請求都將使用一個Apache服務器實例。每個客戶機向每個文件發(fā)送5000個請求。在這個測試概要文件中,傳輸?shù)臄?shù)據(jù)的總體大小可以達到大約150 GB。

我們的實驗產(chǎn)生了各種請求率,將能量使用作為工作負載的函數(shù)。具體來說,有2500、5000、10000、15000個請求/秒被用來模擬低、中等、高和峰值的Web流量負載,這是由真正的商業(yè)Web服務器的工作負載提出的

3 實驗分析

3.1 局部計算基準

(1)虛擬服務器比物理服務器消耗更少的能量。具體來說,當執(zhí)行5個實例時(實例中比CPU核心的數(shù)量多一個),基于Xen的服務器的能量開銷為負,如圖2所示。

圖2可以理解為在多核服務器中并發(fā)進程和CPU核心之間的相互作用。在這種情況下,基于Xen的服務器,運行2個或3個VMs,消耗的時間比物理服務器少10%,消耗的能量也少了11%。對于基于KVM的服務器,在大多數(shù)情況下,CPU調(diào)度器的優(yōu)點被額外的系統(tǒng)管理程序所抵消,除了在配置了兩個活躍的VMs之外,導致節(jié)省了比物理服務器的2%的能量。這一發(fā)現(xiàn)表明,如果運行過程和cpu核心之間沒有綁定,本地操作系統(tǒng)就不能真正利用多核架構(gòu);相比之下,基于Xen或KVM的虛擬化系統(tǒng)可以將計算資源劃分為更小的部分,從而在活躍的VMs之間實現(xiàn)更好的資源分配,以節(jié)省能源。

(2)基于KVM的服務器比Xen-base服務器消耗更多的能量。例如,在處理7個并行任務時,2個KVM虛擬機消耗的能量超過2個Xen VMs的5.4%,而3個KVM VMs和3個Xen VMs之間的差距達到了23%。這是因為KVM管理程序比Xen管理程序消耗更多的CPU周期,占用更高的內(nèi)存占用空間。額外的需求轉(zhuǎn)化為更高的能源消耗。

(3)活動VMs的數(shù)量影響了基于KVM的服務器的能源使用情況。特別是在配置3個活躍的VMs時,基于KVM的服務器消耗的能量比在同一臺服務器上配置的兩個活躍的VMs消耗的能量要多。這可以歸因于頻繁的鎖持有者搶占(LHP)機制。當主機調(diào)度VCPU線程時,基于KVM的服務器上的客戶機VCPU可能被搶占。如果搶占的VCPU在關(guān)鍵部分運行,那么鎖將從客戶VMs的角度持有一定時間。在更活躍的VMs中,LHP的概率更高。一旦LHP發(fā)生,CPU資源就會被簡單地浪費在鎖定期間,而這反過來又會增加任務完成時間。因此,以KVM為基礎(chǔ)的服務器和3個活躍的VMs的平均功耗最低,但任務完成時間最長。

圖6:虛擬化能量開銷

3.2 HTTP請求的基準

在圖3中繪制了HTTP基準的結(jié)果。

(1)網(wǎng)絡密集型流量的虛擬化開銷比計算密集型流量要大得多。對于基于Xen的服務器,計算密集型流量的能量開銷小于5%,而網(wǎng)絡密集型流量的開銷可能上升到70%。同樣的情況也發(fā)生在基于KVM的服務器上。這一發(fā)現(xiàn)的原因至少有兩方面。首先,對于網(wǎng)絡流量,虛擬化服務器的CPU使用率要遠遠高于本地服務器;對于本地計算任務,所有服務器的CPU使用情況幾乎是相同的。這一差異表明,在KVM的Xen或TUN/TAP中,VFR/VIF的預算為CPU周期。其次,根據(jù)鎖持有優(yōu)先權(quán)(LHP)的概率,虛擬服務器的I/O密集型工作負載的概率為39%。高頻率的LHP轉(zhuǎn)化為高能源成本。

(2)虛擬服務器的能量開銷與活躍的VMs的數(shù)量相關(guān)。對于3個活動的KVM VMs,能量開銷大約是兩個活躍的VMs的1.5倍;類似地,3個活躍的Xen VMs消耗了2個活躍的VMs的幾乎兩倍的開銷。此外,基于KVM的服務器的差距也越來越大。例如,在15000 請求次/秒的情況下,KVM的活動VMs和2個活動VMs之間的開銷差距超過80%;而Xen的約為20%。

(3)基于KVM的服務器的網(wǎng)絡吞吐量最大達到10000個請求次/秒和15000個請求次/秒。圖4和圖5使這個發(fā)現(xiàn)非常清楚。

當請求率為15000個請求次/秒時,基于kvm的服務器需要更長的時間來完成任務,因此消耗了更多的能量,相比之下,10000次的請求次/秒就需要消耗更多的能量。作為一種比較,物理機和基于Xen的服務器的任務完成時間和能源成本隨著請求率的增加到15000個請求次/秒而單調(diào)減少。由于KVM的額外內(nèi)存占用。在Apache服務器中,每個服務請求都需要特定的內(nèi)存??梢酝瑫r服務的請求的最大數(shù)量與可用資源的數(shù)量成比例。對于KVM來說,額外的內(nèi)存占用會縮小請求服務可用內(nèi)存的數(shù)量。

(4)與服務器空閑時所消耗的功率相比,服務器在不同負載條件下消耗的邊際功率是有限的。具體地說,服務器在不同的網(wǎng)絡請求級別下消耗的額外能量最多為37.3%,而本地計算基準的額外功耗為57.6%。此外,邊際功耗與所觀察到的CPU使用率高度相關(guān)。因此,我們的實驗驗證了服務器以前的功耗模型,在此模型中,服務器的功耗幾乎可以看作是CPU使用的一個affline函數(shù),而空閑功耗為y軸截距。y軸截距要盡可能小,才能達到能量比例的結(jié)構(gòu)。

(5)虛擬化服務器的能量開銷非常大。如圖6所示。

由一個多項式擬合線是彎曲的基于不同配置的功耗,權(quán)力差距基線和虛擬化服務器Xen和KVM增加隨著吞吐量的增加,在基于KVM的服務器的最大吞吐量。當沒有網(wǎng)絡流量時,Xen和基線之間的差距約為1%(0.8W),而基于kvm的服務器和基線服務器之間的差距約為10%(6.9W)。當吞吐量增加到10000個請求次/秒時,Xen的差距為15.2%(10.8W),KVM的差距為11.2%(7.9W)。

4 結(jié)論

本文對服務器虛擬化對能源效率的影響進行了實證研究。通過密集的測量,我們獲得了來自本地服務器的能源使用的統(tǒng)計數(shù)據(jù),以及Xen和KVM的虛擬化服務器,以及基于我們的動機的一些發(fā)現(xiàn)。最后,我們揭示了虛擬服務器之間的基本平衡,這將決定如何設(shè)計和部署服務器整合來控制數(shù)據(jù)中心的能源使用。

參考文獻

[1]羅亮,吳文峻,張飛.面向云計算數(shù)據(jù)中心的能耗建模方法[J].軟件學報,2014,25(07):1371-1387.

[2]王德文,劉楊.一種電力云數(shù)據(jù)中心的任務調(diào)度策略[J].電力系統(tǒng)自動化,2014,38(08):61-66+97.

[3]劉德欣,閆永明,郭軍等.云環(huán)境下基于多目標決策的待整合服務器選擇方法研究[J].小型微型計算機系統(tǒng),2016,37(04):699-704.

[4]李佟,葛敬國,鄂躍鵬等.基于標簽的POF網(wǎng)絡虛擬化技術(shù)研究[J].計算機應用研究,2017(03):1-10.

[5]孫超.服務器虛擬化技術(shù)的應用[J].電子技術(shù)與軟件工程,2017(10):31.

[6]史椸,馮雨聲,齊勇等.多用戶服務器程序自恢復系統(tǒng)[J].軟件學報,2015,26(08):1907-1924.

[7]吳迪,薛政,潘嶸.基于XEN云平臺的網(wǎng)絡安全實驗教學[J].實驗室研究與探索,2013,32(07):62-66.

[8]范偉,孔斌,張珠君等.KVM虛擬化動態(tài)遷移技術(shù)的安全防護模型[J].軟件學報,2016,27(06):1402-1416.

[9]黃秋蘭,李莎,程耀東等.高能物理計算環(huán)境中KVM虛擬機的性能優(yōu)化與應用[J].計算機科學,2015,42(01):67-70.

[10]湯儒,李秦偉.Openstack云環(huán)境中KVM虛擬機性能分析[J].微型機與應用,2013,32(23):94-96+100.

[11]曾少寧,汪華斌,袁秀蓮等.應用虛擬化技術(shù)的計算機虛擬實驗平臺[J].科技通報,2013,29(02):203-205.

[12]魏小鋒,郭玉東,林鍵.基于MNT隨機化容器文件系統(tǒng)安全性加強技術(shù)[J].計算機工程與應用,2017(04):1-6.

[13]王艷,陳衛(wèi)衛(wèi).基于Nginx替代Apache在高并發(fā)WEB負載均衡系統(tǒng)中的應用[J].電子測試,2015(06):88-92.

猜你喜歡
管理程序內(nèi)存虛擬化
軍事保密管理程序法治化及其對軍民協(xié)同創(chuàng)新發(fā)展的促進研究
“春夏秋冬”的內(nèi)存
當代陜西(2019年13期)2019-08-20 03:54:22
基于OpenStack虛擬化網(wǎng)絡管理平臺的設(shè)計與實現(xiàn)
電子制作(2019年10期)2019-06-17 11:45:10
對基于Docker的虛擬化技術(shù)的幾點探討
電子制作(2018年14期)2018-08-21 01:38:20
虛擬化技術(shù)在計算機技術(shù)創(chuàng)造中的應用
電子測試(2017年11期)2017-12-15 08:57:56
關(guān)于EPC總承包項目設(shè)計管理程序文件的研究
存儲虛擬化還有優(yōu)勢嗎?
FMC移動性管理程序
河南科技(2014年24期)2014-02-27 14:19:26
基于內(nèi)存的地理信息訪問技術(shù)
寧德核電管理體系建設(shè)與優(yōu)化
中國核電(2011年3期)2011-11-20 01:46:10
海宁市| 永泰县| 安多县| 尚义县| 威信县| 偃师市| 芮城县| 景泰县| 武穴市| 富蕴县| 济南市| 娱乐| 绍兴市| 临高县| 临桂县| 芦山县| 西林县| 娄底市| 那坡县| 六盘水市| 姚安县| 若羌县| 榆中县| 忻城县| 建瓯市| 邹平县| 嘉峪关市| 大厂| 广东省| 阿拉善左旗| 大兴区| 上蔡县| 海兴县| 余江县| 石嘴山市| 昭觉县| 张家港市| 建宁县| 胶南市| 内丘县| 定边县|