本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)中心控制方法及裝置。
背景技術(shù):
出于災(zāi)備(disasterrecovery)的目的,數(shù)據(jù)中心系統(tǒng)一般都會建設(shè)兩個(或多個)數(shù)據(jù)中心。一個是主數(shù)據(jù)中心,用于承擔(dān)用戶的業(yè)務(wù),一個是備數(shù)據(jù)中心,用于備份主數(shù)據(jù)中心的數(shù)據(jù),防止數(shù)據(jù)丟失,保證數(shù)據(jù)中心系統(tǒng)的可靠性。但由于數(shù)據(jù)中心系統(tǒng)中通常只有主數(shù)據(jù)中心承擔(dān)用戶的業(yè)務(wù),備數(shù)據(jù)中心只對主數(shù)據(jù)中心的數(shù)據(jù)進(jìn)行備份,或者只在主數(shù)據(jù)中心故障時,才接管主數(shù)據(jù)中心的業(yè)務(wù)。也即在大多數(shù)情況下,備數(shù)據(jù)中心都處于閑置狀態(tài),造成資源浪費(fèi),數(shù)據(jù)中心系統(tǒng)的資源利用率較低。
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的在于提出一種數(shù)據(jù)中心控制方法及裝置,旨在解決現(xiàn)有技術(shù)中數(shù)據(jù)中心系統(tǒng)的資源利用率低的技術(shù)問題。
為實現(xiàn)上述目的,本發(fā)明提供一種數(shù)據(jù)中心控制方法,所述數(shù)據(jù)中心控制方法包括以下步驟:
第一數(shù)據(jù)中心與第二數(shù)據(jù)中心建立通信連接,其中,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心分別包括多臺超融合一體機(jī),所有超融合一體機(jī)組成一個集群,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各自運(yùn)行不同的虛擬機(jī)以運(yùn)行相應(yīng)業(yè)務(wù);
在所述第一數(shù)據(jù)中心或者所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入第一數(shù)據(jù)時,將所述第一數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,以同步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心的數(shù)據(jù)。
優(yōu)選地,所述在所述第一數(shù)據(jù)中心或者所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入第一數(shù)據(jù)時,將所述第一數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,以同 步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心的數(shù)據(jù)的步驟之后,還包括:
在所述第一數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行;或者
在所述第二數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第一數(shù)據(jù)中心啟動虛擬機(jī),將所述第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第一數(shù)據(jù)中心運(yùn)行。
優(yōu)選地,所述在所述第二數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第一數(shù)據(jù)中心啟動虛擬機(jī),將所述第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第一數(shù)據(jù)中心運(yùn)行的步驟之前,還包括:
發(fā)送故障檢測信息至所述第二數(shù)據(jù)中心,其中,若所述第二數(shù)據(jù)中心正常,所述第二數(shù)據(jù)中心在接收到所述故障檢測信息時,反饋相應(yīng)的響應(yīng)信息;
在預(yù)設(shè)時長內(nèi)未接收到所述第二數(shù)據(jù)中心反饋的響應(yīng)信息時,判斷所述第二數(shù)據(jù)中心故障。
優(yōu)選地,所述在所述第二數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第一數(shù)據(jù)中心啟動虛擬機(jī),將所述第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第一數(shù)據(jù)中心運(yùn)行的步驟之后,還包括:
在檢測到所述第二數(shù)據(jù)中心故障恢復(fù)時,提取在所述第二數(shù)據(jù)中心故障期間所述第一預(yù)設(shè)存儲副本中存儲的第二數(shù)據(jù);
將所述第二數(shù)據(jù)發(fā)送至所述第二數(shù)據(jù)中心,以供將所述第二數(shù)據(jù)存儲于所述第二預(yù)設(shè)存儲副本中。
優(yōu)選地,在所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心均與仲裁裝置建立通信連接時,所述在所述第一數(shù)據(jù)中心或者所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入第一數(shù)據(jù)時,將所述第一數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中的步驟之后,還包括:
在所述第一數(shù)據(jù)中心與所述仲裁裝置的連接中斷或所述第二數(shù)據(jù)中心與所述仲裁裝置的連接中斷時,在所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各自繼續(xù)運(yùn)行相應(yīng)業(yè)務(wù);
在所述第一數(shù)據(jù)中心與所述仲裁裝置的連接以及所述第一數(shù)據(jù)中心與所 述第二數(shù)據(jù)中心的連接均中斷時,在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行。
此外,為實現(xiàn)上述目的,本發(fā)明還提出一種數(shù)據(jù)中心控制裝置,所述數(shù)據(jù)中心控制裝置包括:
通訊模塊,用于第一數(shù)據(jù)中心與第二數(shù)據(jù)中心建立通信連接,其中,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心分別包括多臺超融合一體機(jī),所有超融合一體機(jī)組成一個集群,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各自運(yùn)行不同的虛擬機(jī)以運(yùn)行相應(yīng)業(yè)務(wù);
存儲模塊,用于在所述第一數(shù)據(jù)中心或者所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入第一數(shù)據(jù)時,將所述第一數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,以同步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心的數(shù)據(jù)。
優(yōu)選地,所述數(shù)據(jù)中心控制裝置還包括:
處理模塊,用于在所述第一數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心中心運(yùn)行;或者在所述第二數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第一數(shù)據(jù)中心啟動虛擬機(jī),將所述第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第一數(shù)據(jù)中心運(yùn)行。
優(yōu)選地,所述通訊模塊,還用于發(fā)送故障檢測信息至所述第二數(shù)據(jù)中心,其中,若所述第二數(shù)據(jù)中心正常,所述第二數(shù)據(jù)中心在接收到所述故障檢測信息時,反饋相應(yīng)的響應(yīng)信息;
所述數(shù)據(jù)中心控制裝置還包括判斷模塊,用于在預(yù)設(shè)時長內(nèi)未接收到所述第二數(shù)據(jù)中心反饋的響應(yīng)信息時,判斷所述第二數(shù)據(jù)中心故障。
優(yōu)選地,所述處理模塊,還用于在檢測到所述第二數(shù)據(jù)中心故障恢復(fù)時,提取在所述第二數(shù)據(jù)中心故障期間所述第一預(yù)設(shè)存儲副本中存儲的第二數(shù)據(jù);
所述通訊模塊,還用于將所述第二數(shù)據(jù)發(fā)送至所述第二數(shù)據(jù)中心,以供將所述第二數(shù)據(jù)存儲于所述第二預(yù)設(shè)存儲副本中。
優(yōu)選地,在所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心均與仲裁裝置建立通 信連接時,所述處理模塊還用于:
在所述第一數(shù)據(jù)中心與所述仲裁裝置的連接中斷或所述第二數(shù)據(jù)中心與所述仲裁裝置的連接中斷時,在所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各自繼續(xù)運(yùn)行相應(yīng)業(yè)務(wù);
在所述第一數(shù)據(jù)中心與所述仲裁裝置的連接以及所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的連接均中斷時,在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行。
本發(fā)明提出的數(shù)據(jù)中心控制方法及裝置,第一數(shù)據(jù)中心和與其有通信連接的第二數(shù)據(jù)中心各自運(yùn)行不同業(yè)務(wù),當(dāng)?shù)谝粩?shù)據(jù)中心或者第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入數(shù)據(jù)時,將該數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,同步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心的數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)備份,避免了數(shù)據(jù)丟失,保證了數(shù)據(jù)中心系統(tǒng)的可靠性;并且本發(fā)明中每個數(shù)據(jù)中心均運(yùn)行業(yè)務(wù),避免了數(shù)據(jù)中心系統(tǒng)中僅主數(shù)據(jù)中心運(yùn)行業(yè)務(wù),備數(shù)據(jù)中心閑置的問題,提高了數(shù)據(jù)中心系統(tǒng)的資源利用率。
附圖說明
圖1為本發(fā)明數(shù)據(jù)中心控制方法第一實施例的流程示意圖;
圖2為本發(fā)明數(shù)據(jù)中心控制方法第二實施例的流程示意圖;
圖3為本發(fā)明實施例中數(shù)據(jù)中心系統(tǒng)的一種運(yùn)行狀態(tài)示意圖;
圖4為本發(fā)明實施例中數(shù)據(jù)中心系統(tǒng)的另一種運(yùn)行狀態(tài)示意圖;
圖5為本發(fā)明數(shù)據(jù)中心控制裝置第一實施例的功能模塊示意圖;
圖6為本發(fā)明數(shù)據(jù)中心控制裝置第二實施例的功能模塊示意圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進(jìn)一步說明。
具體實施方式
應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明提供一種數(shù)據(jù)中心控制方法,參照圖1,圖1為本發(fā)明數(shù)據(jù)中心控制方法第一實施例的流程示意圖。
在本實施例中,該數(shù)據(jù)中心控制方法包括以下步驟:
步驟s10,第一數(shù)據(jù)中心與第二數(shù)據(jù)中心建立通信連接,其中,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心分別包括多臺超融合一體機(jī),所有超融合一體機(jī)組成一個集群,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各自運(yùn)行不同的虛擬機(jī)以運(yùn)行相應(yīng)業(yè)務(wù);
在本實施例中,為了保證業(yè)務(wù)不間斷以及數(shù)據(jù)不丟失,建立一個數(shù)據(jù)中心系統(tǒng),所述數(shù)據(jù)中心系統(tǒng)包括第一數(shù)據(jù)中心和第二數(shù)據(jù)中心。第一數(shù)據(jù)中心和第二數(shù)據(jù)中心均包括了若干臺超融合一體機(jī),兩個數(shù)據(jù)中心的所有超融合一體機(jī)組建成一個超融合集群,客戶所有的應(yīng)用服務(wù)器都是以虛擬機(jī)的形式運(yùn)行在超融合集群里面,該超融合集群中所有超融合一體機(jī)的物理磁盤被虛擬成存儲資源池,提供存儲服務(wù)。第一數(shù)據(jù)中心和第二數(shù)據(jù)中心之間通過高速網(wǎng)絡(luò)建立通信連接。并且兩個數(shù)據(jù)中心都處于活動狀態(tài),分別運(yùn)行不同的虛擬機(jī)執(zhí)行用戶的業(yè)務(wù)。
步驟s20,在所述第一數(shù)據(jù)中心或者所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入第一數(shù)據(jù)時,將所述第一數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,以同步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心的數(shù)據(jù)。
在本實施例中,預(yù)先設(shè)置所述第一數(shù)據(jù)中心存儲數(shù)據(jù)對應(yīng)的第一預(yù)設(shè)存儲副本,以及所述第二數(shù)據(jù)中心存儲數(shù)據(jù)對應(yīng)的第二預(yù)設(shè)存儲副本。在第一數(shù)據(jù)中心和第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的過程中,當(dāng)所述第一數(shù)據(jù)中心中或者所述第二數(shù)據(jù)中心的某一個虛擬機(jī)在寫入第一數(shù)據(jù)時,將所述第一數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,因此,實現(xiàn)同步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心中存儲的數(shù)據(jù)。
進(jìn)一步地,所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本和所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本的數(shù)量可以為一個,也可以為多個。例如,當(dāng)所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本包括存儲副本a和存儲副本b,所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本為存儲副本c時,則將寫入的數(shù)據(jù)同 時存儲于所述第一數(shù)據(jù)中心對應(yīng)的存儲副本a和存儲副本b,以及所述第二數(shù)據(jù)中心對應(yīng)的存儲副本c中。
具體地,當(dāng)所述第一數(shù)據(jù)中心中或者所述第二數(shù)據(jù)中心的業(yè)務(wù)系統(tǒng)(虛擬機(jī))要寫入第一數(shù)據(jù)時,該業(yè)務(wù)系統(tǒng)發(fā)送寫請求至與該業(yè)務(wù)系統(tǒng)具有通信連接的客戶端組件,當(dāng)該客戶端組件接收到寫請求時,將該寫請求同時發(fā)送至第一數(shù)據(jù)中心的服務(wù)端組件和第二數(shù)據(jù)中心的服務(wù)端組件。第一數(shù)據(jù)中心的服務(wù)端組件接收到該寫請求時,將第一數(shù)據(jù)寫入到第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本中,當(dāng)寫入完成時,反饋數(shù)據(jù)寫入成功信息至該客戶端組件。第二數(shù)據(jù)中心的服務(wù)端組件接收到該寫請求時,將第一數(shù)據(jù)寫入到第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,當(dāng)寫入完成時,反饋數(shù)據(jù)寫入成功信息至該客戶端組件。當(dāng)該客戶端組件接收到第一數(shù)據(jù)中心的服務(wù)端組件反饋的數(shù)據(jù)寫入成功信息和第二數(shù)據(jù)中心的服務(wù)端組件反饋的數(shù)據(jù)寫入成功信息時,向業(yè)務(wù)系統(tǒng)發(fā)送數(shù)據(jù)寫入成功信息,當(dāng)業(yè)務(wù)系統(tǒng)接收到數(shù)據(jù)寫入成功信息時,數(shù)據(jù)寫入操作完成。
優(yōu)選地,預(yù)先設(shè)置第一數(shù)據(jù)中心和第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的每個虛擬機(jī)寫入數(shù)據(jù)對應(yīng)的存儲副本。例如,預(yù)先設(shè)置虛擬機(jī)vm1運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本11中,以及所述第二數(shù)據(jù)中心的存儲副本12中;虛擬機(jī)vm2運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本21中,以及所述第二數(shù)據(jù)中心的存儲副本22中;虛擬機(jī)vm3運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本31中,以及所述第二數(shù)據(jù)中心的存儲副本32中;虛擬機(jī)vm4運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本41中,以及所述第二數(shù)據(jù)中心的存儲副本42中。當(dāng)所述虛擬機(jī)vm1在運(yùn)行業(yè)務(wù)寫入數(shù)據(jù)時,將所述數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心的存儲副本11中和所述第二數(shù)據(jù)中心的存儲副本12中。
又如,預(yù)先設(shè)置虛擬機(jī)vm1運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本11和存儲副本12中,以及所述第二數(shù)據(jù)中心的存儲副本13中;虛擬機(jī)vm2運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本21中,以及所述第二數(shù)據(jù)中心的存儲副本22和存儲副本23中。當(dāng)所述虛擬機(jī)vm1在運(yùn)行業(yè)務(wù)寫入數(shù)據(jù)時,將所述數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心的存儲副本11和存儲副本12,以及所述第二數(shù)據(jù)中心的存儲副本13中。
本實施例提供的方案,第一數(shù)據(jù)中心和與其有通信連接的第二數(shù)據(jù)中心各自運(yùn)行不同業(yè)務(wù),當(dāng)?shù)谝粩?shù)據(jù)中心或者第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入數(shù)據(jù)時,將該數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,同步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心的數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)備份,避免了數(shù)據(jù)丟失,保證了數(shù)據(jù)中心系統(tǒng)的可靠性;并且本發(fā)明中每個數(shù)據(jù)中心均運(yùn)行業(yè)務(wù),避免了數(shù)據(jù)中心系統(tǒng)中僅主數(shù)據(jù)中心運(yùn)行業(yè)務(wù),備數(shù)據(jù)中心閑置的問題,提高了數(shù)據(jù)中心系統(tǒng)的資源利用率。
進(jìn)一步地,基于第一實施例提出本發(fā)明數(shù)據(jù)中心控制方法第二實施例。在本實施例中,所述步驟s20之后,還包括:
步驟a,在所述第一數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行;或者
步驟b,在所述第二數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第一數(shù)據(jù)中心啟動虛擬機(jī),將所述第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第一數(shù)據(jù)中心運(yùn)行。
在所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的過程中,可能會出現(xiàn)故障。為了保證用戶的業(yè)務(wù)不中斷和數(shù)據(jù)不丟失,當(dāng)檢測到所述第一數(shù)據(jù)中心出現(xiàn)故障時,停止運(yùn)行所述第一數(shù)據(jù)中心,并根據(jù)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的同步數(shù)據(jù),在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行。當(dāng)檢測到所述第二數(shù)據(jù)中心出現(xiàn)故障時,停止運(yùn)行所述第二數(shù)據(jù)中心,并根據(jù)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的同步數(shù)據(jù),在所述第一數(shù)據(jù)中心啟動虛擬機(jī),將所述第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第一數(shù)據(jù)中心運(yùn)行。從而保證了用戶的業(yè)務(wù)不中斷和數(shù)據(jù)不丟失。
進(jìn)一步地,在本實施例中,所述步驟b之前,還包括步驟:
步驟c,發(fā)送故障檢測信息至所述第二數(shù)據(jù)中心,其中,若所述第二數(shù)據(jù)中心正常,所述第二數(shù)據(jù)中心在接收到所述故障檢測信息時,反饋相應(yīng)的響應(yīng)信息;
步驟d,在預(yù)設(shè)時長內(nèi)未接收到所述第二數(shù)據(jù)中心反饋的響應(yīng)信息時,判斷所述第二數(shù)據(jù)中心故障。
在所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的過程中,所述第一數(shù)據(jù)中心實時或定時發(fā)送故障檢測信息至所述第二數(shù)據(jù)中心,以檢測所述第二數(shù)據(jù)中心是否正常。若所述第二數(shù)據(jù)中心正常,在接收到所述故障檢測信息時,反饋相應(yīng)的響應(yīng)信息至所述第一數(shù)據(jù)中心。所述第一數(shù)據(jù)中心在接收到所述響應(yīng)信息時,則判斷所述第二數(shù)據(jù)中心正常。若所述第二數(shù)據(jù)中心故障,則無法反饋響應(yīng)信息至所述第一數(shù)據(jù)中心。因此,所述第一數(shù)據(jù)中心在預(yù)設(shè)時長內(nèi)未接收到所述第二數(shù)據(jù)中心反饋的響應(yīng)信息時,則判斷所述第二數(shù)據(jù)中心故障。
同理,所述第二數(shù)據(jù)中心實時或定時發(fā)送故障檢測信息至所述第一數(shù)據(jù)中心,以檢測所述第一數(shù)據(jù)中心是否正常。若所述第一數(shù)據(jù)中心正常,在接收到所述故障檢測信息時,反饋相應(yīng)的響應(yīng)信息至所述第二數(shù)據(jù)中心。所述第二數(shù)據(jù)中心在接收到所述響應(yīng)信息時,則判斷所述第一數(shù)據(jù)中心正常。若所述第一數(shù)據(jù)中心故障,則無法反饋響應(yīng)信息至所述第二數(shù)據(jù)中心。因此,所述第二數(shù)據(jù)中心在預(yù)設(shè)時長內(nèi)未接收到所述第一數(shù)據(jù)中心反饋的響應(yīng)信息時,則判斷所述第一數(shù)據(jù)中心故障。
進(jìn)一步地,如圖2所示,在本實施例中,所述步驟b之后,還包括步驟:
步驟s30,在檢測到所述第二數(shù)據(jù)中心故障恢復(fù)時,提取在所述第二數(shù)據(jù)中心故障期間所述第一預(yù)設(shè)存儲副本中存儲的第二數(shù)據(jù);
步驟s40,將所述第二數(shù)據(jù)發(fā)送至所述第二數(shù)據(jù)中心,以供將所述第二數(shù)據(jù)存儲于所述第二預(yù)設(shè)存儲副本中。
在本實施例中,當(dāng)檢測到所述第二數(shù)據(jù)中心出現(xiàn)故障時,將所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)切換至所述第一數(shù)據(jù)中心中運(yùn)行。此時,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心存儲的數(shù)據(jù)開始不同步。當(dāng)所述第一數(shù)據(jù)中心檢測到所述第二數(shù)據(jù)中心故障恢復(fù)時,提取在所述第二數(shù)據(jù)中心故障期間所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本中存儲的第二數(shù)據(jù),然后將所述第二數(shù)據(jù)發(fā)送至所述第二數(shù)據(jù)中心。所述第二數(shù)據(jù)中心在接收到所述第二數(shù)據(jù)時,將所述第二數(shù)據(jù)存儲于所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,使得所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心存儲的數(shù)據(jù)保持同步。
同理,當(dāng)檢測到所述第一數(shù)據(jù)中心出現(xiàn)故障時,將所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)切換至所述第二數(shù)據(jù)中心中運(yùn)行。此時,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心存儲的數(shù)據(jù)開始不同步。當(dāng)所述第二數(shù)據(jù)中心檢測到所述第一數(shù)據(jù)中心故障恢復(fù)時,提取在所述第一數(shù)據(jù)中心故障期間所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中存儲的第三數(shù)據(jù),然后將所述第三數(shù)據(jù)發(fā)送至所述第一數(shù)據(jù)中心。所述第一數(shù)據(jù)中心在接收到所述第三數(shù)據(jù)時,將所述第三數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本中,使得所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心存儲的數(shù)據(jù)保持同步。
本實施例提供的方案,當(dāng)檢測到第二數(shù)據(jù)中心出現(xiàn)故障時,將第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至第一數(shù)據(jù)中心運(yùn)行,或者當(dāng)檢測到第一數(shù)據(jù)中心出現(xiàn)故障時,將第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至第二數(shù)據(jù)中心運(yùn)行,使得業(yè)務(wù)不中斷,從而在提高數(shù)據(jù)中心系統(tǒng)的資源利用率的同時,進(jìn)一步保證了數(shù)據(jù)中心系統(tǒng)的可靠性。
進(jìn)一步地,基于第一實施例或第二實施例提出本發(fā)明數(shù)據(jù)中心控制方法第三實施例。在本實施例中,所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心均與仲裁裝置建立通信連接,所述步驟s20之后,還包括步驟:
步驟e,在所述第一數(shù)據(jù)中心與所述仲裁裝置的連接中斷或所述第二數(shù)據(jù)中心與所述仲裁裝置的連接中斷時,在所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各自繼續(xù)運(yùn)行相應(yīng)業(yè)務(wù);
步驟f,在所述第一數(shù)據(jù)中心與所述仲裁裝置的連接以及所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的連接均中斷時,在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行。
在本實施例中,數(shù)據(jù)中心系統(tǒng)還包括仲裁裝置。所述仲裁裝置與所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心通過網(wǎng)絡(luò)建立通信連接。該網(wǎng)絡(luò)不需采用高速網(wǎng)絡(luò),只需使所述仲裁裝置能與所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心進(jìn)行通信即可。在數(shù)據(jù)中心系統(tǒng)運(yùn)行的過程中,可能會出現(xiàn)所述第一數(shù)據(jù)中心故障、所述第二數(shù)據(jù)中心故障、所述仲裁裝置故障以及網(wǎng)絡(luò)連接中斷等各種情況,針對不同的情況,數(shù)據(jù)中心系統(tǒng)采用不同的處理方式。具體包括以下幾種情況:
1)、所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均正常
由于所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均正常,兩個數(shù)據(jù)中心均處于運(yùn)行狀態(tài),在該情況下,不管所述仲裁裝置是否正常運(yùn)行,即使所述仲裁裝置故障時,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心繼續(xù)正常運(yùn)行。
2)、所述第一數(shù)據(jù)中心故障,所述第二數(shù)據(jù)中心與所述仲裁裝置正常
當(dāng)所述第一數(shù)據(jù)中心故障時,所述第一數(shù)據(jù)中心停止運(yùn)行。由于所述第二數(shù)據(jù)中心與所述仲裁裝置正常,所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)切換至所述第二數(shù)據(jù)中心中運(yùn)行。
3)、所述第二數(shù)據(jù)中心故障,所述第一數(shù)據(jù)中心與所述仲裁裝置正常
當(dāng)所述第二數(shù)據(jù)中心故障時,所述第二數(shù)據(jù)中心停止運(yùn)行。由于所述第一數(shù)據(jù)中心與所述仲裁裝置正常,所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)切換至所述第一數(shù)據(jù)中心中運(yùn)行。
4)、所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的通信連接中斷
當(dāng)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均正常,但所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的通信連接中斷時,所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)繼續(xù)運(yùn)行業(yè)務(wù),所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)繼續(xù)運(yùn)行業(yè)務(wù)。但所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入的數(shù)據(jù)無法發(fā)送至所述第二數(shù)據(jù)中心,無法保存于所述第二數(shù)據(jù)中心的存儲副本中;所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入的數(shù)據(jù)無法發(fā)送至所述第一數(shù)據(jù)中心,無法保存于所述第一數(shù)據(jù)中心的存儲副本中。當(dāng)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的通信連接恢復(fù)時,同步所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的數(shù)據(jù)。
5)、所述第一數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,或者所述第二數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷
當(dāng)所述第一數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷時,或者所述第二數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷時,不改變數(shù)據(jù)中心系統(tǒng)的運(yùn)行狀態(tài),所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)繼續(xù)運(yùn)行業(yè)務(wù),所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)繼續(xù)運(yùn)行業(yè)務(wù),并且,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的數(shù)據(jù)也同步。
6)、所述第一數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,且與所述第二數(shù)據(jù)中心的通信連接中斷
如圖3所示,當(dāng)所述第一數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,且所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的通信連接也中斷時,為了避免所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各運(yùn)行了虛擬機(jī)的一個實例,兩個實例分別都寫一個副本,導(dǎo)致產(chǎn)生腦裂,所述第一數(shù)據(jù)中心停止運(yùn)行,將所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)切換至所述第二數(shù)據(jù)中心中運(yùn)行。
7)、所述第二數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,且與所述第一數(shù)據(jù)中心的通信連接中斷
當(dāng)所述第二數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,且所述第二數(shù)據(jù)中心與所述第一數(shù)據(jù)中心的通信連接也中斷時,所述第二數(shù)據(jù)中心停止運(yùn)行,將所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)切換至所述第一數(shù)據(jù)中心中運(yùn)行。
8)、所述第一數(shù)據(jù)中心正常,所述第二數(shù)據(jù)中心與所述仲裁裝置故障
如圖4所示,當(dāng)所述第二數(shù)據(jù)中心與所述仲裁裝置都故障時,盡管所述第一數(shù)據(jù)中心正常,但所述第一數(shù)據(jù)中心停止運(yùn)行,所述第二數(shù)據(jù)中心由于故障也停止運(yùn)行。在該情況下,用戶業(yè)務(wù)中斷。
9)、所述第二數(shù)據(jù)中心正常,所述第一數(shù)據(jù)中心與所述仲裁裝置故障
當(dāng)所述第一數(shù)據(jù)中心與所述仲裁裝置都故障時,盡管所述第二數(shù)據(jù)中心正常,但所述第二數(shù)據(jù)中心停止運(yùn)行,所述第一數(shù)據(jù)中心由于故障也停止運(yùn)行。在該情況下,用戶業(yè)務(wù)中斷。
10)、所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均故障
當(dāng)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均故障時,不管所述仲裁裝置是否正常,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均停止運(yùn)行,用戶業(yè)務(wù)中斷。
本實施例提供的方案,第一數(shù)據(jù)中心和第二數(shù)據(jù)中心均與仲裁裝置連接,當(dāng)所述第一數(shù)據(jù)中心與所述仲裁裝置的連接以及所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的連接均中斷時,在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行,從而避免了兩個數(shù)據(jù)中心各運(yùn)行了虛擬機(jī)的一個實例,兩個實例分別寫一個副本,導(dǎo)致產(chǎn)生腦裂的問題,因此進(jìn)一步提高了數(shù)據(jù)中心系統(tǒng)的可靠性。
本發(fā)明進(jìn)一步提供一種數(shù)據(jù)中心控制裝置,如圖5所示,圖5為本發(fā)明 數(shù)據(jù)中心控制裝置第一實施例的功能模塊示意圖。
在本實施例中,該數(shù)據(jù)中心控制裝置包括:
通訊模塊10,用于第一數(shù)據(jù)中心與第二數(shù)據(jù)中心建立通信連接,其中,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心分別包括多臺超融合一體機(jī),所有超融合一體機(jī)組成一個集群,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各自運(yùn)行不同的虛擬機(jī)以運(yùn)行相應(yīng)業(yè)務(wù);
在本實施例中,為了保證業(yè)務(wù)不間斷以及數(shù)據(jù)不丟失,建立一個數(shù)據(jù)中心系統(tǒng),所述數(shù)據(jù)中心系統(tǒng)包括第一數(shù)據(jù)中心和第二數(shù)據(jù)中心。第一數(shù)據(jù)中心和第二數(shù)據(jù)中心均包括了若干臺超融合一體機(jī),兩個數(shù)據(jù)中心的所有超融合一體機(jī)組建成一個超融合集群,客戶所有的應(yīng)用服務(wù)器都是以虛擬機(jī)的形式運(yùn)行在超融合集群里面,該超融合集群中所有超融合一體機(jī)的物理磁盤被虛擬成存儲資源池,提供存儲服務(wù)。第一數(shù)據(jù)中心和第二數(shù)據(jù)中心之間通過通訊模塊10采用高速網(wǎng)絡(luò)建立通信連接。并且兩個數(shù)據(jù)中心都處于活動狀態(tài),分別運(yùn)行不同的虛擬機(jī)執(zhí)行用戶的業(yè)務(wù)。
存儲模塊20,用于在所述第一數(shù)據(jù)中心或者所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入第一數(shù)據(jù)時,將所述第一數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,以同步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心的數(shù)據(jù)。
在本實施例中,預(yù)先設(shè)置所述第一數(shù)據(jù)中心存儲數(shù)據(jù)對應(yīng)的第一預(yù)設(shè)存儲副本,以及所述第二數(shù)據(jù)中心存儲數(shù)據(jù)對應(yīng)的第二預(yù)設(shè)存儲副本。在第一數(shù)據(jù)中心和第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的過程中,當(dāng)所述第一數(shù)據(jù)中心中或者所述第二數(shù)據(jù)中心的某一個虛擬機(jī)在寫入第一數(shù)據(jù)時,存儲模塊20將所述第一數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,因此,實現(xiàn)同步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心中存儲的數(shù)據(jù)。
進(jìn)一步地,所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本和所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本的數(shù)量可以為一個,也可以為多個。例如,當(dāng)所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本包括存儲副本a和存儲副本b,所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本為存儲副本c時,則存儲模塊20將寫入的數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的存儲副本a和存儲副本b,以及 所述第二數(shù)據(jù)中心對應(yīng)的存儲副本c中。
優(yōu)選地,預(yù)先設(shè)置第一數(shù)據(jù)中心和第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的每個虛擬機(jī)寫入數(shù)據(jù)對應(yīng)的存儲副本。例如,預(yù)先設(shè)置虛擬機(jī)vm1運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本11中,以及所述第二數(shù)據(jù)中心的存儲副本12中;虛擬機(jī)vm2運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本21中,以及所述第二數(shù)據(jù)中心的存儲副本22中;虛擬機(jī)vm3運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本31中,以及所述第二數(shù)據(jù)中心的存儲副本32中;虛擬機(jī)vm4運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本41中,以及所述第二數(shù)據(jù)中心的存儲副本42中。當(dāng)所述虛擬機(jī)vm1在運(yùn)行業(yè)務(wù)寫入數(shù)據(jù)時,存儲模塊20將所述數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心的存儲副本11中和所述第二數(shù)據(jù)中心的存儲副本12中。
又如,預(yù)先設(shè)置虛擬機(jī)vm1運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本11和存儲副本12中,以及所述第二數(shù)據(jù)中心的存儲副本13中;虛擬機(jī)vm2運(yùn)行業(yè)務(wù)寫入的數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心的存儲副本21中,以及所述第二數(shù)據(jù)中心的存儲副本22和存儲副本23中。當(dāng)所述虛擬機(jī)vm1在運(yùn)行業(yè)務(wù)寫入數(shù)據(jù)時,存儲模塊20將所述數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心的存儲副本11和存儲副本12,以及所述第二數(shù)據(jù)中心的存儲副本13中。
本實施例提供的方案,第一數(shù)據(jù)中心和與其有通信連接的第二數(shù)據(jù)中心各自運(yùn)行不同業(yè)務(wù),當(dāng)?shù)谝粩?shù)據(jù)中心或者第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入數(shù)據(jù)時,存儲模塊20將該數(shù)據(jù)同時存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本以及所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,同步所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心的數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)備份,避免了數(shù)據(jù)丟失,保證了數(shù)據(jù)中心系統(tǒng)的可靠性;并且本發(fā)明中每個數(shù)據(jù)中心均運(yùn)行業(yè)務(wù),避免了數(shù)據(jù)中心系統(tǒng)中僅主數(shù)據(jù)中心運(yùn)行業(yè)務(wù),備數(shù)據(jù)中心閑置的問題,提高了數(shù)據(jù)中心系統(tǒng)的資源利用率。
進(jìn)一步地,如圖6所示,基于第一實施例提出本發(fā)明數(shù)據(jù)中心控制裝置第二實施例。在本實施例中,所述數(shù)據(jù)中心控制裝置還包括:
處理模塊30,用于在所述第一數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至 所述第二數(shù)據(jù)中心中心運(yùn)行;或者在所述第二數(shù)據(jù)中心出現(xiàn)故障時,根據(jù)同步的數(shù)據(jù),在所述第一數(shù)據(jù)中心啟動虛擬機(jī),將所述第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第一數(shù)據(jù)中心運(yùn)行。
在所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的過程中,可能會出現(xiàn)故障。為了保證用戶的業(yè)務(wù)不中斷和數(shù)據(jù)不丟失,當(dāng)檢測到所述第一數(shù)據(jù)中心出現(xiàn)故障時,處理模塊30停止運(yùn)行所述第一數(shù)據(jù)中心,并根據(jù)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的同步數(shù)據(jù),在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行。當(dāng)檢測到所述第二數(shù)據(jù)中心出現(xiàn)故障時,處理模塊30停止運(yùn)行所述第二數(shù)據(jù)中心,并根據(jù)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的同步數(shù)據(jù),在所述第一數(shù)據(jù)中心啟動虛擬機(jī),將所述第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第一數(shù)據(jù)中心運(yùn)行。從而保證了用戶的業(yè)務(wù)不中斷和數(shù)據(jù)不丟失。
進(jìn)一步地,在本實施例中,所述通訊模塊10,還用于發(fā)送故障檢測信息至所述第二數(shù)據(jù)中心,其中,若所述第二數(shù)據(jù)中心正常,所述第二數(shù)據(jù)中心在接收到所述故障檢測信息時,反饋相應(yīng)的響應(yīng)信息;
所述數(shù)據(jù)中心控制裝置還包括判斷模塊,用于在預(yù)設(shè)時長內(nèi)未接收到所述第二數(shù)據(jù)中心反饋的響應(yīng)信息時,判斷所述第二數(shù)據(jù)中心故障。
在所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心運(yùn)行業(yè)務(wù)的過程中,通訊模塊10還實時或定時發(fā)送故障檢測信息至所述第二數(shù)據(jù)中心,以檢測所述第二數(shù)據(jù)中心是否正常。若所述第二數(shù)據(jù)中心正常,在接收到所述故障檢測信息時,反饋相應(yīng)的響應(yīng)信息至所述第一數(shù)據(jù)中心。在所述第一數(shù)據(jù)中心接收到所述響應(yīng)信息時,則判斷模塊判斷所述第二數(shù)據(jù)中心正常。若所述第二數(shù)據(jù)中心故障,則無法反饋響應(yīng)信息至所述第一數(shù)據(jù)中心。因此,當(dāng)所述第一數(shù)據(jù)中心在預(yù)設(shè)時長內(nèi)未接收到所述第二數(shù)據(jù)中心反饋的響應(yīng)信息時,則判斷模塊判斷所述第二數(shù)據(jù)中心故障。
同理,通訊模塊10還實時或定時發(fā)送故障檢測信息至所述第一數(shù)據(jù)中心,以檢測所述第一數(shù)據(jù)中心是否正常。若所述第一數(shù)據(jù)中心正常,在接收到所述故障檢測信息時,反饋相應(yīng)的響應(yīng)信息至所述第二數(shù)據(jù)中心。在所述第二數(shù)據(jù)中心接收到所述響應(yīng)信息時,則判斷模塊判斷所述第一數(shù)據(jù)中心正常。若所述第一數(shù)據(jù)中心故障,則無法反饋響應(yīng)信息至所述第二數(shù)據(jù)中心。因此, 所述第二數(shù)據(jù)中心在預(yù)設(shè)時長內(nèi)未接收到所述第一數(shù)據(jù)中心反饋的響應(yīng)信息時,則判斷模塊判斷所述第一數(shù)據(jù)中心故障。
進(jìn)一步地,在本實施例中,所述處理模塊30,還用于在檢測到所述第二數(shù)據(jù)中心故障恢復(fù)時,提取在所述第二數(shù)據(jù)中心故障期間所述第一預(yù)設(shè)存儲副本中存儲的第二數(shù)據(jù);
所述通訊模塊10,還用于將所述第二數(shù)據(jù)發(fā)送至所述第二數(shù)據(jù)中心,以供將所述第二數(shù)據(jù)存儲于所述第二預(yù)設(shè)存儲副本中。
在本實施例中,當(dāng)檢測到所述第二數(shù)據(jù)中心出現(xiàn)故障時,處理模塊30將所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)切換至所述第一數(shù)據(jù)中心中運(yùn)行。此時,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心存儲的數(shù)據(jù)開始不同步。當(dāng)檢測到所述第二數(shù)據(jù)中心故障恢復(fù)時,處理模塊30提取在所述第二數(shù)據(jù)中心故障期間所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本中存儲的第二數(shù)據(jù),然后通訊模塊10將所述第二數(shù)據(jù)發(fā)送至所述第二數(shù)據(jù)中心。在所述第二數(shù)據(jù)中心接收到所述第二數(shù)據(jù)時,存儲模塊20將所述第二數(shù)據(jù)存儲于所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中,使得所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心存儲的數(shù)據(jù)保持同步。
同理,當(dāng)檢測到所述第一數(shù)據(jù)中心出現(xiàn)故障時,處理模塊30將所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)切換至所述第二數(shù)據(jù)中心中運(yùn)行。此時,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心存儲的數(shù)據(jù)開始不同步。當(dāng)檢測到所述第一數(shù)據(jù)中心故障恢復(fù)時,處理模塊30提取在所述第一數(shù)據(jù)中心故障期間所述第二數(shù)據(jù)中心對應(yīng)的第二預(yù)設(shè)存儲副本中存儲的第三數(shù)據(jù),然后通訊模塊10將所述第三數(shù)據(jù)發(fā)送至所述第一數(shù)據(jù)中心。在所述第一數(shù)據(jù)中心接收到所述第三數(shù)據(jù)時,存儲模塊20將所述第三數(shù)據(jù)存儲于所述第一數(shù)據(jù)中心對應(yīng)的第一預(yù)設(shè)存儲副本中,使得所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心存儲的數(shù)據(jù)保持同步。
本實施例提供的方案,當(dāng)檢測到第二數(shù)據(jù)中心出現(xiàn)故障時,處理模塊30將第二數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至第一數(shù)據(jù)中心運(yùn)行,或者當(dāng)檢測到第一數(shù)據(jù)中心出現(xiàn)故障時,處理模塊30將第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至第二數(shù)據(jù)中心運(yùn)行,使得業(yè)務(wù)不中斷,從而在提高數(shù)據(jù)中心系統(tǒng)的資源利用率的同時,進(jìn)一步保證了數(shù)據(jù)中心系統(tǒng)的可靠性。
進(jìn)一步地,基于第一實施例或第二實施例提出本發(fā)明數(shù)據(jù)中心控制裝置第三實施例。在本實施例中,所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心均與仲裁裝置建立通信連接,所述處理模塊30還用于:
在所述第一數(shù)據(jù)中心與所述仲裁裝置的連接中斷或所述第二數(shù)據(jù)中心與所述仲裁裝置的連接中斷時,在所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各自繼續(xù)運(yùn)行相應(yīng)業(yè)務(wù);
在所述第一數(shù)據(jù)中心與所述仲裁裝置的連接以及所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的連接均中斷時,在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行。
在本實施例中,數(shù)據(jù)中心系統(tǒng)還包括仲裁裝置。所述仲裁裝置與所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心通過網(wǎng)絡(luò)建立通信連接。該網(wǎng)絡(luò)不需采用高速網(wǎng)絡(luò),只需使所述仲裁裝置能與所述第一數(shù)據(jù)中心和所述第二數(shù)據(jù)中心進(jìn)行通信即可。在數(shù)據(jù)中心系統(tǒng)運(yùn)行的過程中,可能會出現(xiàn)所述第一數(shù)據(jù)中心故障、所述第二數(shù)據(jù)中心故障、所述仲裁裝置故障以及網(wǎng)絡(luò)連接中斷等各種情況,針對不同的情況,處理模塊30采用不同的處理方式。具體包括以下幾種情況:
1)、所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均正常
由于所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均正常,兩個數(shù)據(jù)中心均處于運(yùn)行狀態(tài),在該情況下,不管所述仲裁裝置是否正常運(yùn)行,即使所述仲裁裝置故障時,處理模塊30維持所述第一數(shù)據(jù)中心繼續(xù)正常運(yùn)行;所述第二數(shù)據(jù)中心繼續(xù)正常運(yùn)行。
2)、所述第一數(shù)據(jù)中心故障,所述第二數(shù)據(jù)中心與所述仲裁裝置正常
當(dāng)所述第一數(shù)據(jù)中心故障時,處理模塊30將所述第一數(shù)據(jù)中心停止運(yùn)行。由于所述第二數(shù)據(jù)中心與所述仲裁裝置正常,所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)切換至所述第二數(shù)據(jù)中心中運(yùn)行。
3)、所述第二數(shù)據(jù)中心故障,所述第一數(shù)據(jù)中心與所述仲裁裝置正常
當(dāng)所述第二數(shù)據(jù)中心故障時,所述第二數(shù)據(jù)中心停止運(yùn)行。由于所述第一數(shù)據(jù)中心與所述仲裁裝置正常,處理模塊30將所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)切換至所述第一數(shù)據(jù)中心中運(yùn)行。
4)、所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的通信連接中斷
當(dāng)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均正常,但所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的通信連接中斷時,所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)繼續(xù)運(yùn)行業(yè)務(wù),所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)繼續(xù)運(yùn)行業(yè)務(wù)。但所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入的數(shù)據(jù)無法發(fā)送至所述第二數(shù)據(jù)中心,無法保存于所述第二數(shù)據(jù)中心的存儲副本中;所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)寫入的數(shù)據(jù)無法發(fā)送至所述第一數(shù)據(jù)中心,無法保存于所述第一數(shù)據(jù)中心的存儲副本中。當(dāng)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的通信連接恢復(fù)時,同步所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的數(shù)據(jù)。
5)、所述第一數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,或者所述第二數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷
當(dāng)所述第一數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷時,或者所述第二數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷時,不改變數(shù)據(jù)中心系統(tǒng)的運(yùn)行狀態(tài),所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)繼續(xù)運(yùn)行業(yè)務(wù),所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)繼續(xù)運(yùn)行業(yè)務(wù),并且,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的數(shù)據(jù)也同步。
6)、所述第一數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,且與所述第二數(shù)據(jù)中心的通信連接中斷
如圖3所示,當(dāng)所述第一數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,且所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的通信連接也中斷時,為了避免所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心各運(yùn)行了虛擬機(jī)的一個實例,兩個實例分別都寫一個副本,導(dǎo)致產(chǎn)生腦裂,處理模塊30將所述第一數(shù)據(jù)中心停止運(yùn)行,所述第一數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)切換至所述第二數(shù)據(jù)中心中運(yùn)行。
7)、所述第二數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,且與所述第一數(shù)據(jù)中心的通信連接中斷
當(dāng)所述第二數(shù)據(jù)中心與所述仲裁裝置的通信連接中斷,且所述第二數(shù)據(jù)中心與所述第一數(shù)據(jù)中心的通信連接也中斷時,所述第二數(shù)據(jù)中心停止運(yùn)行,處理模塊30將所述第二數(shù)據(jù)中心中運(yùn)行業(yè)務(wù)的虛擬機(jī)切換至所述第一數(shù)據(jù)中心中運(yùn)行。
8)、所述第一數(shù)據(jù)中心正常,所述第二數(shù)據(jù)中心與所述仲裁裝置故障
如圖4所示,當(dāng)所述第二數(shù)據(jù)中心與所述仲裁裝置都故障時,盡管所述第 一數(shù)據(jù)中心正常,處理模塊30將所述第一數(shù)據(jù)中心停止運(yùn)行,所述第二數(shù)據(jù)中心由于故障也停止運(yùn)行。在該情況下,用戶業(yè)務(wù)中斷。
9)、所述第二數(shù)據(jù)中心正常,所述第一數(shù)據(jù)中心與所述仲裁裝置故障
當(dāng)所述第一數(shù)據(jù)中心與所述仲裁裝置都故障時,盡管所述第二數(shù)據(jù)中心正常,所述第二數(shù)據(jù)中心停止運(yùn)行,所述第一數(shù)據(jù)中心由于故障也停止運(yùn)行。在該情況下,用戶業(yè)務(wù)中斷。
10)、所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均故障
當(dāng)所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均故障時,不管所述仲裁裝置是否正常,所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心均停止運(yùn)行,用戶業(yè)務(wù)中斷。
本實施例提供的方案,第一數(shù)據(jù)中心和第二數(shù)據(jù)中心均與仲裁裝置連接,當(dāng)所述第一數(shù)據(jù)中心與所述仲裁裝置的連接以及所述第一數(shù)據(jù)中心與所述第二數(shù)據(jù)中心的連接均中斷時,處理模塊30在所述第二數(shù)據(jù)中心啟動虛擬機(jī),將所述第一數(shù)據(jù)中心中運(yùn)行的業(yè)務(wù)切換至所述第二數(shù)據(jù)中心運(yùn)行,從而避免了兩個數(shù)據(jù)中心各運(yùn)行了虛擬機(jī)的一個實例,兩個實例分別寫一個副本,導(dǎo)致產(chǎn)生腦裂的問題,因此進(jìn)一步提高了數(shù)據(jù)中心系統(tǒng)的可靠性。
以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。