一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng),將ceph塊設(shè)備直接或間接掛載到生產(chǎn)服務(wù)器上;在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序;通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,將生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器,以便后續(xù)恢復(fù)。本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng)能夠提供99.9999%以上的無故障率的備份數(shù)據(jù),并確保這些數(shù)據(jù)能隨時(shí)被恢復(fù)出來,為用戶提供數(shù)據(jù)安全保障。
【專利說明】
一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及數(shù)據(jù)備份及計(jì)算機(jī)信息存儲(chǔ)的技術(shù)領(lǐng)域,特別是涉及一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著云計(jì)算時(shí)代的來臨,IT( Informat1n Technology,互聯(lián)網(wǎng)技術(shù))服務(wù)呈現(xiàn)出規(guī)模化、集群化,而支撐云架構(gòu)后面的存儲(chǔ)設(shè)備則是由各個(gè)存儲(chǔ)廠商提供,數(shù)據(jù)容量從過去TB(1TB= 1024GB)級(jí)上升到I3Bai3B= 10241?)級(jí)甚至更高。因此,來保證系統(tǒng)的可用性和可靠性的傳統(tǒng)的數(shù)據(jù)備份方式逐漸面臨的一個(gè)問題就是無法在有效的時(shí)間內(nèi)對(duì)如此巨量的數(shù)據(jù)進(jìn)行保護(hù)。于是,各個(gè)數(shù)據(jù)保護(hù)方案提供商在思考一種新的基于云計(jì)算架構(gòu)設(shè)施的數(shù)據(jù)保護(hù),比如結(jié)合存儲(chǔ)快照來提高數(shù)據(jù)保護(hù)的時(shí)效性。
[0003]存儲(chǔ)網(wǎng)絡(luò)行業(yè)協(xié)會(huì)(StorageNetworkingIndustry Associat1n,SNIA)對(duì)快照(Snapshot)的定義是:關(guān)于指定數(shù)據(jù)集合的一個(gè)完全可用拷貝,該拷貝包括相應(yīng)數(shù)據(jù)在某個(gè)時(shí)間點(diǎn)(拷貝開始的時(shí)間點(diǎn))的映像??煺湛梢允瞧渌硎镜臄?shù)據(jù)的一個(gè)副本,也可以是數(shù)據(jù)的一個(gè)復(fù)制品。快照的作用主要是能夠進(jìn)行在線數(shù)據(jù)備份與恢復(fù)。當(dāng)存儲(chǔ)設(shè)備發(fā)生應(yīng)用故障或者文件損壞時(shí)可以進(jìn)行快速的數(shù)據(jù)恢復(fù),將數(shù)據(jù)恢復(fù)某個(gè)可用的時(shí)間點(diǎn)的狀態(tài)??煺盏牧硪粋€(gè)作用是為存儲(chǔ)用戶提供了另外一個(gè)數(shù)據(jù)訪問通道。當(dāng)原數(shù)據(jù)進(jìn)行在線應(yīng)用處理時(shí),用戶可以訪問快照數(shù)據(jù),還可以利用快照進(jìn)行測(cè)試等工作。因此,存儲(chǔ)快照技術(shù)使得大數(shù)據(jù)的保護(hù)更加高效,極具實(shí)用性。
[0004]然而,上述備份方案存在以下不足:
[0005]I)存儲(chǔ)本身的可用性和可靠性和伸縮性的問題
[0006]快照所依賴的存儲(chǔ)卷或者存儲(chǔ)本身發(fā)生故障了,快照也就不能恢復(fù)出來了。為此,某些備份廠商提供了對(duì)快照數(shù)據(jù)備份的功能,但這似乎又走回傳統(tǒng)備份恢復(fù)的方式。
[0007]2)存儲(chǔ)本身所面臨的擴(kuò)容問題
[0008]如果快照通過實(shí)克隆(快照的整個(gè)影像都復(fù)制到一個(gè)新存儲(chǔ)卷中)恢復(fù)數(shù)據(jù),恢復(fù)所依賴的存儲(chǔ)空間也是成倍增長(zhǎng)。
[0009]3)在復(fù)雜多元的機(jī)房中也會(huì)面臨各種復(fù)雜的問題
[0010]單獨(dú)依靠存儲(chǔ)自身的可靠性和可用性并不能滿足對(duì)生產(chǎn)服務(wù)器安全性的高要求。
【發(fā)明內(nèi)容】
[0011]鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng),結(jié)合驅(qū)動(dòng)層的I/o截獲重寫和分布式塊存儲(chǔ)的快照功能來進(jìn)行大型機(jī)房和云計(jì)算平臺(tái)的海量數(shù)據(jù)的備份和恢復(fù)問題,從而提供幾乎無故障、支持高并發(fā)以及非常簡(jiǎn)單增加集群節(jié)點(diǎn)的數(shù)據(jù)存儲(chǔ),為用戶提供數(shù)據(jù)安全保障。
[0012]為實(shí)現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,包括以下步驟:將c印h塊設(shè)備直接掛載到生產(chǎn)服務(wù)器上;在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序;通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器;進(jìn)行恢復(fù)數(shù)據(jù)時(shí),備份服務(wù)器獲取快照時(shí)間點(diǎn),再通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。
[0013]根據(jù)上述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,其中:啟動(dòng)快照任務(wù)后,生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài);快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。
[0014]相應(yīng)地,本發(fā)明還提供一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),包括掛載模塊、部署模塊、備份模塊和恢復(fù)模塊;
[0015]所述掛載模塊用于將ceph塊設(shè)備直接掛載到生產(chǎn)服務(wù)器上;
[0016]所述部署模塊用于在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序;
[0017]所述備份模塊用于通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器;
[0018]所述恢復(fù)模塊用于在進(jìn)行恢復(fù)數(shù)據(jù)時(shí),通過備份服務(wù)器獲取快照時(shí)間點(diǎn),再通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。
[0019]根據(jù)上述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),其中:所述備份模塊中,啟動(dòng)快照任務(wù)后,生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài);快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。
[0020]另外,本發(fā)明還提供一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,包括以下步驟:
[0021 ]將ceph塊設(shè)備掛載至備份服務(wù)器,再由備份服務(wù)器將該掛載后的ceph塊設(shè)備掛載至生產(chǎn)服務(wù)器;
[0022]在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序;
[0023]通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器;
[0024]進(jìn)行恢復(fù)數(shù)據(jù)時(shí),備份服務(wù)器根據(jù)快照時(shí)間點(diǎn),通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。
[0025]根據(jù)上述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,其中:啟動(dòng)快照任務(wù)后,生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài);快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。
[0026]根據(jù)上述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,其中:備份服務(wù)器將該掛載后的ceph塊設(shè)備通過iSCSI協(xié)議或者FC掛載至生產(chǎn)服務(wù)器;進(jìn)行數(shù)據(jù)恢復(fù)時(shí),備份服務(wù)器通過iSCSI協(xié)議或者FC將新卷掛載至新生產(chǎn)服務(wù)器。
[0027]相應(yīng)地,本發(fā)明還提供一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),包括掛載模塊、部署模塊、備份模塊和恢復(fù)模塊;
[0028]所述掛載模塊用于將ceph塊設(shè)備掛載至備份服務(wù)器,再將該掛載后的ceph塊設(shè)備通過iSCSI協(xié)議或者FC掛載至生產(chǎn)服務(wù)器;
[0029]所述部署模塊用于在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序;
[0030]所述備份模塊用于通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器;
[0031]所述恢復(fù)模塊用于在進(jìn)行恢復(fù)數(shù)據(jù)時(shí),備份服務(wù)器根據(jù)快照時(shí)間點(diǎn),通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后通過iSCSI協(xié)議或者FC將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。
[0032]根據(jù)上述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),其中:所述備份模塊中,啟動(dòng)快照任務(wù)后,生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài);快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。
[0033]根據(jù)上述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),其中:所述掛載模塊中,備份服務(wù)器將該掛載后的ceph塊設(shè)備通過iSCSI協(xié)議或者FC掛載至生產(chǎn)服務(wù)器;所述恢復(fù)模塊中,備份服務(wù)器通過iSCSI協(xié)議或者FC將新卷掛載至新生產(chǎn)服務(wù)器。
[0034]如上所述,本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng),具有以下有益效果:
[0035](I)結(jié)合分布式塊存儲(chǔ)的尚可用、尚可靠性的優(yōu)點(diǎn),能夠提供99.9999%以上的無故障率的備份數(shù)據(jù),并確保這些數(shù)據(jù)能隨時(shí)被恢復(fù)出來,且能夠在任意快照時(shí)間點(diǎn)恢復(fù),從而為用戶提供數(shù)據(jù)安全保障;
[0036](2)利用分布式塊存儲(chǔ)便捷的橫向擴(kuò)展性,能夠輕松的添加集群節(jié)點(diǎn),為備份擁有海量數(shù)據(jù)的機(jī)房或者云平臺(tái)提供無限可擴(kuò)展的存儲(chǔ)空間;
[0037](3)結(jié)合分布式存儲(chǔ)的快照功能,在確保應(yīng)用一致性的情況下,能夠?yàn)閿?shù)據(jù)提供2分鐘左右的RP0,以及I分鐘左右的RTO時(shí)間;結(jié)合連續(xù)數(shù)據(jù)保護(hù)(Continuous DataProtect1n,CDP)技術(shù),RPO時(shí)間可以降至20秒左右。
【附圖說明】
[0038]圖1顯示為ceph架構(gòu)層次的結(jié)構(gòu)示意圖;
[0039]圖2顯示為本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法的第一實(shí)施例的流程圖;
[0040]圖3顯示為本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng)的第一實(shí)施例的結(jié)構(gòu)示意圖;
[0041]圖4顯示為本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法的第二實(shí)施例的流程圖;
[0042]圖5顯示為本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng)的第二實(shí)施例的結(jié)構(gòu)示意圖。
[0043]元件標(biāo)號(hào)說明
[0044]11掛載模塊
[0045]12部署模塊
[0046]13備份模塊
[0047]14恢復(fù)模塊
[0048]21掛載模塊
[0049]22部署模塊
[0050]23備份模塊[0051 ] 24 恢復(fù)模塊
【具體實(shí)施方式】
[0052]以下通過特定的具體實(shí)例說明本發(fā)明的實(shí)施方式,本領(lǐng)域技術(shù)人員可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過另外不同的【具體實(shí)施方式】加以實(shí)施或應(yīng)用,本說明書中的各項(xiàng)細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒有背離本發(fā)明的精神下進(jìn)行各種修飾或改變。
[0053]需要說明的是,本實(shí)施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構(gòu)想,遂圖式中僅顯示與本發(fā)明中有關(guān)的組件而非按照實(shí)際實(shí)施時(shí)的組件數(shù)目、形狀及尺寸繪制,其實(shí)際實(shí)施時(shí)各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。
[0054]現(xiàn)有技術(shù)中,主流開源分布式塊存儲(chǔ)為sheepdog和ceph。
[0055]Sheepdog是一個(gè)分布式對(duì)象存儲(chǔ)系統(tǒng),專為虛擬機(jī)提供塊存儲(chǔ),具有無單點(diǎn)、零配置、可線性擴(kuò)展的優(yōu)點(diǎn)。sheepdog項(xiàng)目的主要開發(fā)和維護(hù)者來自阿里巴巴集團(tuán)的研發(fā)團(tuán)隊(duì)。
[0056]ceph是加州大學(xué)Santa Cruz分校的Sage Weil(DreamHost的聯(lián)合創(chuàng)始人)專為博士論文設(shè)計(jì)的新一代自由軟件分布式文件系統(tǒng),其可輕松擴(kuò)展到數(shù)PB容量,支持多種工作負(fù)載的高性能,具有高可靠性、可擴(kuò)展性、伸縮性。ceph項(xiàng)目擁有更多的開發(fā)、維護(hù)和使用者,在各個(gè)領(lǐng)域都有廣泛的使用,并獲得了大量的開源組織的支持。
[°°57] 恢復(fù)時(shí)間目標(biāo)(Recovery Time Objective,RT0)是指災(zāi)難發(fā)生后,從IT系統(tǒng)宕機(jī)業(yè)務(wù)停頓之時(shí)開始,到IT系統(tǒng)恢復(fù)至可以支持各部門運(yùn)作、恢復(fù)運(yùn)營(yíng)之時(shí),此兩點(diǎn)之間的時(shí)間段。
[0058]恢復(fù)點(diǎn)目標(biāo)(Recovery Point 0bjective,RP0)是指對(duì)系統(tǒng)和應(yīng)用數(shù)據(jù)而言,要實(shí)現(xiàn)能夠恢復(fù)至可以支持各部門業(yè)務(wù)運(yùn)作,系統(tǒng)及生產(chǎn)數(shù)據(jù)應(yīng)恢復(fù)到一定的更新程度所需要的時(shí)間。這種更新程度可以是上一周的備份數(shù)據(jù),也可以是上一次交易的實(shí)時(shí)數(shù)據(jù)。
[0059]結(jié)合分布式塊存儲(chǔ)的各項(xiàng)優(yōu)異性能和自身的快照功能,本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng)能在滿足非常理想的RTO和RPO的情況下輕松備份和恢復(fù)擁有海量數(shù)據(jù)和復(fù)雜環(huán)境的機(jī)房或者云平臺(tái)?,F(xiàn)有數(shù)據(jù)表明,ceph可以提供秒級(jí)的快照和克隆功能。
[0060]下面主要以ceph為例來闡述本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng)。需要說明的是,其他分布式塊存儲(chǔ)依然適用于本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng),屬于本發(fā)明的保護(hù)范圍之內(nèi)。
[0061]圖1所示為ceph架構(gòu)層次的結(jié)構(gòu),其中,Iibrbd只支持Linux內(nèi)核。由于ceph官方的客戶端只支持Linux內(nèi)核,通常通過以下兩個(gè)途徑來支持Win32:
[0062](I)利用第三方開源的Win32實(shí)現(xiàn)ceph客戶端
[0063]例如,利用ceph-dokan來實(shí)現(xiàn)ceph客戶端,其目前支持win2008、win2012及win7。
[0064]該方式的優(yōu)點(diǎn)是磁盤讀寫速度塊,無需再由備份存儲(chǔ)柜再做一層數(shù)據(jù)轉(zhuǎn)發(fā),直接可以將數(shù)據(jù)寫入ceph集群中。但是,一套ceph客戶端支持的系統(tǒng)環(huán)境非常有限。目前僅支持Linux系統(tǒng),勉強(qiáng)支持Win32系統(tǒng),其他系統(tǒng)基本不支持,從而影響ceph客戶端的實(shí)現(xiàn)的穩(wěn)定性及兼容性。
[0065](2)結(jié)合Linux環(huán)境的備份存儲(chǔ)柜,將ceph塊存儲(chǔ)掛載至備份存儲(chǔ)柜中,成為備份存儲(chǔ)柜的一個(gè)磁盤,在利用Internet小型計(jì)算機(jī)系統(tǒng)接口協(xié)議(Internet Small ComputerSystem Interface,iSCSI)或者光纖通道(Fibre Channel,F(xiàn)C)將該磁盤映射至任意客戶端。
[0066]該方式的優(yōu)點(diǎn)是支持所有支持iSCSI及FC環(huán)境的系統(tǒng),便捷性好。然而,讀寫性能相對(duì)較差。
[0067]以下結(jié)合上述兩種方式來分別闡述本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng)。
[0068]參照?qǐng)D2,本發(fā)明結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法的第一實(shí)施例中,包括以下步驟:
[0069]步驟S11、將ceph塊設(shè)備直接掛載到生產(chǎn)服務(wù)器上。
[0070]步驟S12、在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序。
[0071]步驟S13、通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器。
[0072]其中,備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系,并且配置計(jì)劃任務(wù)在合理的時(shí)間點(diǎn)發(fā)起快照任務(wù)。當(dāng)啟動(dòng)快照任務(wù)監(jiān)控后,備份服務(wù)器會(huì)通知備份客戶端對(duì)ceph塊設(shè)備上的鏡像卷進(jìn)行格式化,然后再通過磁盤校驗(yàn)或者鏡像復(fù)制的方式將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷中,啟動(dòng)I/O驅(qū)動(dòng)程序,使得后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器。快照信息包括快照內(nèi)容、快照大小、快照位置等等。
[0073]具體地,啟動(dòng)快照任務(wù)后,備份客戶端通知生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài),然后通知驅(qū)動(dòng)層將I/O緩沖層數(shù)據(jù)寫入ceph塊設(shè)備上的鏡像卷,待寫入操作完成后通知備份服務(wù)器調(diào)用ceph client接口或者命令行對(duì)該鏡像卷執(zhí)行一個(gè)快照。快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。
[0074]具體地,備份客戶端調(diào)用ceph客戶端接口或者命令行對(duì)該ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照。ceph塊設(shè)備執(zhí)行一個(gè)快照時(shí)間在20秒左右,I/O緩沖層數(shù)據(jù)寫入ceph塊設(shè)備上的鏡像卷所需時(shí)間由生產(chǎn)服務(wù)器的負(fù)載以及緩沖層配置策略來決定。
[0075]另外,Linux驅(qū)動(dòng)層和windows驅(qū)動(dòng)層I/O寫操作分發(fā)實(shí)現(xiàn)原理分別如下:
[0076](一)、Linux驅(qū)動(dòng)層I/O寫操作分發(fā)實(shí)現(xiàn)原理
[0077]A、Linux驅(qū)動(dòng)實(shí)現(xiàn)采用net I ink通信方式來處理用戶態(tài)應(yīng)用監(jiān)控程序與內(nèi)核態(tài)驅(qū)動(dòng)的通信;
[0078]B、待Linux驅(qū)動(dòng)加載后,初始化netlink來監(jiān)聽用戶態(tài)的消息;
[0079]C、當(dāng)備份任務(wù)啟動(dòng)后,將用戶配置所要保護(hù)的數(shù)據(jù)卷以及鏡像卷信息傳遞給驅(qū)動(dòng)模塊并將它保存在內(nèi)存中,再將數(shù)據(jù)卷設(shè)備的塊I/o請(qǐng)求隊(duì)列的make_request_fn所指向的內(nèi)核默認(rèn)的函數(shù)指針保留至內(nèi)存,重新將make_request_fn指向我們實(shí)現(xiàn)的I/O處理函數(shù)指針。與此同時(shí),將I/O的寫操作緩存至一個(gè)隊(duì)列中,并將數(shù)據(jù)卷的數(shù)據(jù)鏡像到鏡像卷中。
[0080]D、當(dāng)鏡像卷復(fù)制完畢后,繼續(xù)過濾出I/O的寫操作至上述隊(duì)列中,然后逐個(gè)處理隊(duì)列中的I/o寫操作,將它分發(fā)至數(shù)據(jù)卷和鏡像卷中。
[0081 ] (二)、windows驅(qū)動(dòng)層I/O寫操作分發(fā)實(shí)現(xiàn)原理
[0082]在windows內(nèi)核中,輸入輸出請(qǐng)求包(I/O request package,IRQ)是一種重要的與輸入輸出有關(guān)的數(shù)據(jù)結(jié)構(gòu)。當(dāng)用戶態(tài)應(yīng)用程序與底層驅(qū)動(dòng)通信時(shí),應(yīng)用程序會(huì)發(fā)出I/O請(qǐng)求,操作系統(tǒng)會(huì)將I/o請(qǐng)求轉(zhuǎn)換為相應(yīng)的IRQ數(shù)據(jù),不同的IRQ會(huì)根據(jù)類型傳遞到不同的派遣函數(shù)??蛻舳顺绦蚺c驅(qū)動(dòng)層之間的通信可以使用Device1Control方法傳遞,擴(kuò)展自定義控制碼。
[0083]windows驅(qū)動(dòng)層I/O寫操作分發(fā)實(shí)現(xiàn)原理基本上和上述Linux驅(qū)動(dòng)相同,僅在I/O過濾及分發(fā)上細(xì)節(jié)有點(diǎn)區(qū)別。當(dāng)備份任務(wù)啟動(dòng)備份數(shù)據(jù)卷時(shí),通過修改數(shù)據(jù)卷設(shè)備對(duì)應(yīng)的注冊(cè)表信息,將該設(shè)備加載過濾驅(qū)動(dòng)。在驅(qū)動(dòng)入口處將IRQ_MJ_SCSI對(duì)應(yīng)的分發(fā)處理函數(shù)指向自己實(shí)現(xiàn)的過濾函數(shù)的函數(shù)指針。
[0084]步驟S14、進(jìn)行恢復(fù)數(shù)據(jù)時(shí),備份服務(wù)器獲取快照時(shí)間點(diǎn),再通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。
[0085]具體地,ceph要求克隆快照前,執(zhí)行保護(hù)操作來確??煺詹槐粍h除,從而保證克隆卷可用。
[0086]當(dāng)新卷掛載至新生產(chǎn)服務(wù)器環(huán)境時(shí),由新生成服務(wù)器上的應(yīng)用來接管恢復(fù)出來的數(shù)據(jù)。
[0087]參照?qǐng)D3,本發(fā)明結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng)的第一實(shí)施例中,包括掛載模塊11、部署模塊12、備份模塊13和恢復(fù)模塊14。
[0088]掛載模塊11用于將ceph塊設(shè)備直接掛載到生產(chǎn)服務(wù)器上。
[0089]部署模塊12用于在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序。
[0090]備份模塊13與掛載模塊11和部署模塊12相連,用于通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器。
[0091]其中,備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系,并且配置計(jì)劃任務(wù)在合理的時(shí)間點(diǎn)發(fā)起快照任務(wù)。當(dāng)啟動(dòng)快照任務(wù)監(jiān)控后,備份服務(wù)器會(huì)通知備份客戶端對(duì)ceph塊設(shè)備上的鏡像卷進(jìn)行格式化,然后再通過磁盤校驗(yàn)或者鏡像復(fù)制的方式將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷中,啟動(dòng)I/O驅(qū)動(dòng)程序,使得后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器。
[0092]具體地,啟動(dòng)快照任務(wù)后,備份客戶端通知生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài),然后通知驅(qū)動(dòng)層將I/O緩沖層數(shù)據(jù)寫入ceph塊設(shè)備上的鏡像卷,待寫入操作完成后通知備份服務(wù)器調(diào)用ceph client接口或者命令行對(duì)該鏡像卷執(zhí)行一個(gè)快照。快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。
[0093]具體地,備份客戶端調(diào)用ceph客戶端接口或者命令行對(duì)該ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照。ceph塊設(shè)備執(zhí)行一個(gè)快照時(shí)間在20秒左右,I/O緩沖層數(shù)據(jù)寫入ceph塊設(shè)備上的鏡像卷所需時(shí)間由生產(chǎn)服務(wù)器的負(fù)載以及緩沖層配置策略來決定。
[0094]恢復(fù)模塊14與備份模塊13相連,用于在進(jìn)行恢復(fù)數(shù)據(jù)時(shí),通過備份服務(wù)器獲取快照時(shí)間點(diǎn),再通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。
[0095]具體地,ceph要求克隆快照前,執(zhí)行保護(hù)操作來確??煺詹槐粍h除,從而保證克隆卷可用。
[0096]當(dāng)新卷掛載至新生產(chǎn)服務(wù)器環(huán)境時(shí),由新生成服務(wù)器上的應(yīng)用來接管恢復(fù)出來的數(shù)據(jù)。
[0097]參照?qǐng)D4,本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法的第二實(shí)施例中,包括以下步驟:
[0098]步驟S21、將ceph塊設(shè)備掛載至備份服務(wù)器,再由備份服務(wù)器將該掛載后的ceph塊設(shè)備掛載至生產(chǎn)服務(wù)器。
[0099]具體地,將ceph塊設(shè)備掛載至備份服務(wù)器,再由備份服務(wù)器將該掛載后的ceph塊設(shè)備通過iSCSI協(xié)議或者FC掛載至生產(chǎn)服務(wù)器。
[0100]步驟S22、在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序。
[0101]步驟S23、通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器。
[0102]其中,備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系,并且配置計(jì)劃任務(wù)在合理的時(shí)間點(diǎn)發(fā)起快照任務(wù)。當(dāng)啟動(dòng)快照任務(wù)監(jiān)控后,備份服務(wù)器會(huì)通知備份客戶端對(duì)ceph塊設(shè)備上的鏡像卷進(jìn)行格式化,然后再通過磁盤校驗(yàn)或者鏡像復(fù)制的方式將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷中,啟動(dòng)I/O驅(qū)動(dòng)程序,使得后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器。
[0103]具體地,啟動(dòng)快照任務(wù)后,備份客戶端通知生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài),然后通知驅(qū)動(dòng)層將I/O緩沖層數(shù)據(jù)寫入ceph塊設(shè)備上的鏡像卷,待寫入操作完成后通知備份服務(wù)器調(diào)用ceph client接口或者命令行對(duì)該鏡像卷執(zhí)行一個(gè)快照??煺杖蝿?wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。
[0104]具體地,備份客戶端調(diào)用ceph客戶端接口或者命令行對(duì)該ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照。ceph塊設(shè)備執(zhí)行一個(gè)快照時(shí)間在20秒左右,I/O緩沖層數(shù)據(jù)寫入ceph塊設(shè)備上的鏡像卷所需時(shí)間由生產(chǎn)服務(wù)器的負(fù)載、緩沖層配置策略以及備份服務(wù)器轉(zhuǎn)發(fā)數(shù)據(jù)所需時(shí)間來決定。
[0105]步驟S24、進(jìn)行恢復(fù)數(shù)據(jù)時(shí),備份服務(wù)器根據(jù)快照時(shí)間點(diǎn),通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。
[0106]其中,通過iSCSI協(xié)議或者FC將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。
[0107]具體地,ceph要求克隆快照前,執(zhí)行保護(hù)操作來確??煺詹槐粍h除,從而保證克隆卷可用。
[0108]當(dāng)新卷掛載至新生產(chǎn)服務(wù)器環(huán)境時(shí),由新生成服務(wù)器上的應(yīng)用來接管恢復(fù)出來的數(shù)據(jù)。
[0109]參照?qǐng)D5,本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng)的第二實(shí)施例中,包括掛載模塊21、部署模塊22、備份模塊23和恢復(fù)模塊24。
[0110]掛載模塊21用于將ceph塊設(shè)備掛載至備份服務(wù)器,再由備份服務(wù)器將該掛載后的ceph塊設(shè)備通過iSCSI協(xié)議或者FC掛載至生產(chǎn)服務(wù)器。
[0111]具體地,掛載模塊21將ceph塊設(shè)備掛載至備份服務(wù)器,再由備份服務(wù)器將該掛載后的ceph塊設(shè)備通過iSCSI協(xié)議或者FC掛載至生產(chǎn)服務(wù)器。
[0112]部署模塊22用于在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序。
[0113]備份模塊23與掛載模塊21部署模塊22相連,用于通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)c印h塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器。
[0114]其中,備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系,并且配置計(jì)劃任務(wù)在合理的時(shí)間點(diǎn)發(fā)起快照任務(wù)。當(dāng)啟動(dòng)快照任務(wù)監(jiān)控后,備份服務(wù)器會(huì)通知備份客戶端對(duì)ceph塊設(shè)備上的鏡像卷進(jìn)行格式化,然后再通過磁盤校驗(yàn)或者鏡像復(fù)制的方式將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷中,啟動(dòng)I/O驅(qū)動(dòng)程序,使得后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器。
[0115]具體地,啟動(dòng)快照任務(wù)后,備份客戶端通知生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài),然后通知驅(qū)動(dòng)層將I/O緩沖層數(shù)據(jù)寫入ceph塊設(shè)備上的鏡像卷,待寫入操作完成后通知備份服務(wù)器調(diào)用ceph client接口或者命令行對(duì)該鏡像卷執(zhí)行一個(gè)快照。快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。
[0116]具體地,備份客戶端調(diào)用ceph客戶端接口或者命令行對(duì)該ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照。ceph塊設(shè)備執(zhí)行一個(gè)快照時(shí)間在20秒左右,I/O緩沖層數(shù)據(jù)寫入ceph塊設(shè)備上的鏡像卷所需時(shí)間由生產(chǎn)服務(wù)器的負(fù)載、緩沖層配置策略以及備份服務(wù)器轉(zhuǎn)發(fā)數(shù)據(jù)所需時(shí)間來決定。
[0117]恢復(fù)模塊24與備份模塊23相連,用于在進(jìn)行恢復(fù)數(shù)據(jù)時(shí),備份服務(wù)器根據(jù)快照時(shí)間點(diǎn),通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。
[0118]其中,通過iSCSI協(xié)議或者FC將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)
[0119]具體地,ceph要求克隆快照前,執(zhí)行保護(hù)操作來確??煺詹槐粍h除,從而保證克隆卷可用。
[0120]當(dāng)新卷掛載至新生產(chǎn)服務(wù)器環(huán)境時(shí),由新生成服務(wù)器上的應(yīng)用來接管恢復(fù)出來的數(shù)據(jù)。
[0121]下面簡(jiǎn)單介紹一下ceph客戶端的操作命令:
[0122](I)要?jiǎng)?chuàng)建一個(gè)IGB的名稱為foo的鏡像卷信息存儲(chǔ)在名稱為swimmingpool池,執(zhí)行以下命令:
[0123]rbd create bar—size 1024—pool swimmingpool
[0124](2)對(duì)名為foo的鏡像卷創(chuàng)建一個(gè)快照,執(zhí)行以下命令:
[0125]rbd snap create swimmingpool/fooisnapname
[0126](3)刪除快照,執(zhí)行以下命令
[0127]rbd snap rm swimmingpool/fooisnapname
[0128](4)對(duì)快照設(shè)置保護(hù),再克隆快照,執(zhí)行以下命令
[0129]rbd snap protect swimmingpool/fooisnapname
[0130]rbd clone swimmingpool/fooisnapname newpool/sub-foo
[0131]綜上所述,本發(fā)明的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法及系統(tǒng)結(jié)合分布式塊存儲(chǔ)的高可用、高可靠性的優(yōu)點(diǎn),能夠提供99.9999%以上的無故障率的備份數(shù)據(jù),并確保這些數(shù)據(jù)能隨時(shí)被恢復(fù)出來,且能夠在任意快照時(shí)間點(diǎn)恢復(fù),從而為用戶提供數(shù)據(jù)安全保障;利用分布式塊存儲(chǔ)便捷的橫向擴(kuò)展性,能夠輕松的添加集群節(jié)點(diǎn),為備份擁有海量數(shù)據(jù)的機(jī)房或者云平臺(tái)提供無限可擴(kuò)展的存儲(chǔ)空間;結(jié)合分布式存儲(chǔ)的快照功能,在確保應(yīng)用一致性的情況下,能夠?yàn)閿?shù)據(jù)提供2分鐘左右的RP0,以及I分鐘左右的RTO時(shí)間;結(jié)合CDP技術(shù),RPO時(shí)間可以降至20秒左右。所以,本發(fā)明有效克服了現(xiàn)有技術(shù)中的種種缺點(diǎn)而具高度產(chǎn)業(yè)利用價(jià)值。
[0132]上述實(shí)施例僅例示性說明本發(fā)明的原理及其功效,而非用于限制本發(fā)明。任何熟悉此技術(shù)的人士皆可在不違背本發(fā)明的精神及范疇下,對(duì)上述實(shí)施例進(jìn)行修飾或改變。因此,舉凡所屬技術(shù)領(lǐng)域中具有通常知識(shí)者在未脫離本發(fā)明所揭示的精神與技術(shù)思想下所完成的一切等效修飾或改變,仍應(yīng)由本發(fā)明的權(quán)利要求所涵蓋。
【主權(quán)項(xiàng)】
1.一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,其特征在于:包括以下步驟: 將ceph塊設(shè)備直接掛載到生產(chǎn)服務(wù)器上; 在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序; 通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器; 進(jìn)行恢復(fù)數(shù)據(jù)時(shí),備份服務(wù)器獲取快照時(shí)間點(diǎn),再通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。2.根據(jù)權(quán)利要求1所述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,其特征在于:啟動(dòng)快照任務(wù)后,生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài);快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。3.一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),其特征在于:包括掛載模塊、部署模塊、備份模塊和恢復(fù)模塊; 所述掛載模塊用于將ceph塊設(shè)備直接掛載到生產(chǎn)服務(wù)器上; 所述部署模塊用于在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與c印h塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序; 所述備份模塊用于通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器; 所述恢復(fù)模塊用于在進(jìn)行恢復(fù)數(shù)據(jù)時(shí),通過備份服務(wù)器獲取快照時(shí)間點(diǎn),再通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。4.根據(jù)權(quán)利要求3所述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),其特征在于:所述備份模塊中,啟動(dòng)快照任務(wù)后,生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài);快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。5.一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,其特征在于:包括以下步驟: 將ceph塊設(shè)備掛載至備份服務(wù)器,再由備份服務(wù)器將該掛載后的ceph塊設(shè)備掛載至生產(chǎn)服務(wù)器; 在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序; 通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器; 進(jìn)行恢復(fù)數(shù)據(jù)時(shí),備份服務(wù)器根據(jù)快照時(shí)間點(diǎn),通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。6.根據(jù)權(quán)利要求6所述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,其特征在于:啟動(dòng)快照任務(wù)后,生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài);快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。7.根據(jù)權(quán)利要求6所述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)方法,其特征在于:備份服務(wù)器將該掛載后的ceph塊設(shè)備通過iSCSI協(xié)議或者FC掛載至生產(chǎn)服務(wù)器;進(jìn)行數(shù)據(jù)恢復(fù)時(shí),備份服務(wù)器通過iSCSI協(xié)議或者FC將新卷掛載至新生產(chǎn)服務(wù)器。8.一種結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),其特征在于:包括掛載模塊、部署模塊、備份模塊和恢復(fù)模塊; 所述掛載模塊用于將ceph塊設(shè)備掛載至備份服務(wù)器,再將該掛載后的ceph塊設(shè)備通過iSCSI協(xié)議或者FC掛載至生產(chǎn)服務(wù)器; 所述部署模塊用于在生產(chǎn)服務(wù)器上部署備份客戶端,并安裝實(shí)現(xiàn)生產(chǎn)服務(wù)器數(shù)據(jù)卷與c印h塊設(shè)備間備份處理的I/O驅(qū)動(dòng)程序; 所述備份模塊用于通過備份服務(wù)器建立生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備的鏡像關(guān)系;當(dāng)啟動(dòng)快照任務(wù)后,通過備份客戶端將生產(chǎn)服務(wù)器數(shù)據(jù)卷的數(shù)據(jù)拷貝至ceph塊設(shè)備上的鏡像卷后,啟動(dòng)I/O驅(qū)動(dòng)程序,將后續(xù)生產(chǎn)服務(wù)器的應(yīng)用所產(chǎn)生的數(shù)據(jù)同時(shí)寫入生產(chǎn)服務(wù)器數(shù)據(jù)卷與ceph塊設(shè)備上的鏡像卷中,并對(duì)ceph塊設(shè)備上的鏡像卷執(zhí)行一個(gè)快照,記錄快照時(shí)間點(diǎn)和快照信息至備份服務(wù)器; 所述恢復(fù)模塊用于在進(jìn)行恢復(fù)數(shù)據(jù)時(shí),備份服務(wù)器根據(jù)快照時(shí)間點(diǎn),通知新生產(chǎn)服務(wù)器的備份客戶端對(duì)該快照時(shí)間點(diǎn)對(duì)應(yīng)的快照?qǐng)?zhí)行一次保護(hù)操作后將快照克隆出一個(gè)新卷,最后通過iSCSI協(xié)議或者FC將新卷掛載至新生產(chǎn)服務(wù)器以得到恢復(fù)的數(shù)據(jù)。9.根據(jù)權(quán)利要求8所述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),其特征在于:所述備份模塊中,啟動(dòng)快照任務(wù)后,生產(chǎn)服務(wù)器的應(yīng)用處于靜默狀態(tài);快照任務(wù)結(jié)束后,生產(chǎn)服務(wù)器的應(yīng)用釋放靜默狀態(tài)。10.根據(jù)權(quán)利要求8所述的結(jié)合分布式塊存儲(chǔ)的快照功能的數(shù)據(jù)保護(hù)系統(tǒng),其特征在于:所述掛載模塊中,備份服務(wù)器將該掛載后的ceph塊設(shè)備通過iSCSI協(xié)議或者FC掛載至生產(chǎn)服務(wù)器;所述恢復(fù)模塊中,備份服務(wù)器通過iSCSI協(xié)議或者FC將新卷掛載至新生產(chǎn)服務(wù)器。
【文檔編號(hào)】G06F11/14GK105843704SQ201610146907
【公開日】2016年8月10日
【申請(qǐng)日】2016年3月15日
【發(fā)明人】王俊
【申請(qǐng)人】上海愛數(shù)信息技術(shù)股份有限公司