應用場景
數據從一個OOS賬戶下的Bucket遷移到另一個OOS賬戶下的Bucket,或者同一個OOS賬戶下不同Bucket之間的數據遷移。
注意在線遷移會占用網絡資源。若您的業務比較重要,建議您對遷移任務設置限速(設置system.conf中的maxThroughput),或在空閑時間啟動遷移任務。
前提條件
- Windows7 及以上版本或 Linux CentOS 7.x 及以上版本。
- Java 1.8 及以上版本。
- 遷移工具所在的服務器可以訪問OOS資源池。
具體操作
確定目標Bucket
在OOS中創建目標Bucket,具體操作請參見創建存儲桶(Bucket)或PUT Bucket ,用于存放遷移的數據。也可以使用已存在的Bucket。
下載安裝遷移工具
- 下載數據遷移工具。
- 解壓縮安裝包
-
對于Windows客戶端,直接解壓縮遷移工具zip 包即可。
-
對于Linux客戶端,執行 unzip 解壓縮安裝包。
遷移工具解壓后的目錄結果如下:
CTYUN_OOS_Import_versionid |----config |-------log4j2.xml |-------migrate.conf |-------system.conf |----lib |----import.sh |----import.bat
-
修改配置文件
更新遷移任務配置文件
migrate.conf,配置源和目的資源池信息、遷移配置項。您可根據需要配置system.conf和 log4j2.xml文件,具體參數介紹參見常用工具-OOS數據遷移工具-遷移步驟。其中:
- srcType需填寫為:OOS,代表天翼云對象存儲(經典版)I型。
- srcEndpoint和destEndpoint根據遷移需求填寫,OOS Endpoint參考控制臺指南-域名(Endpoint)-域名(Endpoint)列表。
- 源OOS AccessKey和SecretKey需要至少擁有源Bucket的讀權限,目的OOS AccessKeyID和SecretAccessKey需要至少擁有目的Bucket的寫權限。
migrate.conf配置示例如下:
{
"srcType":"OOS", #從OOS遷移文件
"srcEndpoint":"oos-cn.ctyunapi.cn", #源OOS的Endpoint
"srcAccessKey":"AccessKeyID", #源OOS的AccessKeyID
"srcSecretKey":"SecretAccessKey", #源 OOS的SecretAccessKey
"srcBucket":"srcoosbucket", #源 OOS 的 bucket
"srcPrefix":"logs/", #OOS 上要遷移文件的前綴,請根據實際填寫
"srcMarker":"", #從第一個文件開始遷移
"srcStopObject":"", #OOS 上要遷移的截止文件
"destEndpoint":"oos-cn.ctyunapi.cn", #目標OOS的Endpoint
"destAccessKey":"AccessKeyID", # OOS的AccessKeyID
"destSecretKey":"SecretAccessKey", # OOS的SecretAccessKey
"destBucket":"BucktName", #目標OOS 的Bucket名稱
"isSkipExistFile":false #是否跳過目標資源池中已有的文件
}
執行遷移
- 對于 Windows 客戶端,執行 import.bat 啟動遷移。
1.打開開始菜單,搜索cmd,打開命令提示符窗口。
2.cd到壓縮工具所在的目錄下,例如 cd c:\CTYUN_OOS_Import_ versionid 。
3.執行import.bat。 - 對于Linux客戶端,進入CTYUN_OOS_Import_ versionid ,執行命令./import.sh啟動遷移。
查看遷移狀態
遷移任務創建后,會生成相應日志記錄遷移情況:
- 遷移日志:migratelog文件夾下生成四種日志:異常日志、成功日志、跳過文件日志、其他日志。
- 運行日志:在logs/migrate文件夾下,根據log4j2.xml配置可生成server.log、error.log、dubug.log等。默認未開啟debug, 不記錄debug.log。
您可通過日志查看遷移失敗的文件,并且可以配置migrate.conf文件中的migrateLogFile參數實現對失敗文件的再次遷移。
說明數據遷移工具支持斷點續傳,如果遷移過程中程序被終止了,可以重新啟動遷移任務,從之前中斷的位置繼續開始遷移。繼續遷移的步驟如下:
1. 保留上次遷移執行過程中產生的backup文件。如果是在另外一臺服務器上重新開始遷移任務,需要將backup文件拷貝到新服務器的遷移工具所在目錄下。
2. (可選)查看nextMarker.txt文件中記錄的上次數據遷移位置。修改migrate.conf,設置srcMarker為上次遷移位置,如果不修改,則可能會造成文件重復遷移。