本發(fā)明關(guān)于容災(zāi)技術(shù)領(lǐng)域,特別是關(guān)于災(zāi)備中心的資源調(diào)度技術(shù),具體的講是一種基于災(zāi)備中心的云平臺(tái)資源配置方法及系統(tǒng)。
背景技術(shù):
本部分旨在為權(quán)利要求書中陳述的本發(fā)明的實(shí)施方式提供背景或上下文。此處的描述不因?yàn)榘ㄔ诒静糠种芯统姓J(rèn)是現(xiàn)有技術(shù)。
隨著業(yè)務(wù)的發(fā)展,災(zāi)備中心部署了越來越多的業(yè)務(wù)系統(tǒng),其中包括了雙活、主輔等架構(gòu)的核心生產(chǎn)系統(tǒng),還包括熱備、溫備、冷備架構(gòu)的多種災(zāi)備模式的大量業(yè)務(wù)系統(tǒng),用于保障生產(chǎn)系統(tǒng)的安全穩(wěn)定運(yùn)行,且大部分業(yè)務(wù)系統(tǒng)將逐步遷移至云平臺(tái)中。目前,云平臺(tái)物理機(jī)集群中平均每臺(tái)物理機(jī)上都有較多虛擬機(jī)運(yùn)行,在業(yè)務(wù)高峰時(shí)容易出現(xiàn)某一臺(tái)物理機(jī)負(fù)載過高而同集群中其他物理機(jī)負(fù)載低,也即物理機(jī)資源使用率的不均衡,從而影響業(yè)務(wù)運(yùn)行效率并造成資源浪費(fèi)。
目前,物理機(jī)監(jiān)控一般使用Patrol監(jiān)控,但patrol監(jiān)控與云平臺(tái)為相互獨(dú)立的平臺(tái),無通用接口,無法將物理機(jī)的負(fù)載與云平臺(tái)的熱遷移等高級(jí)特性結(jié)合起來。
因此,如何研究和開發(fā)出一種新的方案以針對(duì)不同的災(zāi)備模式對(duì)云平臺(tái)資源進(jìn)行配置是本領(lǐng)域亟待解決的技術(shù)難題。
技術(shù)實(shí)現(xiàn)要素:
為了克服現(xiàn)有技術(shù)存在的上述技術(shù)問題,本發(fā)明提供了一種基于災(zāi)備中心的云平臺(tái)資源配置方法以及系統(tǒng),通過獲取云平臺(tái)上災(zāi)備中心部署的各個(gè)業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的服務(wù)器的負(fù)載數(shù)據(jù),并從生產(chǎn)環(huán)境中獲取業(yè)務(wù)運(yùn)行數(shù)據(jù),引入預(yù)設(shè)的災(zāi)容模式等級(jí)進(jìn)行分類,并結(jié)合預(yù)設(shè)的策略配置表進(jìn)行資源配置,實(shí)現(xiàn)了針對(duì)不同的災(zāi)容模式對(duì)應(yīng)不同的策略對(duì)虛擬機(jī)、物理機(jī)進(jìn)行遷移,達(dá)到節(jié)約資源、節(jié)約能耗的效果。
為了實(shí)現(xiàn)上述目的,本發(fā)明提供一種基于災(zāi)備中心的云平臺(tái)資源配置方法,所述方法包括:采集云平臺(tái)上災(zāi)備中心部署的各個(gè)業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的服務(wù)器的負(fù)載數(shù)據(jù);從生產(chǎn)環(huán)境中采集業(yè)務(wù)運(yùn)行數(shù)據(jù);將所述負(fù)載數(shù)據(jù)以及業(yè)務(wù)運(yùn)行數(shù)據(jù)根據(jù)預(yù)設(shè)的容災(zāi)模式等級(jí)進(jìn)行分類,得到不同容災(zāi)模式下各個(gè)業(yè)務(wù)系統(tǒng)的負(fù)載情況數(shù)據(jù);根據(jù)預(yù)設(shè)的策略配置表以及負(fù)載情況數(shù)據(jù)對(duì)所述云平臺(tái)進(jìn)行資源配置。
在本發(fā)明的優(yōu)選實(shí)施方式中,采用腳本采集服務(wù)器的負(fù)載數(shù)據(jù),所述服務(wù)器包括虛擬機(jī)以及物理機(jī)。
在本發(fā)明的優(yōu)選實(shí)施方式中,所述負(fù)載數(shù)據(jù)包括CPU使用率、內(nèi)存使用率以及存儲(chǔ)容量使用率,所述業(yè)務(wù)運(yùn)行數(shù)據(jù)包括交易量日均值以及交易量日峰值。
在本發(fā)明的優(yōu)選實(shí)施方式中,所述容災(zāi)模式包括雙活容災(zāi)模式、主輔容災(zāi)模式、溫備容災(zāi)模式以及冷備容災(zāi)模式。
在本發(fā)明的優(yōu)選實(shí)施方式中,當(dāng)所述業(yè)務(wù)系統(tǒng)為雙活容災(zāi)模式或主輔容災(zāi)模式時(shí),根據(jù)策略配置表以及負(fù)載情況數(shù)據(jù)對(duì)所述云平臺(tái)進(jìn)行資源配置包括:從所述生產(chǎn)環(huán)境中采集預(yù)測(cè)信息;根據(jù)預(yù)測(cè)信息以及所述策略配置表確定所述業(yè)務(wù)系統(tǒng)的優(yōu)化策略;根據(jù)所述優(yōu)化策略以及負(fù)載情況數(shù)據(jù)對(duì)所述業(yè)務(wù)系統(tǒng)進(jìn)行資源配置。
在本發(fā)明的優(yōu)選實(shí)施方式中,當(dāng)所述業(yè)務(wù)系統(tǒng)為溫備容災(zāi)模式或冷備容災(zāi)模式時(shí),根據(jù)策略配置表以及負(fù)載情況數(shù)據(jù)對(duì)所述云平臺(tái)進(jìn)行資源配置包括根據(jù)策略配置表確定所述業(yè)務(wù)系統(tǒng)的優(yōu)化策略;根據(jù)所述優(yōu)化策略以及負(fù)載情況數(shù)據(jù)對(duì)所述業(yè)務(wù)系統(tǒng)進(jìn)行資源配置。
在本發(fā)明的優(yōu)選實(shí)施方式中,根據(jù)所述優(yōu)化策略以及負(fù)載情況數(shù)據(jù)對(duì)所述業(yè)務(wù)系統(tǒng)進(jìn)行資源配置包括從所述優(yōu)化策略中獲取設(shè)定信息;
當(dāng)所述業(yè)務(wù)系統(tǒng)的資源配置不滿足所述設(shè)定信息時(shí),根據(jù)所述業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的物理機(jī)的名稱從預(yù)設(shè)數(shù)據(jù)庫中讀取所述物理機(jī)對(duì)應(yīng)的虛擬機(jī);從所述負(fù)載情況數(shù)據(jù)中獲取所述虛擬機(jī)的CPU使用率除以及內(nèi)存使用率;根據(jù)所述CPU使用率除以及內(nèi)存使用率確定出所述虛擬機(jī)的系數(shù);根據(jù)所述虛擬機(jī)的系數(shù)以及所述優(yōu)化策略選取待遷移的虛擬機(jī);根據(jù)待遷移的虛擬機(jī)選取待遷移的物理機(jī);遷移所述待遷移的物理機(jī)以及待遷移的虛擬機(jī)進(jìn)行,以使遷移后的所述業(yè)務(wù)系統(tǒng)滿足所述設(shè)定信息。
本發(fā)明的目的之一是,提供了一種基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng),所述的系統(tǒng)包括負(fù)載數(shù)據(jù)采集裝置,用于采集云平臺(tái)上災(zāi)備中心部署的各個(gè)業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的服務(wù)器的負(fù)載數(shù)據(jù);運(yùn)行數(shù)據(jù)采集裝置,用于從生產(chǎn)環(huán)境中采集業(yè)務(wù)運(yùn)行數(shù)據(jù);數(shù)據(jù)分類裝置,用于將所述負(fù)載數(shù)據(jù)以及業(yè)務(wù)運(yùn)行數(shù)據(jù)根據(jù)預(yù)設(shè)的容災(zāi)模式等級(jí)進(jìn)行分類,得到不同容災(zāi)模式下各個(gè)業(yè)務(wù)系統(tǒng)的負(fù)載情況數(shù)據(jù);資源配置裝置,用于根據(jù)預(yù)設(shè)的策略配置表以及負(fù)載情況數(shù)據(jù)對(duì)所述云平臺(tái)進(jìn)行資源配置。
在本發(fā)明的優(yōu)選實(shí)施方式中,當(dāng)所述業(yè)務(wù)系統(tǒng)為溫備容災(zāi)模式或冷備容災(zāi)模式時(shí),所述資源配置裝置包括第一優(yōu)化策略確定模塊,用于根據(jù)策略配置表確定所述業(yè)務(wù)系統(tǒng)的優(yōu)化策略;資源配置模塊,用于根據(jù)所述優(yōu)化策略以及負(fù)載情況數(shù)據(jù)對(duì)所述業(yè)務(wù)系統(tǒng)進(jìn)行資源配置。
在本發(fā)明的優(yōu)選實(shí)施方式中,當(dāng)所述業(yè)務(wù)系統(tǒng)為雙活容災(zāi)模式或主輔容災(zāi)模式時(shí),所述資源配置裝置還包括預(yù)測(cè)信息采集模塊,用于從所述生產(chǎn)環(huán)境中采集預(yù)測(cè)信息;
第二優(yōu)化策略確定模塊,用于根據(jù)預(yù)測(cè)信息以及所述策略配置表確定所述業(yè)務(wù)系統(tǒng)的優(yōu)化策。
在本發(fā)明的優(yōu)選實(shí)施方式中,所述資源配置模塊包括獲取單元,用于從所述優(yōu)化策略中獲取設(shè)定信息;
讀取單元,用于當(dāng)所述業(yè)務(wù)系統(tǒng)的資源配置不滿足所述設(shè)定信息時(shí),根據(jù)所述業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的物理機(jī)的名稱從預(yù)設(shè)數(shù)據(jù)庫中讀取所述物理機(jī)對(duì)應(yīng)的虛擬機(jī);使用率獲取單元,用于從所述負(fù)載情況數(shù)據(jù)中獲取所述虛擬機(jī)的CPU使用率除以及內(nèi)存使用率;系數(shù)確定單元,用于根據(jù)所述CPU使用率除以及內(nèi)存使用率確定出所述虛擬機(jī)的系數(shù);第一確定單元,用于根據(jù)所述虛擬機(jī)的系數(shù)以及所述優(yōu)化策略選取待遷移的虛擬機(jī);第二確定單元,用于根據(jù)待遷移的虛擬機(jī)選取待遷移的物理機(jī);遷移單元,用于遷移所述待遷移的物理機(jī)以及待遷移的虛擬機(jī),以使遷移后的所述業(yè)務(wù)系統(tǒng)滿足所述設(shè)定信息。
本發(fā)明的有益效果在于,提供了一種基于災(zāi)備中心的云平臺(tái)資源配置方法以及系統(tǒng),通過獲取云平臺(tái)上災(zāi)備中心部署的各個(gè)業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的服務(wù)器的負(fù)載數(shù)據(jù),并從生產(chǎn)環(huán)境中獲取業(yè)務(wù)運(yùn)行數(shù)據(jù),引入預(yù)設(shè)的災(zāi)容模式等級(jí)進(jìn)行分類,并結(jié)合預(yù)設(shè)的策略配置表進(jìn)行資源配置,實(shí)現(xiàn)了針對(duì)不同的災(zāi)容模式對(duì)應(yīng)不同的策略對(duì)虛擬機(jī)、物理機(jī)進(jìn)行遷移,達(dá)到節(jié)約資源、節(jié)約能耗的效果。
為讓本發(fā)明的上述和其他目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施例,并配合所附圖式,作詳細(xì)說明如下。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例提供的一種基于災(zāi)備中心的云平臺(tái)資源配置方法的流程圖;
圖2為圖1中的步驟S104的實(shí)施方式一的流程圖;
圖3為圖1中的步驟S104的實(shí)施方式二的流程圖;
圖4為圖2中的步驟S303的流程圖;
圖5為本發(fā)明實(shí)施例提供的一種基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng)的結(jié)構(gòu)框圖;
圖6為本發(fā)明實(shí)施例提供的一種基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng)中資源配置裝置的實(shí)施方式一的結(jié)構(gòu)框圖;
圖7為本發(fā)明實(shí)施例提供的一種基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng)中資源配置裝置的實(shí)施方式二的結(jié)構(gòu)框圖;
圖8為本發(fā)明實(shí)施例提供的一種基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng)中資源配置模塊的結(jié)構(gòu)框圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本領(lǐng)域技術(shù)技術(shù)人員知道,本發(fā)明的實(shí)施方式可以實(shí)現(xiàn)為一種系統(tǒng)、裝置、設(shè)備、方法或計(jì)算機(jī)程序產(chǎn)品。因此,本公開可以具體實(shí)現(xiàn)為以下形式,即:完全的硬件、完全的軟件(包括固件、駐留軟件、微代碼等),或者硬件和軟件結(jié)合的形式。
下面參考本發(fā)明的若干代表性實(shí)施方式,詳細(xì)闡釋本發(fā)明的原理和精神。
目前使用的云平臺(tái)管理工具中,可監(jiān)控各虛擬機(jī)的分布情況,對(duì)物理機(jī)資源使用情況監(jiān)控功能暫時(shí)沒有,物理機(jī)監(jiān)控使用Patrol商用產(chǎn)品監(jiān)控,但patrol監(jiān)控與云資源管理平臺(tái)為相互獨(dú)立的平臺(tái),無通用接口,無法將物理機(jī)的負(fù)載與云平臺(tái)的熱遷移等高級(jí)特性結(jié)合起來。
目前云平臺(tái)管理工具的虛擬機(jī)遷移等功能,針對(duì)的場(chǎng)景是物理機(jī)故障的高可用遷移,該功能是普適云計(jì)算平臺(tái)最基本的高可用特性,要實(shí)現(xiàn)適用于災(zāi)備中心業(yè)務(wù)特點(diǎn)的自動(dòng)化資源優(yōu)化,須向云平臺(tái)引入數(shù)據(jù)采集、數(shù)據(jù)分析、過程控制、優(yōu)化、決策等功能。
本發(fā)明針對(duì)上述技術(shù)問題,提出了一種基于災(zāi)備中心的云平臺(tái)資源配置方法以及系統(tǒng)。
圖1為本發(fā)明提出的一種基于災(zāi)備中心的云平臺(tái)資源配置方法的具體流程圖,請(qǐng)參閱圖1,所述的方法包括:
S101:采集云平臺(tái)上災(zāi)備中心部署的各個(gè)業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的服務(wù)器的負(fù)載數(shù)據(jù)。
在具體的實(shí)施例中,可通過腳本等方式采集服務(wù)器的負(fù)載數(shù)據(jù),所述服務(wù)器包括虛擬機(jī)以及物理機(jī),所述負(fù)載數(shù)據(jù)包括CPU使用率、內(nèi)存使用率以及存儲(chǔ)容量使用率。
S102:從生產(chǎn)環(huán)境中采集業(yè)務(wù)運(yùn)行數(shù)據(jù)。在本發(fā)明中,所提及的生產(chǎn)環(huán)境是指在典型的金融系統(tǒng)中,用于處理實(shí)際金融交易信息的IT系統(tǒng)環(huán)境。在具體的實(shí)施方式中,所述業(yè)務(wù)運(yùn)行數(shù)據(jù)包括交易量日均值以及交易量日峰值。即步驟S102打通了災(zāi)備中心與生產(chǎn)中心的交易監(jiān)控接口
S103:將所述負(fù)載數(shù)據(jù)以及業(yè)務(wù)運(yùn)行數(shù)據(jù)根據(jù)預(yù)設(shè)的容災(zāi)模式等級(jí)進(jìn)行分類,得到不同容災(zāi)模式下各個(gè)業(yè)務(wù)系統(tǒng)的負(fù)載情況數(shù)據(jù)。在具體的實(shí)施方式中,預(yù)設(shè)的容災(zāi)模式等級(jí)中包括雙活容災(zāi)模式、主輔容災(zāi)模式、溫備容災(zāi)模式以及冷備容災(zāi)模式。容災(zāi)模式等級(jí)可配置,對(duì)負(fù)載數(shù)據(jù)以及業(yè)務(wù)運(yùn)行數(shù)據(jù)進(jìn)行分類,形成以業(yè)務(wù)系統(tǒng)為維度的負(fù)載情況數(shù)據(jù),以供后續(xù)步驟進(jìn)行決策。
S104:根據(jù)預(yù)設(shè)的策略配置表以及負(fù)載情況數(shù)據(jù)對(duì)所述云平臺(tái)進(jìn)行資源配置。
圖2為步驟S104的實(shí)施方式一的流程圖,請(qǐng)參閱圖2,在實(shí)施方式一中,當(dāng)所述業(yè)務(wù)系統(tǒng)為溫備容災(zāi)模式或冷備容災(zāi)模式時(shí),步驟S104包括:
S201:根據(jù)策略配置表確定所述業(yè)務(wù)系統(tǒng)的優(yōu)化策略;
S202:根據(jù)所述優(yōu)化策略以及負(fù)載情況數(shù)據(jù)對(duì)所述業(yè)務(wù)系統(tǒng)進(jìn)行資源配置。
在實(shí)施方式一中,策略配置表如表1所示,其示出了當(dāng)所述業(yè)務(wù)系統(tǒng)為溫備容災(zāi)模式或冷備容災(zāi)模式時(shí),工作日、周末以及節(jié)日三種情景下分別對(duì)應(yīng)的優(yōu)化策略。以溫備容災(zāi)模式為例,則其工作日對(duì)應(yīng)的優(yōu)化策略為“歷史峰值均值,以前一周峰值作為參考”,即在該種情形下,以前一周的歷史峰值的均值作為參考。
表1
圖3為步驟S104的實(shí)施方式二的流程圖,請(qǐng)參閱圖3,在實(shí)施方式二中,當(dāng)所述業(yè)務(wù)系統(tǒng)為雙活容災(zāi)模式或主輔容災(zāi)模式時(shí),步驟S104包括:
S301:從所述生產(chǎn)環(huán)境中采集預(yù)測(cè)信息,此處的預(yù)測(cè)信息來源于生產(chǎn)環(huán)境的預(yù)測(cè)平臺(tái),通常輸入為指定的未來某個(gè)時(shí)間段,輸出為預(yù)測(cè)的該時(shí)間段的業(yè)務(wù)量峰值,在這兩種模式下獲取預(yù)測(cè)信息的意義在于既可以保證歷史峰值業(yè)務(wù)量的處理能力,也保證預(yù)測(cè)平臺(tái)預(yù)測(cè)的峰值業(yè)務(wù)量的處理能力。
S302:根據(jù)策略配置表確定所述業(yè)務(wù)系統(tǒng)的優(yōu)化策略;
S303:根據(jù)所述優(yōu)化策略以及負(fù)載情況數(shù)據(jù)對(duì)所述業(yè)務(wù)系統(tǒng)進(jìn)行資源配置。
在實(shí)施方式二中,策略配置表如表2所示,其示出了當(dāng)所述業(yè)務(wù)系統(tǒng)為雙活容災(zāi)模式或主輔容災(zāi)模式時(shí),工作日、周末以及節(jié)日三種情景下分別對(duì)應(yīng)的優(yōu)化策略。以雙活容災(zāi)模式為例,則其工作日對(duì)應(yīng)的優(yōu)化策略為“雙中心歷史峰值之和,以前一月峰值作為參”,即在該種情形下,以雙中心的前一月的歷史峰值的和作為參考,此處的雙中心指的是北京中心以及上海中心。
表2
圖4為步驟S202、S303的流程圖,請(qǐng)參閱圖4,根據(jù)所述優(yōu)化策略以及負(fù)載情況數(shù)據(jù)對(duì)所述業(yè)務(wù)系統(tǒng)進(jìn)行資源配置包括:
S401:從所述優(yōu)化策略中獲取設(shè)定信息。以雙活容災(zāi)模式為例,步驟S303確定出其工作日對(duì)應(yīng)的優(yōu)化策略為“雙中心歷史峰值之和,以前一月峰值作為參”,即在該種情形下,以雙中心的前一月的歷史峰值的和作為參考。舉例而言,若上海中心前一月的歷史峰值為1500tps(即每秒鐘1500筆交易),北京中心前一月的歷史峰值為1000tps,則雙活容災(zāi)模式下工作日對(duì)應(yīng)的優(yōu)化策略確定出的設(shè)定信息為2500tps。
S402:當(dāng)所述業(yè)務(wù)系統(tǒng)的資源配置不滿足所述設(shè)定信息時(shí),根據(jù)所述業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的物理機(jī)的名稱從預(yù)設(shè)數(shù)據(jù)庫中讀取所述物理機(jī)對(duì)應(yīng)的虛擬機(jī),若已滿足設(shè)定信息,則無需對(duì)資源進(jìn)行調(diào)整。此處提及的資源配置是指虛擬機(jī)CPU、內(nèi)存的計(jì)算能力。
S403:從所述負(fù)載情況數(shù)據(jù)中獲取所述虛擬機(jī)的CPU使用率除以及內(nèi)存使用率;
S404:根據(jù)所述CPU使用率除以及內(nèi)存使用率確定出所述虛擬機(jī)的系數(shù),在具體的實(shí)施方式中,用虛擬機(jī)的CPU使用率除以內(nèi)存使用率,計(jì)算出系數(shù)。在本發(fā)明中之所以采用此系數(shù)是因?yàn)镃PU使用率高直接影響到物理機(jī)的負(fù)載,而內(nèi)存大小則會(huì)影響遷移時(shí)間。系數(shù)值大則表示使用率高或者使用內(nèi)存低,遷移后對(duì)物理機(jī)負(fù)載影響明顯。
S405:根據(jù)所述虛擬機(jī)的系數(shù)以及所述優(yōu)化策略選取待遷移的虛擬機(jī);
S406:根據(jù)待遷移的虛擬機(jī)選取待遷移的物理機(jī)。
S407:遷移所述待遷移的物理機(jī)以及待遷移的虛擬機(jī)進(jìn)行,以使遷移后的所述業(yè)務(wù)系統(tǒng)的資源配置滿足所述設(shè)定信息。
在具體的實(shí)施方式中,也可以選取好待遷移虛擬機(jī)后選擇適合遷移的物理機(jī),然后計(jì)算遷移后資源配置能否滿足設(shè)定信息,若不符合條件則再次進(jìn)行選擇。條件滿足則執(zhí)行遷移操作。
如上即是本發(fā)明提供的一種基于災(zāi)備中心的云平臺(tái)資源配置方法,獲取云平臺(tái)上災(zāi)備中心部署的各個(gè)業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的服務(wù)器的負(fù)載數(shù)據(jù),并從生產(chǎn)環(huán)境中獲取業(yè)務(wù)運(yùn)行數(shù)據(jù),引入預(yù)設(shè)的災(zāi)容模式等級(jí)進(jìn)行分類,并結(jié)合預(yù)設(shè)的策略配置表進(jìn)行資源配置,實(shí)現(xiàn)了針對(duì)不同的容災(zāi)模式自動(dòng)觸發(fā)不同的策略對(duì)虛擬機(jī)進(jìn)行遷移,如業(yè)務(wù)低谷時(shí)將虛擬機(jī)遷移至少數(shù)物理機(jī)并關(guān)閉其他物理機(jī)以達(dá)到節(jié)約資源、節(jié)約能耗的效果。
應(yīng)當(dāng)注意,盡管在附圖中以特定順序描述了本發(fā)明方法的操作,但是,這并非要求或者暗示必須按照該特定順序來執(zhí)行這些操作,或是必須執(zhí)行全部所示的操作才能實(shí)現(xiàn)期望的結(jié)果。附加地或備選地,可以省略某些步驟,將多個(gè)步驟合并為一個(gè)步驟執(zhí)行,和/或?qū)⒁粋€(gè)步驟分解為多個(gè)步驟執(zhí)行。
在介紹了本發(fā)明示例性實(shí)施方式的方法之后,接下來,參考圖5對(duì)本發(fā)明示例性實(shí)施方式的云平臺(tái)資源配置系統(tǒng)進(jìn)行介紹。該系統(tǒng)的實(shí)施可以參見上述方法的實(shí)施,重復(fù)之處不再贅述。以下所使用的術(shù)語“模塊”和“單元”,可以是實(shí)現(xiàn)預(yù)定功能的軟件和/或硬件。盡管以下實(shí)施例所描述的模塊較佳地以軟件來實(shí)現(xiàn),但是硬件,或者軟件和硬件的組合的實(shí)現(xiàn)也是可能并被構(gòu)想的。
圖5為本發(fā)明實(shí)施例提供的一種基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng)的結(jié)構(gòu)框圖,請(qǐng)參閱圖5,所述系統(tǒng)包括:
負(fù)載數(shù)據(jù)采集裝置101,用于采集云平臺(tái)上災(zāi)備中心部署的各個(gè)業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的服務(wù)器的負(fù)載數(shù)據(jù)。
在具體的實(shí)施例中,可通過腳本等方式采集服務(wù)器的負(fù)載數(shù)據(jù),所述服務(wù)器包括虛擬機(jī)以及物理機(jī),所述負(fù)載數(shù)據(jù)包括CPU使用率、內(nèi)存使用率以及存儲(chǔ)容量使用率。
運(yùn)行數(shù)據(jù)采集裝置102,用于從生產(chǎn)環(huán)境中采集業(yè)務(wù)運(yùn)行數(shù)據(jù)。在具體的實(shí)施方式中,所述業(yè)務(wù)運(yùn)行數(shù)據(jù)包括交易量日均值以及交易量日峰值。即運(yùn)行數(shù)據(jù)采集裝置102打通了災(zāi)備中心與生產(chǎn)中心的交易監(jiān)控接口。
數(shù)據(jù)分類裝置103,用于將所述負(fù)載數(shù)據(jù)以及業(yè)務(wù)運(yùn)行數(shù)據(jù)根據(jù)預(yù)設(shè)的容災(zāi)模式等級(jí)進(jìn)行分類,得到不同容災(zāi)模式下各個(gè)業(yè)務(wù)系統(tǒng)的負(fù)載情況數(shù)據(jù)。在具體的實(shí)施方式中,預(yù)設(shè)的容災(zāi)模式等級(jí)中包括雙活容災(zāi)模式、主輔容災(zāi)模式、溫備容災(zāi)模式以及冷備容災(zāi)模式。容災(zāi)模式等級(jí)可配置,對(duì)負(fù)載數(shù)據(jù)以及業(yè)務(wù)運(yùn)行數(shù)據(jù)進(jìn)行分類,形成以業(yè)務(wù)系統(tǒng)為維度的負(fù)載情況數(shù)據(jù),以供后續(xù)步驟進(jìn)行決策。
資源配置裝置104,用于根據(jù)預(yù)設(shè)的策略配置表以及負(fù)載情況數(shù)據(jù)對(duì)所述云平臺(tái)進(jìn)行資源配置。
圖6為本發(fā)明實(shí)施例提供的一種基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng)中資源配置裝置104的實(shí)施方式一的結(jié)構(gòu)框圖,請(qǐng)參閱圖6,在實(shí)施方式一中,當(dāng)所述業(yè)務(wù)系統(tǒng)為溫備容災(zāi)模式或冷備容災(zāi)模式時(shí),資源配置裝置104包括:
第一優(yōu)化策略確定模塊201,用于根據(jù)策略配置表確定所述業(yè)務(wù)系統(tǒng)的優(yōu)化策略;
資源配置模塊202,用于根據(jù)所述優(yōu)化策略以及負(fù)載情況數(shù)據(jù)對(duì)所述業(yè)務(wù)系統(tǒng)進(jìn)行資源配置。
在實(shí)施方式一中,策略配置表如表1所示,其示出了當(dāng)所述業(yè)務(wù)系統(tǒng)為溫備容災(zāi)模式或冷備容災(zāi)模式時(shí),工作日、周末以及節(jié)日三種情景下分別對(duì)應(yīng)的優(yōu)化策略。以溫備容災(zāi)模式為例,則其工作日對(duì)應(yīng)的優(yōu)化策略為“歷史峰值均值,以前一周峰值作為參考”,即在該種情形下,以前一周的歷史峰值的均值作為參考。
圖7為本發(fā)明實(shí)施例提供的一種基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng)中資源配置裝置的實(shí)施方式二的結(jié)構(gòu)框圖,請(qǐng)參閱圖7,在實(shí)施方式二中,當(dāng)所述業(yè)務(wù)系統(tǒng)為雙活容災(zāi)模式或主輔容災(zāi)模式時(shí),所述資源配置裝置104還包括:
預(yù)測(cè)信息采集模塊203,用于從所述生產(chǎn)環(huán)境中采集預(yù)測(cè)信息。
在實(shí)施方式二中,策略配置表如表2所示,其示出了當(dāng)所述業(yè)務(wù)系統(tǒng)為雙活容災(zāi)模式或主輔容災(zāi)模式時(shí),工作日、周末以及節(jié)日三種情景下分別對(duì)應(yīng)的優(yōu)化策略。以雙活容災(zāi)模式為例,則其工作日對(duì)應(yīng)的優(yōu)化策略為“雙中心歷史峰值之和,以前一月峰值作為參”,即在該種情形下,以雙中心的前一月的歷史峰值的和作為參考,此處的雙中心指的是北京中心以及上海中心。
圖8為本發(fā)明實(shí)施例提供的一種基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng)中資源配置模塊202的結(jié)構(gòu)框圖,請(qǐng)參閱圖8,資源配置模塊202包括:
獲取單元301,用于從所述優(yōu)化策略中獲取設(shè)定信息。以雙活容災(zāi)模式為例,步驟S303確定出其工作日對(duì)應(yīng)的優(yōu)化策略為“雙中心歷史峰值之和,以前一月峰值作為參”,即在該種情形下,以雙中心的前一月的歷史峰值的和作為參考。舉例而言,若上海中心前一月的歷史峰值為1500tps,北京中心前一月的歷史峰值為1000tps,則雙活容災(zāi)模式下工作日對(duì)應(yīng)的優(yōu)化策略確定出的設(shè)定信息為2500tps。
讀取單元302,用于當(dāng)所述業(yè)務(wù)系統(tǒng)的資源配置不滿足所述設(shè)定信息時(shí),根據(jù)所述業(yè)務(wù)系統(tǒng)對(duì)應(yīng)的物理機(jī)的名稱從預(yù)設(shè)數(shù)據(jù)庫中讀取所述物理機(jī)對(duì)應(yīng)的虛擬機(jī),若已滿足設(shè)定信息,則無需對(duì)資源進(jìn)行調(diào)整。
使用率獲取單元303,用于從所述負(fù)載情況數(shù)據(jù)中獲取所述虛擬機(jī)的CPU使用率除以及內(nèi)存使用率;
系數(shù)確定單元304,用于根據(jù)所述CPU使用率除以及內(nèi)存使用率確定出所述虛擬機(jī)的系數(shù),在具體的實(shí)施方式中,用虛擬機(jī)的CPU使用率除以內(nèi)存使用率,計(jì)算出系數(shù)。在本發(fā)明中之所以采用此系數(shù)是因?yàn)镃PU使用率高直接影響到物理機(jī)的負(fù)載,而內(nèi)存大小則會(huì)影響遷移時(shí)間。系數(shù)值大則表示使用率高或者使用內(nèi)存低,遷移后對(duì)物理機(jī)負(fù)載影響明顯。
第一確定單元305,用于根據(jù)所述虛擬機(jī)的系數(shù)以及所述優(yōu)化策略選取待遷移的虛擬機(jī);
第二確定單元306,用于根據(jù)待遷移的虛擬機(jī)選取待遷移的物理機(jī)。
遷移單元307,用于遷移所述待遷移的物理機(jī)以及待遷移的虛擬機(jī)進(jìn)行,以使遷移后的所述業(yè)務(wù)系統(tǒng)的資源配置滿足所述設(shè)定信息。
在具體的實(shí)施方式中,也可以選取好待遷移虛擬機(jī)后選擇適合遷移的物理機(jī),然后計(jì)算遷移后資源配置能否滿足設(shè)定信息,若不符合條件則再次進(jìn)行選擇。條件滿足則執(zhí)行遷移操作。
此外,盡管在上文詳細(xì)描述中提及了基于災(zāi)備中心的云平臺(tái)資源配置系統(tǒng)的若干單元模塊,但是這種劃分僅僅并非強(qiáng)制性的。實(shí)際上,根據(jù)本發(fā)明的實(shí)施方式,上文描述的兩個(gè)或更多單元的特征和功能可以在一個(gè)單元中具體化。同樣,上文描述的一個(gè)單元的特征和功能也可以進(jìn)一步劃分為由多個(gè)單元來具體化。
以下具體實(shí)施例以2016年10月1日的某溫備系統(tǒng)A的災(zāi)備中心云平臺(tái)資源配置的過程為例,詳細(xì)說明利用本發(fā)明的一種基于災(zāi)備中心的云平臺(tái)資源配置方法及系統(tǒng)是如何實(shí)現(xiàn)不同容災(zāi)模式下的云平臺(tái)的負(fù)載均衡的。
1.負(fù)載數(shù)據(jù)采集裝置顯示生產(chǎn)環(huán)境A系統(tǒng),共使用1臺(tái)虛擬機(jī)VM1,VM1的配置為8C16G,CPU使用率為20%,內(nèi)存使用率為20%;災(zāi)備中心A系統(tǒng)共使用1臺(tái)VM1,配置為2C4G。
2.運(yùn)行數(shù)據(jù)采集裝置顯示生產(chǎn)環(huán)境A系統(tǒng)當(dāng)前的業(yè)務(wù)量為50tps,歷史當(dāng)日峰值的均值為80tps,2015年10月1日的峰值為100tps。
3.查詢策略配置表得知A系統(tǒng)為溫備容災(zāi)模式,對(duì)策略進(jìn)行初始化。
4.資源配置裝置獲取1和2的數(shù)據(jù),結(jié)合策略配置表,進(jìn)行目標(biāo)決策,對(duì)于該示例,決策目標(biāo)為將2C4G,當(dāng)前tps為50tps,自動(dòng)調(diào)整為可滿足100tps處理能力的虛擬機(jī)配置,并計(jì)算出目標(biāo)虛擬機(jī)配置為((8C*20%/50tps)*100tps)/70%=4.5C,((16G*20%/50tps)*100tps)/70%=9.14G,(注:70%為災(zāi)備環(huán)境的資源容差,為固定參數(shù)),因此決策目標(biāo)為將災(zāi)備中心的VM1的配置2C4G調(diào)整為5C10G。
5.資源配置裝置將決策目標(biāo)4和相關(guān)決策信息1、2(生產(chǎn)環(huán)境的服務(wù)器負(fù)載信息、業(yè)務(wù)負(fù)載信息)發(fā)送給容災(zāi)系統(tǒng)。
6.容災(zāi)系統(tǒng)針對(duì)決策目標(biāo),確定需進(jìn)行資源調(diào)整。
7.計(jì)算物理機(jī)上所有虛擬機(jī)的cpu使用率與使用內(nèi)存大小的比例,并按照從大到小排列;并計(jì)算所有物理機(jī)負(fù)載,從小到大排列。
8.挑選合適的目標(biāo)物理機(jī),對(duì)VM1進(jìn)行遷移和資源調(diào)整。
上述描述2016年10月1日的資源動(dòng)態(tài)調(diào)整過程,該示例描述的是節(jié)假日來臨實(shí)現(xiàn)了自動(dòng)擴(kuò)充資源,按照本系統(tǒng)設(shè)計(jì),普通工作日,會(huì)自動(dòng)收縮資源,提高災(zāi)備中心的資源使用率。
綜上所述,本發(fā)明提出的一種基于災(zāi)備中心的云平臺(tái)資源配置方法以及系統(tǒng),可以針對(duì)不同容災(zāi)模式下的云計(jì)算平臺(tái)的負(fù)載進(jìn)行負(fù)載均衡,方案靈活,也可針對(duì)不同的業(yè)務(wù)系統(tǒng)進(jìn)行獨(dú)立的設(shè)定,不用擔(dān)心適用性。且可以省略人工操作步驟,節(jié)約工作量,遷移信息等可進(jìn)行日志存儲(chǔ)或保存至數(shù)據(jù)庫,便于查看。本方案站在災(zāi)備數(shù)據(jù)中心的視角,在保障整個(gè)災(zāi)備中心各業(yè)務(wù)系統(tǒng)的災(zāi)備指標(biāo)的前提下,同時(shí)能有效利用云平臺(tái)資源池中的計(jì)算資源,自動(dòng)化合理分配資源,減輕了操作人員的工作量。
本申請(qǐng)是站在整個(gè)災(zāi)備數(shù)據(jù)中心的視角,圍繞災(zāi)備中心云IT系統(tǒng)如何更好地滿足災(zāi)備中心內(nèi)的各業(yè)務(wù)系統(tǒng)運(yùn)行需求(比如如何滿足雙活系統(tǒng)、溫備系統(tǒng)或冷備系統(tǒng)的容災(zāi)指標(biāo),并且要最大化的優(yōu)化資源使用率),其核心是根據(jù)對(duì)生產(chǎn)業(yè)務(wù)量的分析結(jié)合災(zāi)備心中的業(yè)務(wù)容災(zāi)指標(biāo),通過決策分析計(jì)算,使得云災(zāi)備中心的資源能力隨時(shí)自動(dòng)調(diào)整,使得對(duì)于整個(gè)云災(zāi)備中心始終具備生產(chǎn)系統(tǒng)的實(shí)時(shí)運(yùn)行能力或?yàn)?zāi)備系統(tǒng)的接管能力。
對(duì)于一個(gè)技術(shù)的改進(jìn)可以很明顯地區(qū)分是硬件上的改進(jìn)(例如,對(duì)二極管、晶體管、開關(guān)等電路結(jié)構(gòu)的改進(jìn))還是軟件上的改進(jìn)(對(duì)于方法流程的改進(jìn))。然而,隨著技術(shù)的發(fā)展,當(dāng)今的很多方法流程的改進(jìn)已經(jīng)可以視為硬件電路結(jié)構(gòu)的直接改進(jìn)。設(shè)計(jì)人員幾乎都通過將改進(jìn)的方法流程編程到硬件電路中來得到相應(yīng)的硬件電路結(jié)構(gòu)。因此,不能說一個(gè)方法流程的改進(jìn)就不能用硬件實(shí)體模塊來實(shí)現(xiàn)。例如,可編程邏輯器件(Programmable Logic Device,PLD)(例如現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA))就是這樣一種集成電路,其邏輯功能由用戶對(duì)器件編程來確定。由設(shè)計(jì)人員自行編程來把一個(gè)數(shù)字系統(tǒng)“集成”在一片PLD上,而不需要請(qǐng)芯片制造廠商來設(shè)計(jì)和制作專用的集成電路芯片2。而且,如今,取代手工地制作集成電路芯片,這種編程也多半改用“邏輯編譯器(logic compiler)”軟件來實(shí)現(xiàn),它與程序開發(fā)撰寫時(shí)所用的軟件編譯器相類似,而要編譯之前的原始代碼也得用特定的編程語言來撰寫,此稱之為硬件描述語言(Hardware Description Language,HDL),而HDL也并非僅有一種,而是有許多種,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)與Verilog2。本領(lǐng)域技術(shù)人員也應(yīng)該清楚,只需要將方法流程用上述幾種硬件描述語言稍作邏輯編程并編程到集成電路中,就可以很容易得到實(shí)現(xiàn)該邏輯方法流程的硬件電路。
控制器可以按任何適當(dāng)?shù)姆绞綄?shí)現(xiàn),例如,控制器可以采取例如微處理器或處理器以及存儲(chǔ)可由該(微)處理器執(zhí)行的計(jì)算機(jī)可讀程序代碼(例如軟件或固件)的計(jì)算機(jī)可讀介質(zhì)、邏輯門、開關(guān)、專用集成電路(Application Specific Integrated Circuit,ASIC)、可編程邏輯控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存儲(chǔ)器控制器還可以被實(shí)現(xiàn)為存儲(chǔ)器的控制邏輯的一部分。
本領(lǐng)域技術(shù)人員也知道,除了以純計(jì)算機(jī)可讀程序代碼方式實(shí)現(xiàn)控制器以外,完全可以通過將方法步驟進(jìn)行邏輯編程來使得控制器以邏輯門、開關(guān)、專用集成電路、可編程邏輯控制器和嵌入微控制器等的形式來實(shí)現(xiàn)相同功能。因此這種控制器可以被認(rèn)為是一種硬件部件,而對(duì)其內(nèi)包括的用于實(shí)現(xiàn)各種功能的裝置也可以視為硬件部件內(nèi)的結(jié)構(gòu)?;蛘呱踔?,可以將用于實(shí)現(xiàn)各種功能的裝置視為既可以是實(shí)現(xiàn)方法的軟件模塊又可以是硬件部件內(nèi)的結(jié)構(gòu)。
上述實(shí)施例闡明的系統(tǒng)、裝置、模塊或單元,具體可以由計(jì)算機(jī)芯片或?qū)嶓w實(shí)現(xiàn),或者由具有某種功能的產(chǎn)品來實(shí)現(xiàn)。
為了描述的方便,描述以上裝置時(shí)以功能分為各種單元分別描述。當(dāng)然,在實(shí)施本申請(qǐng)時(shí)可以把各單元的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。
通過以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請(qǐng)可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn)。基于這樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。
本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。
本申請(qǐng)可用于眾多通用或?qū)S玫挠?jì)算機(jī)系統(tǒng)環(huán)境或配置中。例如:個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、置頂盒、可編程的消費(fèi)電子設(shè)備、網(wǎng)絡(luò)PC、小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括以上任何系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等。
本申請(qǐng)可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本申請(qǐng),在這些分布式計(jì)算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。
雖然通過實(shí)施例描繪了本申請(qǐng),本領(lǐng)域普通技術(shù)人員知道,本申請(qǐng)有許多變形和變化而不脫離本申請(qǐng)的精神,希望所附的權(quán)利要求包括這些變形和變化而不脫離本申請(qǐng)的精神。