本發(fā)明涉及云計算領域,特別涉及一種云基礎設施服務的計費方法,本發(fā)明根據(jù)云服務用戶對基礎設施資源的需求差異制定相應的計費策略,能使資源租賃計費方法更加靈活,同時保證云服務廠商的合理利潤。
背景技術(shù):
云計算服務(簡稱云服務)的發(fā)展使得信息的處理從本地計算轉(zhuǎn)向云端計算,用戶可以通過互聯(lián)網(wǎng)訪問動態(tài)可配置的資源共享池(包括CPU、內(nèi)存、塊存儲、外網(wǎng)網(wǎng)絡、對象存儲等),它向用戶提供可用便捷的網(wǎng)絡訪問。云計算服務一般按不同層次可以分為基礎設施即服務(IaaS,Infrastructure as a Service)、平臺即服務(PaaS,Platform as a Service)和軟件即服務(SaaS,Software as a Service)。IaaS將硬件設備等基礎設施資源封裝成服務提供給用戶使用,通常云基礎設施服務以虛擬機(VM,Virtual Machine)的形式提供給用戶使用,用戶相當于是獨占了虛擬機的所有資源。跟在傳統(tǒng)的物理機上運行程序不存在差別,它不僅可以運行Windows系統(tǒng),也可以運行Linux等其它系統(tǒng)。當前大家公認的全球領先的三家云基礎設施服務提供商為3A(Amazon、Azure和AliCloud),本發(fā)明專利中所指的云服務都指的是基礎設施即服務。PaaS提供用戶應用程序的開發(fā)環(huán)境和運行環(huán)境,典型的有Google App Engine,它能夠自身負責資源的動態(tài)擴展和容錯管理,但是用戶必須使用指定的編程環(huán)境并遵照特定的編程模型進行應用程序的開發(fā),存在的缺點是它只適用于解決某些特定的計算問題。SaaS將某些特定應用軟件功能封裝成服務,提供某些專門用途的服務供應用程序調(diào)用,例如數(shù)據(jù)存儲服務和數(shù)據(jù)分析服務等。
云計算擁有超大規(guī)模、虛擬化、高可靠性、通用型、高擴展性、按需付費和極其廉價等優(yōu)點,本發(fā)明從高可擴展性(Resource Scalability)和按需付費(Pay-as-you-go)兩個方面對當前的云基礎設施服務的計費模式進行改進。高擴展性指的是云計算服務用戶可以隨時的更改所租賃基礎設施資源的配置參數(shù)。在單機應用的情況下,可以使用縱向資源伸縮的方法,比如在資源過多分配(Over-provisioning)時可以釋放(Scale down)部分相應的資源,在資源過少分配(Under-provisioning)時可以增加(Scale up)部分相應的資源,在暫時沒有處理任務的時候掛起(Suspend)或者關(guān)閉(Stop)虛擬機進入睡眠模式或者停機模式。在多機并行應用的情況下,除了縱向伸縮還可以使用橫向伸縮的方法,比如在資源過多分配時可以釋放(Scale in)一部分虛擬機,在資源過少分配時可以增加(Scale out)一部分虛擬機。按需付費指的是用戶只要對自己虛擬機生命周期內(nèi)(從虛擬機創(chuàng)建到虛擬機釋放)所使用的資源進行付費,而不需要支付額外的硬件購買和管理費用,目前大部分的IaaS服務廠商采用以小時為最小計費時間單位。在虛擬機上應用程序沒有工作負載或者工作負載比較低時,用戶可以選擇釋放全部或者部分資源來減少租賃費用,因為虛擬機的配置較低通常租賃價格也較低。為了更合理的按供需關(guān)系進行定價,Amazon推出了競價機制,在申請?zhí)摂M機的時候,如果EC2的計算資源比較富余,那么通過競價,用戶可以低于普通方式的價格來獲得虛擬機的使用權(quán)。由于競價型虛擬機相對于正常定價有一定的優(yōu)惠,因此您可以大大降低應用程序的運行成本,在預算不變的情況下提升應用程序的計算容量和吞吐量。
傳統(tǒng)的計費機制主要存在四個缺點:(1)最小計費時間單位太長,通常為一個小時,對于很多小型計算任務來說,處理時間往往不需要一小時,所以按小時計費相對增加了費用,并浪費了資源,不符合當前提倡的綠色計算主流;(2)虛擬機的配置種類較少,并且每一種配置的虛擬機價格固定,不考慮虛擬機運行后資源的動態(tài)伸展和縮減;(3)不考慮虛擬機的狀態(tài),在部署啟動后到虛擬機釋放回收的整個時間段內(nèi),都認為虛擬機在運行狀態(tài),并按運行狀態(tài)的價格計費。(4)當用戶申請了虛擬機后,即時啟動虛擬機,沒有資源預留租賃機制,不考慮虛擬機資源租賃啟動時間和結(jié)束時間。鑒于上述問題,在本發(fā)明中,我們考慮虛擬機預留租賃請求和按需付費請求兩種情況,并考慮在虛擬機部署啟動后,虛擬機狀態(tài)的更改和各個維度資源的動態(tài)伸縮。對于預留租賃請求給予相應的價格優(yōu)惠,并對暫停狀態(tài)和睡眠狀態(tài)的虛擬機收取較低的費用。
技術(shù)實現(xiàn)要素:
本發(fā)明針對原來云基礎設施服務計費方法中存在的上述問題,提供了一種新型的云基礎設施服務的計費方法。
為實現(xiàn)上述目的,本發(fā)明采取了下述技術(shù)方案:
一種云基礎設施服務的計費方法,包括以下步驟:
S1、云基礎設施服務平臺指定虛擬機鏡像類型、資源計費維度、資源計費粒度、最小計費時間單位和資源粒度價格,并構(gòu)造資源總量價格模型;
S2、云基礎設施服務平臺接收用戶的虛擬機申請后加入到虛擬機信息表,計算虛擬機運行價格;
S3、計費引擎獲取用戶申請的虛擬機的配置信息,從計費策略池選取對應的計費策略對用戶虛擬機進行計費,計費策略包括預留租賃和按需付費兩種。
進一步的,步驟S1中,所述虛擬機類型包括Windows鏡像和Linux鏡像兩種,所述資源計費維度包括CPU、內(nèi)存、云硬盤、外網(wǎng)網(wǎng)絡;所述資源計費維度為CPU時,對應的資源計費粒度為核數(shù),所述資源計費維度為內(nèi)存時,對應的資源計費粒度為GB,所述資源計費維度為云硬盤時,對應的資源計費粒度為GB,所述資源計費維度為外網(wǎng)網(wǎng)絡時,對應的資源計費粒度為MB;所述云硬盤包括SATA存儲、SAS存儲和SSD存儲三種類型,所述外網(wǎng)網(wǎng)絡包括外網(wǎng)帶寬和外網(wǎng)流量。
進一步的,步驟S1中,所述資源粒度價格為單個資源計費粒度在最小計費時間單位UTIME內(nèi)的價格,資源粒度價格Utype包括:1核CPU的資源粒度價格UCPU,1GB內(nèi)存的資源粒度價格UMEM,1GB云硬盤的資源粒度價格UDIS-1、UDIS-2和UDIS-3,1MB外網(wǎng)帶寬的資源粒度價格UNET-BANDWIDTH,1MB外網(wǎng)流量的資源粒度價格UNET-FLOW;其中,UDIS-1、UDIS-2和UDIS-3分別對應云硬盤為SATA存儲、SAS存儲和SSD存儲三種存儲類型的資源粒度價格。
進一步的,步驟S1中,所述資源總量價格Ptype為多個資源計費粒度在最小計費時間單位UTIME內(nèi)的價格,且
Ptype=Ctype×Utype
或者Ptype=Utypeloga(Ctype+1),(a>1),
其中,type表示資源類型,Ctype表示資源計費粒度數(shù)量,Utype表示資源粒度價格。
進一步的,步驟S2中,所述虛擬機信息表包括虛擬機鏡像類型、CPU核數(shù)、內(nèi)存容量、SATA云硬盤容量、SAS云硬盤容量、SSD云硬盤容量、外網(wǎng)網(wǎng)絡帶寬、外網(wǎng)網(wǎng)絡流量、啟動時間、預留租賃時間、虛擬機狀態(tài)、虛擬機價格、計費時刻和虛擬機租賃費用。
進一步的,步驟S2中,所述虛擬機運行價格為一臺運行狀態(tài)的虛擬機在最小計費時間單位內(nèi)的價格,其計算方法如下:
其中,PVM-RUNNING虛擬機運行價格,PDIS=PDIS1+PDIS2+PDIS3,當外網(wǎng)網(wǎng)絡選擇按流量計費時,PNET取值0,外網(wǎng)網(wǎng)絡產(chǎn)生的費用按每個計費時間單位內(nèi)實際產(chǎn)生的流量計算。
進一步的,步驟S3中,所述計費策略為預留租賃時,用戶申請?zhí)摂M機時指定預留租賃時間TRESERVE,虛擬機的租賃費用COSTRESERVE的計算方法為:
其中,α為價格系數(shù),TRESERVE越大,α值越小。
進一步的,步驟S3中,所述計費策略為預留租賃時,若虛擬機運行了TUSED時間后,用戶想要提前申請釋放虛擬機資源,則收取一部分違約金后退還剩余的已繳納費用,需要退回給用戶的費用計算方法為:
其中,β是懲罰系數(shù),TUSED/TRESERVE越小,β值越大。
進一步的,步驟S3中,所述計費策略為按需付費時,虛擬機狀態(tài)包括運行狀態(tài)、停機狀態(tài)或睡眠狀態(tài),虛擬機狀態(tài)改變包括運行狀態(tài)關(guān)機變成停機狀態(tài)、停機狀態(tài)啟動變成運行狀態(tài)、運行狀態(tài)掛起變成睡眠狀態(tài)以及睡眠狀態(tài)恢復變成運行狀態(tài);虛擬機狀態(tài)為運行狀態(tài)時對應的虛擬機價格為PVM-RUNNING,虛擬機狀態(tài)為停機狀態(tài)時對應的虛擬機價格為PVM-SHUTDOWN,虛擬機狀態(tài)為睡眠狀態(tài)時對應的虛擬機價格為PVM-SLEEP,且PVM-SHUTDOWN=a×PVM-RUNNING,PVM-SLEEP=b×PVM-RUNNING,其中,a、b為大于0小于1的常數(shù);當虛擬機在運行過程中用戶監(jiān)控到某個維度的資源利用率過高或者過低時,在線伸展或縮減這個維度的資源,虛擬機某個維度資源縱向縮減后,重新計算得到的虛擬機價格為PVM-SCALEDOWN,虛擬機某個維度資源縱向擴展后,重新計算得到的虛擬機價格為PVM-SCALEUP。
進一步的,步驟S3中,當虛擬機狀態(tài)改變、維度資源伸縮或者經(jīng)過一個最小計費時間單位時,計算所述虛擬機從上一計費時刻到當前時刻的租賃費用,并從賬戶余額扣除;如果賬戶余額不夠支付當前時間單位租賃費用,則強制回收虛擬機;假設當前虛擬機價格為P,如果目前的虛擬機外網(wǎng)網(wǎng)絡按帶寬計費,那么此臺虛擬機租賃費用在原來的基礎上增加P,如果目前的虛擬機外網(wǎng)網(wǎng)絡按流量計費,那么此臺虛擬機租賃費用在原來的基礎上增加P+CNET-FLOW×UNET-FLOW。
本發(fā)明具有以下的有益效果:
根據(jù)用戶的應用程序差異,提供更多配置組合的虛擬機給用戶選擇,可以選擇Linux和Windows兩種鏡像,外網(wǎng)網(wǎng)絡可以選擇按帶寬和流量兩種方法計費。提供了兩種計費策略,包括預留租賃和按需付費。對于采取預留租賃計費策略的虛擬機,根據(jù)預留租賃時間長短對于預留租賃的虛擬機給予一定的價格優(yōu)惠,并對提前釋放的預留租賃虛擬機收取一定的違約懲罰。對于采取按需付費計費策略的虛擬機,使用了更小的最小計費時間單位,對于小型計算任務來說可以節(jié)約租賃費用,并避免浪費資源。同時,在運行過程中用戶可以單獨地伸縮某個維度的資源數(shù)量,用最合適的資源量來保證虛擬機上應用程序服務質(zhì)量;用戶還可以修改虛擬機的狀態(tài),對于停機狀態(tài)和睡眠狀態(tài)的虛擬機制定更低的價格。
本發(fā)明的計費方法,通過制定差異化的計費策略,能使虛擬機資源租賃計費方法更加靈活,用戶可以使用最合理的資源量來保證應用程序服務質(zhì)量,同時保證廠商的合理利潤。
附圖說明
圖1為虛擬機生命周期示意圖。
具體實施方式
為了進一步理解本發(fā)明,下面結(jié)合實施例對本發(fā)明優(yōu)選實施方案進行描述,但是應當理解,這些描述只是為進一步說明本發(fā)明的特征和優(yōu)點,而不是對本發(fā)明權(quán)利要求的限制。
本發(fā)明提供了一種云基礎設施服務的計費方法,包括以下步驟:
S1云基礎設施服務平臺指定虛擬機鏡像類型、資源計費維度、資源計費粒度、最小計費時間單位和資源粒度價格,并構(gòu)造資源總量價格模型;
S2云基礎設施服務平臺接收用戶的虛擬機申請后加入到虛擬機信息表,計算虛擬機運行價格;
S3計費引擎獲取用戶申請的虛擬機的配置信息,從計費策略池選取對應的計費策略對用戶虛擬機進行計費,計費策略包括預留租賃和按需付費兩種。
下面結(jié)合附圖1,通過具體實施例對本發(fā)明作進一步的詳細描述。
實施例
一種云基礎設施服務的計費方法,包括以下具體步驟:
1)、虛擬機類型包括Windows鏡像和Linux鏡像兩種,資源計費維度包括CPU(計費粒度為核數(shù))、內(nèi)存(計費粒度為GB)、云硬盤(包括SATA存儲/SAS存儲/SSD存儲三種類型,計費粒度都為GB)、外網(wǎng)網(wǎng)絡(外網(wǎng)帶寬和外網(wǎng)流量的計費粒度都為MB)。
2)、最小計費時間單位UTIME=1小時,1核CPU的資源粒度價格為UCPU=1,1GB內(nèi)存的資源粒度價格為UMEM=1,1GB云硬盤的資源粒度價格為UDIS-1=0.1、UDIS-2=0.2和UDIS-3=0.3(1/2/3分別對應SATA存儲/SAS存儲/SSD存儲三種類型),1MB外網(wǎng)帶寬的資源粒度價格為UNET-BANDWIDTH=1,1MB外網(wǎng)流量的資源粒度價格為UNET-FLOW=0.01,CPU、內(nèi)存、硬盤和外網(wǎng)網(wǎng)絡的價格增長模型都為P=C×U。
3)、某一時刻接受到用戶兩臺虛擬機申請。虛擬機信息分別為:VM1是Windows鏡像,包括2個核CPU、4GB容量內(nèi)存、40GB容量SATA云硬盤和4MB帶寬的外網(wǎng)網(wǎng)絡,預留了48小時的租賃時間;VM2是Linux鏡像,包括1個核CPU、2GB容量內(nèi)存、80GB容量SAS云硬盤,外網(wǎng)網(wǎng)絡按照流量計費,并且采取按需付費的形式租賃。我們?nèi)ˇ耍?.2時,計算得到PVM1-RUNNING=14,PVM2-RUNNING=19。
4)VM1為預留租賃的虛擬機,預留租賃時長TRESERVE=48小時,我們計算它在預留租賃時間里的租賃費用為COSTRESERVE=537.6,價格優(yōu)惠系數(shù)取值0.8。
5)當虛擬機VM1運行了24小時后想要提前申請釋放虛擬機資源,需要退回給用戶的費用為COSTREPAY=134.4,違約懲罰系數(shù)取值1.2。
6)VM2的虛擬機運行價格為PVM2-RUNNING=14、虛擬機睡眠價格為PVM-SLEEP=2.8(b取值0.2),以及虛擬機停機價格PVM-SHUTDOWN=1.4(b取值0.1),運行過程中虛擬機和配置變化過程如下:
a.第一小時內(nèi),虛擬機處于運行狀態(tài),價格為14,外網(wǎng)流量為500MB,那么第一個小時的費用為19;
b.第二小時內(nèi),虛擬機處于睡眠狀態(tài),價格為2.8,外網(wǎng)流量為0,那么第二小時的費用為2.8;
c.第三小時內(nèi),虛擬機處于運行狀態(tài),價格為14,外網(wǎng)流量為200MB,那么第三個小時的費用為16;
d.第四小時內(nèi),虛擬機處于停機狀態(tài),價格為1.4,外網(wǎng)流量為0,那么第四小時的費用為1.4;
e.第五小時內(nèi),虛擬機處于運行狀態(tài),虛擬機CPU參數(shù)由1核改為2核,價格為15,外網(wǎng)流量為400MB,那么第五小時的費用為19;
f.第五小時內(nèi),虛擬機處于運行狀態(tài),虛擬機CPU參數(shù)由2核改為1核,價格為14,外網(wǎng)流量為300MB,那么第五小時的費用為17;
g.用戶釋放虛擬機,系統(tǒng)回收虛擬機資源,虛擬機的總租賃費用為75.2。
以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應當指出,對于本技術(shù)領域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進行若干改進和修飾,這些改進和修飾也落入本發(fā)明權(quán)利要求的保護范圍內(nèi)。