一種數(shù)據(jù)克隆方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)災(zāi)備技術(shù)領(lǐng)域,特別是涉及一種數(shù)據(jù)克隆方法和系統(tǒng)。
【背景技術(shù)】
[0002]克隆技術(shù)是指在存儲(chǔ)系統(tǒng)中,在源卷和目標(biāo)卷間建立克隆關(guān)系,當(dāng)用戶觸發(fā)克隆動(dòng)作時(shí),數(shù)據(jù)會(huì)從源卷備份到目的卷,當(dāng)有輸入輸出1下發(fā)時(shí),源端先完成到目的卷的克隆動(dòng)作,再處理接收到的10,使目標(biāo)卷內(nèi)容和源卷內(nèi)容在克隆時(shí)刻一致,可以保障在任意卷故障時(shí)導(dǎo)致數(shù)據(jù)損壞時(shí),始終存在一個(gè)卷的數(shù)據(jù)是可用且是最近的。目前,通常通過在控制器中建立源卷和目標(biāo)卷間建立克隆關(guān)系并激活,當(dāng)用戶觸發(fā)克隆動(dòng)作時(shí),通過該控制器將源卷內(nèi)數(shù)據(jù)備份到目的卷中,來完成克隆動(dòng)作。當(dāng)控制器出現(xiàn)故障時(shí),正在進(jìn)行的克隆動(dòng)作將被終止,用戶的服務(wù)也將被終止,需要對(duì)控制器進(jìn)行修復(fù)后才可再次進(jìn)行克隆操作,而即使是控制器恢復(fù),也需要從目標(biāo)卷恢復(fù)數(shù)據(jù),才能繼續(xù)進(jìn)行克隆,對(duì)外提供服務(wù),恢復(fù)克隆的等待時(shí)間較長(zhǎng),無法保證上層業(yè)務(wù)的不間斷運(yùn)行,且無法保證用戶數(shù)據(jù)的實(shí)時(shí)一致性數(shù)據(jù)備份,降低了數(shù)據(jù)的可靠性。
【發(fā)明內(nèi)容】
[0003]有鑒于此,本發(fā)明實(shí)施例提供一種數(shù)據(jù)克隆方法和系統(tǒng),以解決現(xiàn)有技術(shù)中當(dāng)控制器出現(xiàn)故障時(shí),正在進(jìn)行的克隆動(dòng)作將被終止,用戶的服務(wù)也將被終止,需要對(duì)控制器進(jìn)行修復(fù)后才可再次進(jìn)行克隆操作,而即使是控制器恢復(fù),也需要從目標(biāo)卷恢復(fù)數(shù)據(jù),才能繼續(xù)進(jìn)行克隆,對(duì)外提供服務(wù),恢復(fù)克隆的等待時(shí)間較長(zhǎng),無法保證上層業(yè)務(wù)的不間斷運(yùn)行,且無法保證用戶數(shù)據(jù)的實(shí)時(shí)一致性數(shù)據(jù)備份,降低了數(shù)據(jù)的可靠性的問題。
[0004]為實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供如下技術(shù)方案:
[0005]—種數(shù)據(jù)克隆方法,用于數(shù)據(jù)災(zāi)備系統(tǒng),所述數(shù)據(jù)災(zāi)備系統(tǒng)包括主控制器和從控制器,所述數(shù)據(jù)克隆方法包括:
[0006]判斷所述主控制器是否發(fā)生故障;
[0007]若發(fā)生故障,向所述主控制器發(fā)送停止克隆指令,接收所述主控制器停止克隆后返回的反饋信息,確定源卷中還未進(jìn)行克隆的數(shù)據(jù);
[0008]向所述從控制器發(fā)送克隆指令,所述從控制器接收到所述克隆指令后對(duì)所述源卷中還未進(jìn)行克隆的數(shù)據(jù)進(jìn)行克隆。
[0009]其中,在判斷所述主控制器是否發(fā)生故障前還包括:
[0010]向所述主控制器發(fā)送克隆指令;
[0011]所述主控制器接收到所述克隆指令后對(duì)所述源卷內(nèi)數(shù)據(jù)進(jìn)行克隆。
[0012]其中,所述向所述主控制器發(fā)送克隆指令前還包括:
[0013]向所述主控制器和所述從控制器均發(fā)送克隆準(zhǔn)備指令;
[0014]確定待進(jìn)行克隆的源卷和目的卷,在所述主控制器和所述從控制器內(nèi)均建立所述源卷和所述目的卷的克隆關(guān)系;
[0015]對(duì)所述主控制器和所述從控制器均進(jìn)行激活操作。
[0016]其中,對(duì)所述主控制器進(jìn)行激活操作包括:向所述主控制器發(fā)送激活指令,所述主控制器對(duì)其內(nèi)主克隆插件進(jìn)行注冊(cè);
[0017]其中,對(duì)所述從控制器進(jìn)行激活操作包括:向所述從控制器發(fā)送激活指令,所述從控制器對(duì)其內(nèi)從克隆插件進(jìn)行注冊(cè)。
[0018]其中,所述主控制器停止克隆包括:
[0019]所述主控制器接收到停止克隆指令;
[0020]所述主控制器對(duì)其內(nèi)主克隆插件的注冊(cè)進(jìn)行注銷。
[0021]其中,所述從控制器接收到所述克隆指令后對(duì)所述源卷中還未進(jìn)行克隆的數(shù)據(jù)進(jìn)行克隆包括:
[0022]所述從控制器接收到克隆指令;
[0023]根據(jù)所述克隆指令確定所述源卷中還未進(jìn)行克隆的數(shù)據(jù);
[0024]將所述源卷中還未進(jìn)行克隆的數(shù)據(jù)拷貝到所述源卷對(duì)應(yīng)的目的卷中。
[0025]其中,所述源卷中還未進(jìn)行克隆的數(shù)據(jù)包括:所述主控制器內(nèi)待處理隊(duì)列中的數(shù)據(jù),所述主控器內(nèi)正在進(jìn)行拷貝的數(shù)據(jù),和所述主控器已經(jīng)克隆完成還未拷貝到所述源卷對(duì)應(yīng)的目的卷中的數(shù)據(jù)。
[0026]—種數(shù)據(jù)克隆系統(tǒng),用于數(shù)據(jù)災(zāi)備系統(tǒng),所述數(shù)據(jù)災(zāi)備系統(tǒng)包括主控制器和從控制器,所述數(shù)據(jù)克隆系統(tǒng)包括:判定模塊、停止克隆模塊和第一克隆模塊;其中,
[0027]所述判斷模塊,用于判斷所述主控制器是否發(fā)生故障;
[0028]所述停止克隆模塊,用于當(dāng)判定所述主控制器發(fā)生故障時(shí),向所述主控制器發(fā)送停止克隆指令,接收所述主控制器停止克隆后返回的反饋信息,確定源卷中還未進(jìn)行克隆的數(shù)據(jù);
[0029]所述第一克隆模塊,用于向所述從控制器發(fā)送克隆指令,使所述從控制器接收到所述克隆指令后對(duì)所述源卷中還未進(jìn)行克隆的數(shù)據(jù)進(jìn)行克隆。
[0030]其中,所述的數(shù)據(jù)克隆系統(tǒng)還包括:第二克隆模塊,用于向所述主控制器發(fā)送克隆指令;使所述主控制器接收到所述克隆指令后對(duì)所述源卷內(nèi)數(shù)據(jù)進(jìn)行克隆。
[0031]其中,所述數(shù)據(jù)克隆系統(tǒng)還包括:克隆準(zhǔn)備模塊,所述克隆準(zhǔn)備模塊包括指令發(fā)送單元、關(guān)系建立單元和激活單元;其中,
[0032]所述指令發(fā)送單元,用于向所述主控制器和所述從控制器均發(fā)送克隆準(zhǔn)備指令;
[0033]所述關(guān)系建立單元,用于確定待進(jìn)行克隆的源卷和目的卷,在所述主控制器和所述從控制器內(nèi)均建立所述源卷和所述目的卷的克隆關(guān)系;
[0034]所述激活單元,用于對(duì)所述主控制器和所述從控制器均進(jìn)行激活操作。
[0035]基于上述技術(shù)方案,本發(fā)明實(shí)施例提供的數(shù)據(jù)克隆方法和系統(tǒng),用于數(shù)據(jù)災(zāi)備系統(tǒng),所述數(shù)據(jù)災(zāi)備系統(tǒng)包括主控制器和從控制器,判斷數(shù)據(jù)災(zāi)備系統(tǒng)內(nèi)主控制器是否發(fā)生故障,若主控制器發(fā)生故障,則向該故障主控制器發(fā)送停止克隆指令,該主控制器在接收到該停止克隆指令后,將停止克隆操作,并向該主控制器發(fā)送反饋信息,告知系統(tǒng)在源卷中存在哪些還未進(jìn)行克隆的數(shù)據(jù),在確定源卷中還未進(jìn)行克隆的數(shù)據(jù)后,向從控制器發(fā)送克隆指令,使從控制器在接收到克隆指令后開始對(duì)該源卷中還未進(jìn)行克隆的數(shù)據(jù)進(jìn)行克隆。當(dāng)主控器發(fā)生故障時(shí),則停止主控制器的克隆操作,啟動(dòng)從控制器,將克隆功能切換到從控制器上來進(jìn)行,無需等待主控制器的修復(fù),也無需從目標(biāo)卷恢復(fù)數(shù)據(jù),便可繼續(xù)進(jìn)行克隆操作,恢復(fù)克隆的等待時(shí)間極短,保證了上層業(yè)務(wù)的不間斷運(yùn)行,且保證了用戶數(shù)據(jù)的實(shí)時(shí)一致性數(shù)據(jù)備份,提高了數(shù)據(jù)的可靠性。
【附圖說明】
[0036]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0037]圖1為本發(fā)明實(shí)施例提供的數(shù)據(jù)克隆方法的流程圖;
[0038]圖2為本發(fā)明實(shí)施例提供的數(shù)據(jù)克隆方法中控制主控制器對(duì)源卷內(nèi)數(shù)據(jù)進(jìn)行克隆的方法流程圖;
[0039]圖3為本發(fā)明實(shí)施例提供的數(shù)據(jù)克隆方法中進(jìn)行克隆準(zhǔn)備的方法流程圖;
[0040]圖4為本發(fā)明實(shí)施例提供的數(shù)據(jù)克隆方法中主控制器停止克隆的方法流程圖;
[0041]圖5為本發(fā)明實(shí)施例提供的數(shù)據(jù)克隆方法中從控制器接收到克隆指令后對(duì)源卷中還未進(jìn)行克隆的數(shù)據(jù)進(jìn)行克隆的方法流程圖;
[0042]圖6為本發(fā)明實(shí)施例提供的數(shù)據(jù)克隆系統(tǒng)的系統(tǒng)框圖,用于數(shù)據(jù)災(zāi)備系統(tǒng);
[0043]圖7為本發(fā)明實(shí)施例提供的數(shù)據(jù)克隆系統(tǒng)的另一系統(tǒng)框圖;
[0044]圖8為本發(fā)明實(shí)施例提供的數(shù)據(jù)克隆系統(tǒng)中克隆準(zhǔn)備模塊的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0045]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前