介紹如何(he)通(tong)過管理控制臺(tai)對DCS緩存實例進行數據備份(fen),以及備份(fen)數據恢復(fu)。
備份緩存數據的必要性
業(ye)務(wu)(wu)系統(tong)日常(chang)運行中可(ke)能出(chu)現一些(xie)小概率的異(yi)常(chang)事(shi)件(jian),比如異(yi)常(chang)導致緩(huan)(huan)存實例出(chu)現大量臟數(shu)據,或者在實例出(chu)現故障后持久化(hua)文件(jian)不能重(zhong)新(xin)加載。部(bu)分可(ke)靠性要(yao)(yao)求非常(chang)高的業(ye)務(wu)(wu)系統(tong),除了要(yao)(yao)求緩(huan)(huan)存實例高可(ke)用,還要(yao)(yao)求緩(huan)(huan)存數(shu)據安(an)全、可(ke)恢復,甚(shen)至永久保(bao)存。
DCS支持將當前時間點(dian)的(de)實(shi)例緩存數據(ju)備(bei)份(fen)并存儲(chu)到對(dui)象存儲(chu)服務(OBS)中,以便(bian)在緩存實(shi)例發生(sheng)異常后(hou)能夠使用備(bei)份(fen)數據(ju)進(jin)行恢復,保障業務正常運行。
備份方式
DCS緩存實例支持自動和手動兩(liang)種(zhong)備份(fen)方式(shi)。
- 自動備份
您可以通過管(guan)理(li)控制臺設置一個定(ding)時(shi)自動備(bei)份策略,在指定(ding)時(shi)間點(dian)將實例的緩(huan)存(cun)數據自動備(bei)份存(cun)儲。
定時備(bei)份(fen)(fen)頻率(lv)以天為單位(wei),您(nin)根(gen)據(ju)需要(yao),選擇每周(zhou)備(bei)份(fen)(fen)一次(ci)或多次(ci)。備(bei)份(fen)(fen)數據(ju)保(bao)留最多7天,過(guo)期后系(xi)統(tong)自動刪除(chu)。
定(ding)時備份主要(yao)目的在(zai)于讓(rang)實例始(shi)終擁(yong)有一(yi)個(ge)完(wan)整的數(shu)據副本,在(zai)必要(yao)時可以及時恢(hui)復實例數(shu)據,保證業務穩(wen)定(ding),實例數(shu)據安(an)全多一(yi)重保障。
- 手動備份
除了定時備份(fen),DCS還支持(chi)由(you)用戶(hu)手動發起備份(fen)請求,將實(shi)例當前緩存(cun)數據(ju)進(jin)行備份(fen),并存(cun)儲(chu)到對象(xiang)存(cun)儲(chu)服務(OBS)中。
您在執(zhi)行業(ye)務系統維護、升級等(deng)高危操作前,可以先行備份(fen)實例(li)緩(huan)存數據。
緩存實例在使用過程中(zhong),備份(fen)數(shu)據(ju)不(bu)會自動清除(chu)(chu),您可根據(ju)需(xu)要(yao)手動刪(shan)(shan)除(chu)(chu)備份(fen)數(shu)據(ju)。當刪(shan)(shan)除(chu)(chu)實例時(shi),備份(fen)數(shu)據(ju)會隨(sui)實例刪(shan)(shan)除(chu)(chu),如(ru)果需(xu)要(yao)保存備份(fen)數(shu)據(ju),請提(ti)前將備份(fen)數(shu)據(ju)下載保存。
備份的其他說明
- 支持備份的實例類型
只有“主備”、“讀寫(xie)分離(li)”“Proxy集(ji)群”和“Cluster集(ji)群”實(shi)例類型的Redis實(shi)例支(zhi)持數據備份與恢復功能,“單機(ji)”Redis實(shi)例暫不支(zhi)持。單機(ji)實(shi)例若需(xu)要備份,可使用Redis-Cli工具導出(chu)rdb文件。
- 備份原理
Redis 3.0實(shi)例采用(yong)Redis的AOF方式(shi)進行持久(jiu)化(hua)(hua),Redis 4.0/5.0/6.0實(shi)例,如果(guo)是手動備份,支(zhi)持選(xuan)擇RDB格式(shi)和AOF格式(shi)進行持久(jiu)化(hua)(hua);如果(guo)是自動備份,僅支(zhi)持RDB格式(shi)進行持久(jiu)化(hua)(hua)。
備(bei)份(fen)任務在備(bei)節(jie)點(dian)執行,DCS通(tong)過將備(bei)節(jie)點(dian)的數據持久化(hua)文件(jian)壓縮并轉(zhuan)移到對象存儲(chu)服務(OBS)中存儲(chu),從而實(shi)現實(shi)例數據備(bei)份(fen)。
DCS以(yi)小時為單位,定期檢查所(suo)有實例(li)的備份策略,對于需(xu)要執行備份的實例(li),啟動備份任務。
- 備份過程對實例的影響
備份(fen)(fen)操作是在備節點執行,備份(fen)(fen)期間不影響實例正常對外提供(gong)服務(wu)。
在全量數(shu)據同(tong)步(bu)或(huo)者實例高負載的場景下,數(shu)據同(tong)步(bu)需要一定的時(shi)間(jian),在數(shu)據同(tong)步(bu)沒有完成的情況(kuang)下開始備份(fen),備份(fen)數(shu)據與主節點最新(xin)數(shu)據相比,有一定延遲。
由(you)于備(bei)(bei)節點停(ting)止(zhi)將發生的最(zui)新(xin)數(shu)據(ju)變化(hua)(hua)持久化(hua)(hua)到磁盤文件,備(bei)(bei)份期間(jian)主節點如有新(xin)的數(shu)據(ju)寫入,備(bei)(bei)份文件也不會(hui)包含備(bei)(bei)份期間(jian)的數(shu)據(ju)變化(hua)(hua)。
- 備份時間點的選擇
建議選擇業(ye)務量(liang)少的時間段(duan)進行(xing)備份。
- 備份文件的存儲
備份文件存儲在對象(xiang)存儲服務(OBS)中。
- 定時備份異常的處理
定時(shi)備份任(ren)(ren)務觸發后,如(ru)果(guo)實(shi)例當(dang)前正在(zai)進行重啟、擴容等操作(zuo),則定時(shi)任(ren)(ren)務順(shun)延(yan)到下(xia)一(yi)時(shi)間段(duan)處理(li)。
實(shi)例(li)備份(fen)失敗或者因為其他(ta)任(ren)務正在進行而推(tui)遲(chi)備份(fen),DCS會(hui)在下一時(shi)間段繼(ji)續嘗(chang)試(shi)備份(fen),一天最多(duo)會(hui)嘗(chang)試(shi)三次。
- 備份數據保存期限
定時備份產生的備份文件根(gen)據您設置的策略保留(liu)1-7天(tian),超(chao)期由系統自動(dong)刪除,但至少(shao)會保留(liu)一個數據備份文件。
手動備份的數據保存期限無限制,由用戶根據需要自行(xing)刪(shan)除。當刪(shan)除實例時,備份文(wen)件(jian)會隨實例刪(shan)除,如需保留備份數據,請提前下載備份文(wen)件(jian)到本地。
關于數據恢復
- 數據恢復流程
a. 您通過控制臺發起數(shu)據恢復(fu)請(qing)求。
b. DCS從對象存儲服(fu)務(OBS)獲(huo)取(qu)數據備份文(wen)件。
c. 暫停實(shi)例數(shu)據讀寫服務(wu)。
d. 替換主實例(li)的持久化文件(jian)。
e. 重新加載新的(de)持久(jiu)化文件(jian)。
f. 完成數據(ju)恢復,對外提供數據(ju)讀寫服務。
- 數據恢復對業務系統的影響
恢復操作(zuo)是將備(bei)份(fen)文件在主節(jie)點執行,實例(li)數(shu)據恢復期(qi)間(jian)需暫停(ting)數(shu)據讀寫服務,直到主實例(li)完成數(shu)據恢復。
- 數據恢復異常處理
數據(ju)恢(hui)復(fu)文件如果(guo)被損壞,DCS在恢(hui)復(fu)過程中(zhong)會嘗試(shi)修(xiu)復(fu)。修(xiu)復(fu)成功則(ze)繼續(xu)進行數據(ju)恢(hui)復(fu),修(xiu)復(fu)失敗,DCS主備實例(li)會將實例(li)還原到執行恢(hui)復(fu)前的狀態。