引言
云計算技術利用高速互聯(lián)網(wǎng)的傳輸能力,將計算、存儲、軟件、服務等資源從分散的個人計算機或服務器移植到互聯(lián)網(wǎng)中集中管理的大規(guī)模高性能計算機、個人計算機、虛擬計算機中,從而使用戶像使用電力一樣使用這些資源。從層次上云計算平臺可以分為以下3 種服務模式:軟件即服務(softwareas a service,SaaS),平臺即服務(platform as a service,PaaS),基礎架構即服務(infrastructure as a service,IaaS)。從服務對象和范圍來講,云計算平臺可以被分為3 種:公有云,私有云和混合云。
IaaS公有云平臺是當前云計算平臺最重要的一種表現(xiàn)形式。自亞馬遜(Amazon) 通過其彈性計算云(elastic computecloud,EC2)實施IaaS以來,以面向公眾服務提供計算資源和存儲資源的平臺不斷推出,如Scientific Cloud[6],OpenNebula,Eucalyptus和IBM Blue Cloud等。國內(nèi)的云計算的發(fā)展正處于成長期,技術和商業(yè)模式學習歐美,采用復制并本地化發(fā)展方式。由于國內(nèi)企業(yè)對云計算技術抱有謹慎務實態(tài)度,比如安全問題等,國內(nèi)更傾向于創(chuàng)建私有云,而不是使用公有云服務。但隨著用戶迅速增長的服務需求,云計算將向公共計算機網(wǎng)發(fā)展,對大規(guī)模的協(xié)同計算技術提出新的要求,虛擬機的互操作,資源的統(tǒng)一調(diào)度,需要更加開放的標準。所以,有必要對IaaS 公有云平臺的服務模型進行研究。在此,本文抽象出IaaS 公有云平臺的服務模型,基于排隊論對平臺服務模式、隊列長度、調(diào)度服務器設置等進行了優(yōu)化分析,并重點討論了平臺調(diào)度的幾個核心問題。相關模型和算法在廣東電子工業(yè)研究院自主研發(fā)的云計算平臺上驗證了可行性。
1 IaaS 公有云服務模型
IaaS公有云平臺以面向廣域網(wǎng)用戶提供虛擬機作為主要的服務模式。其核心目標即按用戶定制需求,提供對應操作系統(tǒng)類型、CPU 頻率、核心數(shù)和硬盤空間的虛擬機。
1.1 平臺組成
IaaS公有云的調(diào)度對象主要是虛擬機,即用戶定制的虛擬機應該運行在具體哪個物理機上,當虛擬機狀態(tài)發(fā)生改變?nèi)绾沃匦抡{(diào)整虛擬機的分布,從而實現(xiàn)平臺效率的最大化。從調(diào)度角度來看IaaS 公有云和IaaS 私有云的最大區(qū)別,公有云面對的物理資源的優(yōu)先級是相同的,用戶虛擬機可以運行在任一物理機上;而私有云往往需要對虛擬機的安全性和可用性有特殊要求,虛擬機具體運行在哪臺物理機上還要由物理機的性能、可用性及安全性等來確定。如由于辦公位置需要,而把虛擬機運行在部門獨立管理的服務器上。
從邏輯上講,如圖1 所示IaaS 公有云平臺主要由3 個重要組成部份組成:
云管理中心:是云對外服務的接口,也是云資源統(tǒng)一管理、監(jiān)控和調(diào)度的中心。云管理中心接受用戶對整個云的資源請求,按需從平臺管理的資源中為用戶分配好所需的資源(如虛擬機、存儲資源等),并進行初始設置,然后將資源訪問路徑返回給用戶。
云計算資源中心:由邏輯上可管理的物理計算資源組成,對于云平臺而言,這些物理機將作為虛擬機的宿主機,供平臺調(diào)度。平臺的調(diào)度服務器將根據(jù)用戶需求,從平臺中選擇最優(yōu)的資源以保證虛擬機的運行。一般情況下,多個云計算資源中心以一臺代理服務器作為資源與云管理中心的接入點,以完成對計算資源的監(jiān)控和調(diào)度。
云存儲資源中心:由邏輯上可管理的物理存儲資源組成。對IaaS 平臺而言,虛擬機模板、用戶虛擬機鏡像、快照等全部存儲在統(tǒng)一管理的存儲結點上,如NFS、S3、ISCSI 等。用戶的虛擬機文件在創(chuàng)建時讀入具體的物理機并由虛擬機系統(tǒng)加載,對于平臺而言,物理機和虛擬機之間是松耦合的。這也是公有云平臺和私有云平臺的最大區(qū)別。
圖1 IaaS 公有云服務模型及流程
1.2 服務流程
下面以公有云平臺操作的兩個流程來分析公有云平臺資源調(diào)度的一般流程。用戶向平臺申請資源流程如下所示:(1)注冊用戶登錄平臺Portal 服務器,向平臺提出虛擬機資源請求,包含CPU 核心數(shù)、主頻、內(nèi)存、硬盤大小等相關參數(shù)。
(2)Portal 服務器將用戶請求轉發(fā)給調(diào)度服務器。
(3)調(diào)度服務器查詢元數(shù)據(jù)庫,查找可以滿足該虛擬機運行需求的物理服務器列表。
(4)調(diào)度服務器從列表中選擇優(yōu)先級最高的一臺物理機,把請求轉給該物理機所在區(qū)域的代理服務器。
(5)調(diào)度服務器根據(jù)用戶請求的虛擬機類型從存儲資源中選擇虛擬機鏡像模板,把鏡像傳輸請求交給存儲資源的代理服務器。
(6)用戶請求的虛擬機鏡像被加載到被調(diào)度服務器選中的物理機中。調(diào)度服務器通過代理服務器啟動物理服務器上加載成功的虛擬機。如果(4)-(6)的過程中出錯,調(diào)度服務器將選擇新的物理機加載虛擬機。
(7)用戶請求的虛擬機啟動后,用戶可以通過RDP、VNC、ICA、SSH 協(xié)議終端遠程訪問運行中的虛擬機。
各代理服務器同時具有資源的監(jiān)控功能,它們定期向云管理中心返回各云計算資源和存儲資源中心的資源情況,并更新元數(shù)據(jù)庫,從而保證平臺調(diào)度的正確性。更新元數(shù)據(jù)庫的流程包括如下兩個步驟:
(8) 監(jiān)控服務器向調(diào)度服務器定時發(fā)出資源信息更新請求,請調(diào)度服務器將請求分發(fā)到各代理服務器,代理服務器獲取信息后將請求返回給監(jiān)控服務器。
(9)監(jiān)控服務器將資源信息更新到元數(shù)據(jù)庫,以保證信息的有效性,從而提高資源的調(diào)度效率。
1.3 平臺服務模型
根據(jù)平臺的服務流程,可以將IaaS 平臺的服務過程抽象為如圖2 所示的模型。
圖2 IaaS 平臺服務模型
模型包括3 個主要的流程:①云管理中心的調(diào)度平臺,從用戶請求隊列中取出優(yōu)先級最高的用戶請求R。R 首先讀取元數(shù)據(jù)庫,根據(jù)用戶請求的硬件資源判斷是否能被當前空閑的物理機資源滿足,如CPU 頻率、核心數(shù)、帶寬、存儲、硬盤空間等。如果能滿足,則直接轉向步驟②;如果不能滿足,判斷是否可以通過平臺虛擬機遷移,釋放相關資源;如果可以則再執(zhí)行遷移步驟,轉步驟②;如果即使遷移也無法完成,則退出,并報告用戶資源無法完成請求。②如果資源請求可以滿足,調(diào)度服務器從存儲結點中選擇與用戶請求對應的虛擬機模板T (對于新建立的虛擬機) 或虛擬機鏡像I。③調(diào)度服務器將I遷入對應的物理機,并創(chuàng)建對應的虛擬機實例V。
從模型中可以看出,平臺調(diào)度的幾個核心問題:
(1)平臺隊列的長度如何確定,優(yōu)先級如何調(diào)整,從而保證最快的用戶請求響應。
(2) 調(diào)度服務器如何分解用戶請求R,并從元數(shù)據(jù)庫找到最優(yōu)的資源,為用戶提供服務。
(3)如果平臺需要調(diào)整現(xiàn)有物理機上的虛擬機分布,如何以最小的調(diào)整代價,實現(xiàn)資源的重新分配。對于部分平臺,由于遷移可能造成平臺QoS的不穩(wěn)定,遷移的條件要求較高,以確保最少的虛擬機受到影響為準。
2 IaaS 平臺調(diào)度模型
根據(jù)平臺的服務模型,通過對各項指標進行量化,來分析云平臺的吞吐率,并對模型進行優(yōu)化分析。
2.1 請求隊列
從排隊論的觀點來看,IaaS 公有云平臺的資源請求及調(diào)度過程是一個排隊及接受服務的過程,排隊系統(tǒng)的輸入即用戶請求,服務臺即調(diào)度服務器,輸出為用戶請求到的資源。用戶請求隊列為R={R1,R2,R3,?,Rn}。
一般可假設在IaaS 公有云平臺用戶的排隊過程中,用戶請求到達服從泊松分布,服務時間服從指數(shù)分布。用表示單位時間內(nèi)平均到達的用戶請求數(shù),用表示服務臺的平均服務速率(服務臺的服務能力)。用表示平均每單位時間中系統(tǒng)可以為顧客服務的比例, = / 即服務強度。Ws 表示顧客在系統(tǒng)中的平均逗留時間(包括排隊等待時間和接受服務的時間),Wq 表示顧客排隊等待的平均時間,可通過如下公式計算,在單隊單服務臺的情況下
多隊多服務臺可看作是多個單隊單服務臺,并結合以上公式進行分析。一般情況下,為了將平臺的響應時間控制在用戶可以接受的范圍內(nèi)。平臺將限定隊列的最大的長度值,當隊列長度超過限定值時,所有的用戶請求均暫時被拒絕,因此隊列可能的最長響應時間即最長隊列的處理時間。
2.2 模型量化
設IaaS 云計算平臺所包含的物理機集合為,則:P={P1,P2, P3,?,Pn},其中n為物理機的數(shù)量。設F為物理機的單CPU核心的主頻,F(xiàn)={F1,F2,F3,? n};設為物理機對應的核心數(shù),C={C1,C2,C3 ,?Cn}; 為物理機對應的可用磁盤空間,D={D1,D2,D3,?Dn}; 為物理機可用的最大帶寬,B={B1,B2,B3,?Bn};為物理機可用的最大內(nèi)存,M={M1 ,M2 ,M3 ,? Mn};則有每臺物理機的總頻率之和為TF,即=TF{TF1,TF2,TF3,?TFn}={F1*C1F2*C2F3*C3,?,Fn*Cn},即Fi*Ci。各變量及公式說明如表1 所示。
表1 公式說明
設用戶請求Ri可以被分解為對CPU 頻率的請求RFi,對CPU核心數(shù)的請求RCi,對內(nèi)存的請求RMi,對磁盤空間的請求RDt對帶寬的請求RBi。調(diào)度服務器首先遍歷元數(shù)據(jù)庫中的物理機,根據(jù)其當前狀態(tài)信息找到當前剩余資源可以滿足用戶需要的物理機集合;然后按照物理機的使用率對結果集合進行排序。用戶請求的虛擬機將優(yōu)先被部署在總體使用率較低的物理機上。使用率包含主頻、核心數(shù)、內(nèi)存等各方面。一般情況下以CPU 總體使用率作為物理機使用率的主要指標。虛擬機的篩選算法如圖3 所示。
圖3 物理機的篩選算法
2.4 遷移模型
公有云平臺可以通過遷移物理機上虛擬機以釋放資源,來完成當前資源請求無法滿足的需求。由于虛擬機的遷移會造成虛擬機QoS 的下降,并影響相關物理機上所有的虛擬機(I/O 操作相關影響)。因此,平臺應盡可能減少虛擬機的遷移操作,盡可能用一次虛擬機遷移操作即可得到可以滿足用戶請求的物理機。當物理機集合中所有物理機都不能滿足請求時,調(diào)度平臺首先找到使用率最低的兩臺物理機,然后嘗試遷移使用率最低的虛擬機到另外一臺物理機以釋放足夠的資源來運行新的虛擬機請求。對于找到的物理機,如果一次遷移也無法釋放足夠的資源,則拒絕用戶請求。虛擬機的篩選算法如圖4 所示。
圖4 虛擬機遷移算法
3 實驗
CN Cloud 是廣東電子工業(yè)研究院自主研發(fā)的IaaS公有云平臺。本文通過一組實驗驗證了相關調(diào)度模型的可行性,實驗數(shù)據(jù)如表2 所示。模擬實驗平臺具有100 臺物理機,每臺物理機最多產(chǎn)生8 臺虛擬機。通過改變隊列長度,并提交與隊列長度等長的虛擬機創(chuàng)建請求,來驗證相關方法的可行性。從表2 中可以看出,由于隊列采用FIFO 先進先出模式,因此平臺的最小響應時間基本不受隊列長度的影響。但是平臺的平均響應時間隨隊列長度的增加增長速度較為明顯(如圖5 所示),尤其是在隊列長度超過40 以后,平臺平均響應時間明顯加快,最大響應時間在隊列長度為70 以上時均超過了120s,超過用戶的容忍時間。因此在實際平臺中,隊列長度應設置為40 或50。
表2 隊列長度及平臺響應時間/s
圖5 平臺響應時間隨隊列長度變化趨勢
平臺物理資源的利用率(虛擬機容積率)超過80%后,出現(xiàn)無法找到足夠資源為用戶創(chuàng)建虛擬機的情況。平臺可以通過虛擬機的遷移來釋放資源,以保證平臺的可用性。虛擬機的遷移和虛擬機的鏡像文件大小、內(nèi)存大小及虛擬機調(diào)度算法有關,如圖6 所示為虛擬機遷移釋放資源隨鏡像文件大小的變化過程。從中可見虛擬機遷移過程中,鏡像文件大小將決定總體響應時間,因此在遷移過程中將鏡像文件大小和虛擬機的使用率加權作為選擇虛擬機的依據(jù)。
圖6 虛擬機遷移響應時間與虛擬機鏡像大小關系
4 結束語
IaaS 公有云平臺是當前公有云的主要應用形式。本文總結了IaaS公有云平臺的服務模型,給出了以云管理中心、云計算資源中心、云存儲資源中心為主體的服務模型。結合排隊論對平臺的服務流程進行了優(yōu)化分析,提出一種定長隊列的管理模型;結合IaaS 平臺資源利用率最大化和單虛擬機性能的最優(yōu)化的設計目標,給出一種基于用戶請求向量的篩選方法,通過分析平臺動態(tài)更新的元數(shù)據(jù),向調(diào)度服務器返回滿足需求且利用率最低的宿主機;平臺調(diào)度算法結合了虛擬機遷移操作,對于一次性無法找到符合要求的宿主機,通過利用率較低的宿主機間虛擬機的遷移操作,對物理資源進行重新分配,在提高平臺的服務接受率的同時提高平臺的整體效率。相關模型和算法在廣東電子工業(yè)研究院自主研發(fā)的云計算平臺進行了驗證,平臺的總體QoS 有了較大的提高。
核心關注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統(tǒng)的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網(wǎng)http://m.hanmeixuan.com/
本文網(wǎng)址:http://m.hanmeixuan.com/html/support/1112158513.html