功能描述
ossutil :是命令行遷移的工具,配置簡單,可以適用在本地域名遷移到 OSS 上,支持多線程以及超時重試功能。但支持場景少可以用在本地遷移、OSS 之前遷移,而且遷移日誌不太友好,分析起來比較麻煩,沒有詳細的任務進度;
ossimport :也是需要命令行進行配置,支持多個目錄同時進行遷移,適合第三方雲遷移到 OSS,本地數據遷移到 OSS、OSS 之前遷移。而且支持主備多機器同時遷移,增加遷移的帶寬吞吐,可以有效的提高遷移效率。缺點是配置複雜,多個不同目錄遷移時需要配置多個遷移文件;
在線遷移服務:這種方式幾乎兼容了以上的所有優先,還可以限制每天遷移高峰期的流量,但缺點是客戶數據如果放在本地的 IDC 機房那就無法使用了,要用 ossutil 或者 ossimport ,本文主要介紹在線遷移的方式;
在線遷移
- 目前由於 OSS 數據遷移服務涉及到對目標的 OSS 要有很多 action 的 API 授權,為避免用戶產生過多的學習成本,我們直接強制使用主賬號進行遷移;
- 該服務正在公測中,目前仍在免費使用階段;服務使用需要提前工單申請賬號 UID 加入白名單;
在線遷移分類
離線遷移:
這裡是指的閃電立方硬盤數據 copy 的方式遷移到 OSS;適合用在專有云,以及海量 PB 級別數據想要快速遷移的需求;
在線遷移:
包含了第三方存儲遷移到 OSS 以及 ECS 數據遷移到 OSS,具體配置方法如下;
1、創建數據地址,類似 ossimport job.cfg 的操作,配置遷移的數據源,以及目標 OSS bucket 相關配置;
- 遷移數據用的 accesskeyID 要具有對應的權限,授予子賬號存儲空間讀寫權限(AliyunOSSFullAccess)和在線遷移管理權限(AliyunMGWFullAccess)
- 數據地址要創建兩個,一個源數據地址,一個目標數據地址;
2、創建遷移任務
3、任務類型說明
- 全量遷移:上傳所有的源文件到 OSS;
- 增量遷移:上傳前先 list 所有的源文件,比對哪些是已經上傳過的,將不再重複上傳;
- 數據同步:這裡注意下,當部署的是 OSS 之間遷移的任務時,可以在同區域進行數據同步操作,定期的同步源 bucket 數據到目標 bucket;
同時還可以針對指定文件的時間進行數據遷移;
4、調優設置
用戶配置好遷移體量和文件大致數量後,可以根據設置自動計算分配的工作線程數,同時用戶也可以靈活的按時間段限流,或者不限流;
5、使用注意
在創建遷移任務後,OSS 會去源拉個別文件進行測試,如果恰好源文件含有非法命名的 object 就會導致整個任務失敗,
非法字符包含 "/ .. " 以及長度不能超過 1024字節;
在線遷移管理
已經創建好的遷移任務,用戶可以對其進行管理和監控;
- 進入到管理界面後我們可以看到遷移任務的整體監控(流量,任務狀態,遷移進展)
- 任務遷移過程中如果出現失敗,用戶可以進行重試;
- 任務遷移完成後,用戶生成遷移報告,包含來整體的遷移實際數量,是否有報錯,以及報錯原因等信息;報告是保存在 OSS 上的;
FQA
1、如果要使用遷移服務,子賬號需要具備 OSS 管理權限 以及 MGW 的管理權限,授權地址
服務開啟方式
https://mgw.console.aliyun.com/?spm=a2c4g.11186623.2.12.5bf6614cWHZzGe#/job?_k=6w2hbo
2、跨域遷移的場景,需要提交功能單獨申請,個人要提供內容合法性的生命。
3、排查失敗任務原因可以在控制檯遷移任務內,生成對應任務報告
4、遷移文件量大、文件多時,OSS 要對源文件進行 list 後才會啟動遷移,在 list 過程中比較耗時,如果看到遷移進度 0 的情況正常,只要沒有遷移失敗用戶不用擔心;