概要
應用場景:
支持對象存儲到對象存儲之間的數據比較與同步,并且生成比較報告供一致性檢查。此場景支持兩種數據捕獲方式:
方式1:調用對象存儲接口對源、備存儲同步路徑下的所有對象進行掃描、比對,獲得增量對象(新增/差異),并將增量對象同步到目標端對應路徑下;在海量對象場景下掃描/比對的對象太多,導致這種方式同步增量數據效率過低;
方式2:通過某些方式獲取到增量對象信息(如:對象存儲自行監控、通過應用數據庫表獲取等),并將增量對象的信息以某種類型文件存放;DTO通過讀取文件內容來獲取增量對象信息,并直接將源端對應的增量對象直接同步到目標端;此方式避免了掃描、比對海量對象的時間,提高海量對象場景的增量數據同步效率。
要求:要有應用/組件(一般是對象存儲)負責實現監控增量對象并將增量對象以固定格式導出成文件的一系列動作。
前置條件
文件比較與同步的環境要求如下:
DTO主機需要安裝dto安裝包。詳見安裝DTO。
在MDR控制臺中添加對象存儲。詳見資源管理·對象存儲。
在MDR控制臺中添加DTO主機并處于在線狀態。詳見資源管理·DTO主機。
MDR控制臺需具備有dto的許可,并且該dto許可剩余允許傳輸量不為0。
新建文件比較與同步
點擊左側菜單欄-“資源同步管理”-“對象存儲數據災備”-“文件比較和同步”,進入文件比較和同步列表頁,點擊“新建”按鈕,進入新建頁面。
通用配置頁面各配置項如下:
名稱:任意指定,便于管理即可。
同步主機:下拉框中會列出已注冊至MDR控制臺的DTO同步主機供選用;
規則類型:包含三類規則:僅比較/文件比較與同步 / 文件清單同步,下文會分別介紹各類規則的作用和使用場景;
同步策略類型:“手動同步”“定期同步”和“間隔同步”。
手動同步:需手動啟動規則。此選項為默認選項。
定期同步:可指定每個月的某幾天或者每個星期的某幾天中的某幾個時間點開始同步,規則會在設置的時間自動開始運行。
間隔同步:指的是從上一次規則完成到下一次規則啟動之間的間隔,最小間隔時間單位為秒。
定期同步策略:用戶自行添加定期同步策略。可以設定多個不重疊的定時同步策略,彼此獨立。
間隔同步策略:用戶自行添加時間間隔同步策略。選擇此規則開始時間,并設置間隔時間(單位為秒)。
源存儲:用戶自行選擇要源端的存儲數據用來做對比。
目標存儲:用戶自行選擇對象存儲數據作為目標存儲對比。
同步路徑映射:用戶自行配置需要同步的數據路徑。同步路徑支持手動輸入路徑。
排除路徑:用戶自行選擇將同步數據路徑中的某些子路徑設置為排除路徑,排除路徑中的數據不進行傳輸。
文件后綴名過濾:以后綴名為過濾條件,格式為“文件擴展名”,若多個過濾條件則用逗號隔開,如:“.txt”,“.doc”,“.rtf”。
排除:不同步源路徑中該過濾項中定義的文件類型。
包含:只同步源路徑中該過濾項中定義的文件類型。
文件日期過濾:通過正則表達式對同步路徑下文件的日期進行篩選,文件日期符合正則表達式要求的文件被過濾出來。
排除:不同步源路徑中符合篩選條件的文件。
包含:只同步源路徑中符合篩選條件的文件。
比較設置頁面各配置項如下:
比較類型:重鏡像時的校驗方式。
文件大小:通過源、目標文件的大小進行比較。
對象智能比對:提交規則時會判斷備端存儲是否支持自定義META,不支持則不允許規則提交。智能比對即:通過比文件當前的修改時間戳,和上一次同步時文件的修改時間戳(記錄在自定義屬性META中)來判斷文件是否一致(如果修改時間戳一致則認為文件相同,如果修改時間戳不同,則繼續對比文件的MD5)。
MD5校驗:通過源、目標文件的MD5值進行比較(本地需計算md5,對象存儲直接采用Etag,對象存儲將收到文件的MD5值放在返回結果的ETag中)。
說明:對象存儲返回分片上傳文件的MD5有可能為空或是最后一個分片的MD5,因此對象存儲的MD5并不完全可靠。“文件大小”比對最快;當文件較大時“對象智能比對”比“MD5校驗”快(大文件本地計算md5很慢);當文件較小時“MD5校驗”比“對象智能比對”快(對象存儲的文件修改時間需從META中獲取,一個文件就是一次請求)。
忽略目標端存在文件:DTO不再掃描目標端存儲,直接拿源端拆解過后的目錄進行傳輸,傳輸之前check目標端文件是否存在,如果不存在,就同步,否則跳過該文件;這種類型,可以支持對象存儲單一目錄上千萬的文件。
傳輸線程數量:可以指定線程個數。一個線程處理一個目錄。此選項用于提高數據復制的速度,默認為“10”,數值越高,可用于數據復制的線程越多,但會消耗更多的CPU和內存資源,請根據用戶環境適當選擇。
對象存儲掃描線程數量:可根據需要指定1-10個線程數。
備端掃描:默認開啟,開啟后支持孤兒文件處理。
孤兒文件處理方式:
不處理:不刪除孤兒文件,存在在目標端。
確認后刪除:將孤兒文件計入孤兒文件列表,可通過規則管理界面的“更多·孤兒文件”按鈕來查看,以及選擇是否要將目標端的孤兒文件刪除。
直接刪除:將孤兒文件自動從目標端刪除。
說明:定期同步或間隔同步策略時不允許配置“確認后刪除”;選擇“忽略目標端存在的文件”比較類型時,或者開啟歸檔時不允許配置“直接刪除”和“確認后刪除”。
對象文件路徑名:
和源端保持不變:區分大小寫,和源端大小寫保持一致。
全部為大寫(傳輸時轉換):在傳輸時,將源路徑下的所有目錄名、子目錄名、文件名、文件后綴名全部轉換為大寫存儲在目標路徑下。
全部為小寫(傳輸時轉換):在傳輸時,將源路徑下的所有目錄名、子目錄名、文件名、文件后綴名全部轉換為小寫存儲在目標路徑下。
備端文件壓縮:指的是在本地將文件進行壓縮,壓縮完后傳輸到對象存儲。僅限于本地到對象存儲的規則才支持壓縮,壓縮傳輸后,目標端文件名會被修改為:原文件名.i2.zip。
備端文件加密:將同步到目標端數據加密存儲。
標準加密:通過設置的加密密鑰對源端文件加密后存放到目標端。
加密密鑰:填寫加密密鑰,密鑰要求:32字節的字符串作為密鑰,支持數字、字母、字符的組合,不支持中文。
COS服務端加密:通過對接COS對象存儲API接口,上傳到該對象存儲桶的文件都自動加密,需額外選擇加密密鑰類型:
加密密鑰類型:支持兩種加密密鑰類型:
SSE-COS:使用SSE-COS加密密鑰類型進行加密,無需額外配置;
SSE-C:使用SSE-C加密密鑰類型進行加密,需要額外填寫加密密鑰;
加密密鑰:填寫加密密鑰,密鑰要求:32字節的字符串作為密鑰,支持數字、字母、字符的組合,不支持中文。
保留結果數量:設置“文件比較與同步→報告”中保留的記錄條數。
記錄流水:默認關閉,開啟后會將規則同步的所有文件相關信息(大小、MD5/etag、傳輸耗時、修改/更新時間)記錄在同步主機/usr/drbksoft/dto/data/db/<規則UUID>.db文件中(默認路徑),可供審計查看。
帶寬設置頁面各配置項如下:
全選:開啟后,將會選擇一周內的所有時間。此選項默認關閉。
時間范圍:用戶自行勾選具體的生效日。
選擇帶寬:根據用戶需求選擇需要執行限速的時間段,可以設定多個不重疊的限速規則,彼此獨立,如果帶寬設定為0,表示禁止傳輸。
歸檔設置頁面各配置項如下:
啟用歸檔:不勾選的話不啟用歸檔功能。
文件名轉換:歸檔文件的名稱轉換,支持兩種轉換方式:
保持不變:歸檔文件名與原文件名保持一致。
增加時間后綴:在歸檔文件名后自動添加歸檔時間后綴。
歸檔條件:
時間歸檔:按照填入文件時間類型的時間點與執行本地到對象存儲時的時間點的差值(單位天)。這里的時間選項有兩個:文件創建時間、文件修改時間,這兩種類型可以只選擇某一個,也可以多選,并可以選擇幾種類型間的關系是與還是或。
命名特征:使用正則表達式進行針對文件名的過濾。
文件類型:通過填入文件類型的后綴名進行對文件類型的過濾(如.txt等),可以匹配多個文件類型,文件后綴名與后綴名之間用“逗號隔開”(如.txt,.exe,.zip)。
歸檔策略:
同步所有文件,并刪除本地符合條件的文件:將源目錄下的所有文件全部同步到目標存儲的目標目錄中,并刪除本地符合歸檔條件的文件。
只同步并刪除符合條件的文件:只同步源目錄中符合歸檔條件的文件到目標存儲的目標目錄中去,并刪除本地符合歸檔條件的文件。
只同步但不刪除符合條件的文件:只同步源目錄中符合歸檔條件的文件到目標存儲的目標目錄中去,并且不刪除源端本地符合歸檔條件的文件。