一種通過可重用的工作負載模式支持動態云服務的交付方法
【技術領域】
[0001]本發明涉及云服務交付平臺中的資源迀移領域,具體為一種通過可重用的工作負載模式支持動態云服務的交付方法。
【背景技術】
[0002]隨著云計算的發展及應用軟件的成熟,軟件即服務作為云服務的一種應用形式,越來越受到重視,已逐漸成為中小企業應用先進技術的重要途徑。云服務應用交付平臺推動了該模式的蓬勃發展,越來越多的個人或機構通過云服務平臺租賃各種形式的應用,這些應用正在覆蓋人們生活的各個領域,通過應用及應用之間的協同工作,完成搜索、事物管理以及分析等。
[0003]目前,成熟的云服務提供商采用一對多的軟件交付模式,成千上萬的用戶共享一個應用,業務數據存儲在服務提供商的共享數據庫中,最終用戶感受不到所使用的實例在同一時間也為其它客戶所共享。支持用戶定制的多用戶共享存儲架構,實現了從操作系統到數據結構等各個級別的資源共享,充分利用了硬件、數據庫等資源。隨著云服務交付平臺用戶數目及信息數據量呈幾何曲線性增長,云服務交付平臺面對的情況也越來越復雜,數據中心規模日益龐大,動態分配以及管理虛擬和物理資源成為數據中心面臨的新挑戰,并且數據中心普遍存在著資源利用率偏低、物理機工作負載不均衡以及數據中心負載不均衡的問題。
【發明內容】
[0004]為解決上述所遇到的問題,所本發明提出一種通過可重用的工作負載模式支持動態云服務的交付方法,當云數據中心在運行的過程中,采用動態工作負載均衡算法通過迀移已釋放的虛擬機資源,達到可重用的動態的平衡工作負載,進行云服務的交付。云服務交付平臺管理用戶的描述信息、業務數據及事務等,在進行數據物理放置的時候,根據租戶標識,保證租戶數據進入自己的數據空間,而一旦一個租戶的描述信息和業務數據因為當前的空間容量原因無法存放更多的信息,或者因為操作路徑發生變化,啟動可重用的數據迀移機制,保證系統的正常運行,數據迀移后,要及時通知到云平臺數據引擎,以保證數據節點的協同工作需求。
[0005]更進一步的該可重用的工作負載模式主要由監聽模塊、運行模塊、凍結模塊以及目標域喚醒模塊這四大功能模塊共同協作完成。
[0006]所述的監聽模塊中,封裝虛擬機迀移調度策略,實現迀移觸發、確定待迀虛擬機及目標主機等功能。
[0007]所述的運行模塊中,首先對內存迀移算法進行優化,并封裝磁盤迀移模塊,實現內存分層迀移和磁盤數據迀移。
[0008]所述的迀移算法池中增加基于可重用的工作負載迀移調度算法、內存分層算法、寫時重定向算法及數據壓縮算法等,供迀移模塊調用,完成虛擬機迀移。
[0009]更進一步的在可重用的工作負載模式動態迀移前,根據應用之間的依賴關系,按照入度大小、入邊權重之和進行拓撲排序,設置迀移優先級及待迀移標志。迀移算法根據迀移優先級進行順序迀移,盡量保證依賴比較多的應用首先被迀移,以防止租戶請求時無法響應。
[0010]更進一步的在可重用的工作負載模式動態迀移時,按優先級順序迀移,迀移時候采用兩階段提交策略,保證源數據節點與目標數據節點數據一致性,對于完成迀移的數據置迀移成功標志。數據引擎服務:根據訪問請求類型,分別進行處理。對于查詢型請求,可直接基于源數據節點返回結果;對于更新型請求,首先判斷能否同時在源數據節點和目標數據節點進行操作,如果可以的話,采用兩階段提交策略完成同步操作,否則,不響應請求,返回失敗信息。
[0011]更進一步的在可重用的工作負載模式動態迀移后,通知數據引擎服務,切換該租戶的當前數據節點信息。在切換期間,數據引擎服務不響應該租戶的請求。
[0012]本申請實施例中提供的一個或多個技術方案,至少具有如下技術效果或優點:本發明采用動態工作負載均衡算法通過迀移已釋放的虛擬機資源,達到可重用的動態的平衡工作負載,進行云服務的交付。實現了基于工作負載模式的動態迀移,充分利用云數據中心中的多維資源。
【附圖說明】
[0013]下面結合附圖和【具體實施方式】對本發明作進一步詳細的說明。
[0014]圖1為本發明的結構示意圖。
[0015]圖2基于工作負載模式的動態迀移流程圖。
【具體實施方式】
[0016]下面結合附圖和實施例對本發明作進一步說明,為了充分利用云數據中心中的多維資源,該方法合理地整合到各臺物理機上在云數據中心中,虛擬機是有生命周期的,當虛擬機在租用時間到期后,為了節省資源,需要將虛擬機重新進行分配,以達到可重用的目的,每臺物理機上的資源利用是動態變化的。將高負載物理機上的虛擬機迀移到其他低負載的物理機上,其迀移過程如下。
[0017]虛擬機動態迀移的具體過程包括迀移的發起、數據及各個狀態的迀移、迀移完成和虛擬機在目標服務器上的激活等幾個步驟。
[0018]第一步,資源預留:在迀移觸發前,虛擬機在主機A上運行,VMM監控虛擬機的運行狀態。當虛擬機的計算或存儲資源利用率過高,就會觸發迀移請求。VMM根據迀移調度算法確定待迀虛擬機并在服務器集群中選定資源較豐富的主機B為目標服務器,并在主機B上預留資源。
[0019]第二步,預迀移:上一步工作完成后,發起迀移。虛擬機在主機A上保持運行,先進行其內存和磁盤原始數據的迀移。
[0020]第三步,循環迀移:在第一輪預迀移及后續的每輪循環迀移過程中,都會產生新的數據需要在下一輪循環中進行迀移。在滿足預先設定的循環終止條件時,停止迀移,進入停機階段。
[0021]第四步,迀移完成:預迀移結束后,將最后一輪循環迀移過程中產生的數據以及虛擬機的CPU、I/O及網絡等狀態迀移至主機B。
[0022]第五步,提交:停機迀移完成,主機A和主機B上的虛擬機狀態同步后,在主機A上關閉虛擬機,釋放其所占用的資源。
[0023]第六步,激活:虛擬機迀移至主機B后被激活并關聯所有的設備驅動程序。虛擬機恢復運行,繼續提供服務。這種方法能夠保證在集群內至少一臺主機上存有被迀虛擬機的完整映像。如果出現迀移失敗,被迀虛擬機將會在源主機重新激活,重新評估后再進行迀移,保證了系統的穩定性。
[0024]上述實施例,僅為對本發明的目的、技術方案和有益效果進一步詳細說明的具體個例,本發明并非限定于此。凡在本發明的公開的范圍之內所做的任何修改、等同替換、改進等,均包含在本發明的保護范圍之內。
【主權項】
1.一種通過可重用的工作負載模式支持動態云服務的交付方法,其特征在于,當云數據中心在運行的過程中,采用動態工作負載均衡算法通過迀移已釋放的虛擬機資源,達到可重用的動態的平衡工作負載,進行云服務的交付。2.—種通過可重用的工作負載模式支持動態云服務的交付方法,其特征在于,云服務交付平臺管理用戶的描述信息、業務數據及事務等,一旦一個租戶的描述信息和業務數據因為當前的空間容量原因無法存放更多的信息,或者因為操作路徑發生變化,啟動可重用的數據迀移機制。3.根據權利要求1、2所述的方法,其特征在于該可重用的工作負載模式主要由監聽模塊、運行模塊、凍結模塊以及目標域喚醒模塊這四大功能模塊共同協作完成。4.根據權利要求1、2所述的方法,其特征在于在可重用的工作負載模式動態迀移前,根據應用之間的依賴關系,按照入度大小、入邊權重之和進行拓撲排序,設置迀移優先級及待迀移標志。5.根據權利要求1、2所述的方法,其特征在于在可重用的工作負載模式動態迀移時,按優先級順序迀移,迀移時候采用兩階段提交策略,保證源數據節點與目標數據節點數據一致性,對于完成迀移的數據置迀移成功標志。6.根據權利1、2要求所述的方法,其特征在于在可重用的工作負載模式動態迀移后,通知數據引擎服務,切換該租戶的當前數據節點信息。7.根據權利6所述的方法,其特征在于在切換期間,數據引擎服務不響應該租戶的請求。
【專利摘要】本發明公開了一種通過可重用的工作負載模式支持動態云服務的交付方法,當云數據中心在運行的過程中,采用動態工作負載均衡算法通過遷移已釋放的虛擬機資源,達到可重用的動態的平衡工作負載,進行云服務的交付。云服務交付平臺管理用戶的描述信息、業務數據及事務等,在進行數據物理放置的時候,根據租戶標識,保證租戶數據進入自己的數據空間,而一旦一個租戶的描述信息和業務數據因為當前的空間容量原因無法存放更多的信息,或者因為操作路徑發生變化,啟動可重用的數據遷移機制,保證系統的正常運行,數據遷移后,要及時通知到云平臺數據引擎,以保證數據節點的協同工作需求。
【IPC分類】G06F9/48, H04L29/08
【公開號】CN105468449
【申請號】CN201510961348
【發明人】杜建民, 高靜
【申請人】內蒙古農業大學
【公開日】2016年4月6日
【申請日】2015年12月22日