7月3日,Back You Up 鼎甲線上公開(kāi)課第12期開(kāi)講,鼎甲華東區技術支持工(gōng)程師張年年介紹了CDM的設計場景與真實使用場景,并對CDM未來發展趨勢進行了分(fēn)析。
大(dà)家好,歡迎大(dà)家來參加今天的鼎甲公開(kāi)課,我(wǒ)們今天的主題是CDM的想象與真實。我(wǒ)大(dà)緻會把這個課程分(fēn)成五個部分(fēn)。
第一(yī)部分(fēn),你從哪裏來,我(wǒ)的CDM。我(wǒ)們講CDM從哪裏來主要要回到我(wǒ)們整個災備行業的兩大(dà)基本需求,災備行業最重要的兩個需求,它都是來自于一(yī)些災難性的場景,那麽我(wǒ)們看一(yī)下(xià)到底有一(yī)些什麽場景。比如說誤操作、中(zhōng)病毒,又(yòu)比如惡意删除、删庫跑路這種。當發生(shēng)這些,我(wǒ)們叫數據上的邏輯錯誤的時候,我(wǒ)們需要把這個數據狀态調回到沒有發生(shēng)這些錯誤之前。
那麽另外(wài)一(yī)些場景,比如說節點宕機了、斷網了、發生(shēng)災難了,就是整個服務器啊,整個機櫃,甚至于整個機房都遭受了一(yī)些數據災難,我(wǒ)們怎樣才能保證這個業務能夠持續的運行?
這是災備行業的第二個問題,那麽這兩個問題其實是兩個需求的核心,一(yī)個是數據可恢複性,一(yī)個就是業務的連續性的保障。面對這兩個核心的需求,我(wǒ)們災備行業的廠商(shāng)是做了很多工(gōng)作,主要的内容就是備份和容災。也就是說,備份和容災其實是兩件不同的事情。
備份做了一(yī)些什麽事呢?我(wǒ)們看一(yī)下(xià)備份的特點。備份主要是建立一(yī)個數據的時間冗餘,它的數據恢複都會有數據的傳輸過程,而且這個數據的存放(fàng)一(yī)定是脫離(lí)生(shēng)産環境的,它是不能放(fàng)在生(shēng)産環境内部的。
那麽什麽是容災呢?我(wǒ)們顧名思義它是災難的冗餘嘛,在災難來臨的時候,我(wǒ)們不至于說整個業務沒有辦法進行了。容災這件事情它有三個非常突出的特點,第一(yī)個容災的數據它是同步更新的,一(yī)旦你在一(yī)個節點上删除了一(yī)個數據,那麽其他節點相應的數據也就跟着删除了。
容災第二個特點就是可切換,它可以在節點之間去(qù)切換它的業務負載,第三個特點就是不能回到過去(qù)。
那麽在災備工(gōng)作上還有兩個非常重要的指标,就是RTO和RPO。RTO是業務恢複時間,RPO是恢複時間點。
在這些概念的基礎上,CDM是如何來的呢?CDM一(yī)共有三個非常核心的技術。第一(yī)個是連續日志(zhì)保護,通過一(yī)個定時的數據備份,再加上我(wǒ)們實時的連續日志(zhì)保護,可以将數據庫的數據非常完整的去(qù)保存。它和CDP有一(yī)個本質的區别,就是我(wǒ)們備下(xià)來的每一(yī)個日志(zhì)都是能保證它是可恢複的。
第二個核心技術點就是合成備份,合成備份最重要的一(yī)個優點就是它是一(yī)個永久的增量備份。我(wǒ)們可以看下(xià)面這個圖,每一(yī)塊紅色的都是指那個初始的全量備份,每個初始的全量備份加上當前的這個綠顔色的增量數據之後,可以組合成爲一(yī)個新的全量數據,就是後面的藍(lán)色這個方框。每一(yī)個藍(lán)色方塊都成爲一(yī)個塊狀的形态,存在我(wǒ)們的CDM服務器裏面。那麽這些藍(lán)色的方塊兒可以去(qù)幹什麽?可以去(qù)做一(yī)個挂載恢複,那麽就引入了我(wǒ)們第三個核心的技術叫做即時挂載恢複。
即時挂載恢複它的概念是根據數據形态不同,通過iscsi、FC、NFS等協議,将備份集通過直接挂載到客戶端的形式進行交付。主要特點是無數據傳輸、挂載内容可寫及多副本挂載。
剛剛我(wǒ)講了三大(dà)核心的CDM技術,我(wǒ)們可以看到,實際上這個CDM就是脫胎于備份且不止于備份。
那麽根據這個CDM的情況呢,我(wǒ)們設計了一(yī)些方案場景,就是我(wǒ)們在想像中(zhōng)的場景,我(wǒ)們今天的主題叫想象與真實嘛,那我(wǒ)們想象中(zhōng)的場景是怎麽樣的?是我(wǒ)們獲得黃金副本之後進行若幹個快照的挂載,去(qù)支持這些應急、開(kāi)發、測試分(fēn)析等等一(yī)些其他的業務。
我(wǒ)們想象中(zhōng)首先CDM是一(yī)個備份恢複的東西,然後它是可以去(qù)做一(yī)個應急接管級副本提供。
那麽我(wǒ)們在現實中(zhōng),比如說鼎甲在這幾年也實施了很多個CDM的項目,在項目實施和後期維護的過程中(zhōng)呢,也發現了很多用戶實際上對你這個CDM平台,它的用法和它的一(yī)個使用的需求。比如說在電(diàn)信号碼百事通,他們有一(yī)些這樣的用法。
我(wǒ)們還有一(yī)個客戶,是一(yī)個碼頭客戶,他的這個碼頭的應用首先是不能停的。他的數據備份呢,也是不能丢數據的,他的RPO要求是分(fēn)鍾級别。
快遞公司它們數據庫的體(tǐ)量是非常龐大(dà)的,它主要是要做合成備份,做合成備份的目的是它沒有辦法周期性的做全量備份。因爲它一(yī)旦做全量備份相當于他這個數據庫的使用幾乎要停止,所以一(yī)定要做永久的增量備份。此外(wài),它還有一(yī)個25T的數據庫,當它要去(qù)生(shēng)成一(yī)個測試庫的時候,它需要CDM去(qù)做挂載恢複。
因爲CDM是脫胎于備份,CDM的廠商(shāng)也主要是以備份廠商(shāng)爲主,那我(wǒ)們在做我(wǒ)們産品的時候,在我(wǒ)們的想象中(zhōng),我(wǒ)們的産品在被用戶使用的頻(pín)率一(yī)般是不會很高的,因爲用戶發生(shēng)災難的頻(pín)率不會很高。但是CDM這個東西是不一(yī)樣的,它的頻(pín)率會變得非常高。然後呢,秒級恢複到小(xiǎo)時級恢複,這裏面就講到我(wǒ)剛才說到的一(yī)個日志(zhì)回滾的時間。第三個硬件,我(wǒ)們CDM的這個設備,它所使用的硬件是不是一(yī)個普通的備份一(yī)體(tǐ)機能夠搞定,這也是一(yī)個非常重要的問題。
我(wǒ)們來看一(yī)下(xià)這個使用頻(pín)率啊,比如說号百的場景,他這個場景都不是一(yī)些發生(shēng)災難的時候才會有的場景,而是日常工(gōng)作中(zhōng)就會産生(shēng)的場景,所以他每天的工(gōng)作中(zhōng)都會發生(shēng)這種需要副本挂載的事情。然後在如此高頻(pín)率的使用情況下(xià),他遇到的問題一(yī)定會更多。操作後,他的這個挂載在操作以後就會很快的去(qù)解除掉啊,很少會有這種長時間要挂一(yī)兩個月的這種場景出現。
第二種這個想象與現實的差距就是你的售前介紹的時候秒級恢複,實際上秒級恢複是很難去(qù)做到,因爲它有一(yī)個日志(zhì)回滾的時間,就說我(wǒ)們在售前介紹時經常會去(qù)忽略掉這個日志(zhì)回滾的時間。大(dà)型庫的備份時間較長,備份過程中(zhōng)的産生(shēng)的日志(zhì)需要回滾,以滿足精确的時間點、SCN恢複。
在硬件配置層的想象與現實,基本上有三大(dà)塊:修改恢複目标庫的配置如AIO及文件系統調優;引入SSD閃存盤,提高磁盤I/O性能;增加備份服務器的内存、CPU配置。
最後我(wǒ)講一(yī)下(xià)當我(wǒ)們遇到了這些想象和現實的差距之後,鼎甲對我(wǒ)們CDM的産品在未來做了一(yī)些什麽樣的展望?下(xià)面這是一(yī)個方案,我(wǒ)們把CDM和脫敏去(qù)整合到一(yī)起。整合到一(yī)起之後呢,也就是說将脫敏這件事情,也是離(lí)開(kāi)了生(shēng)産庫。在做脫敏抽取數據和運算的這個過程,是不需要生(shēng)産庫的參與。所以就把脫敏這件事情離(lí)你生(shēng)産更遠,對你生(shēng)産就沒有任何的影響,通過CDM和挂載數據庫來實現這麽一(yī)個脫敏的工(gōng)作。最終用戶是通過查詢客戶端直接去(qù)查詢這個脫敏的數據庫就可以了。
第二種方案呢,我(wǒ)們CDM在整個的基礎架構中(zhōng)扮演的角色,我(wǒ)們去(qù)挖掘一(yī)下(xià)第二存儲的一(yī)個重要角色。那麽在這個過程中(zhōng),其實CDM這個系統和生(shēng)産測試用的存儲是在同一(yī)個層面的。從生(shēng)産數據到測試數據,這麽一(yī)個轉換過程是通過CDM可以去(qù)做一(yī)個數據的承上啓下(xià),通過CDM可以去(qù)做一(yī)個生(shēng)産數據的副本,快速爲測試數據提供副本。
然後我(wǒ)們在鼎甲的這個CDM的一(yī)體(tǐ)機,硬件上也做了一(yī)些優化,比如說我(wǒ)們推出了DK8000系列的全閃存的一(yī)體(tǐ)機。包括了是全閃的系統盤啊,全閃的數據盤,大(dà)大(dà)的提高了我(wǒ)們磁盤的IO,還有就是針對一(yī)些大(dà)容量的大(dà)數據量的這個用戶的情況,我(wǒ)們的CDM也提供了4U的這種DK7000系列,我(wǒ)們叫它半閃存盤。其實根本目的也是用來提高我(wǒ)們的磁盤的IO,提高磁盤IO以後就可以提高整個挂載恢複回滾日志(zhì)的速率。
今天的分(fēn)享就到這裏結束了,謝謝大(dà)家。