全部產品
Search
文件中心

Data Online Migration:遷移實施

更新時間:Nov 28, 2024

本文介紹資料移轉的注意事項、遷移限制說明和操作步驟。

注意事項

使用線上遷移服務遷移資料時需要注意以下事項:

  • 建立目的資料地址時,待遷移目錄請使用絕對路徑,必須以正斜線(/)開頭和結尾,不支援環境變數和特殊字元。

  • 建立目的資料地址時,需確保待遷移目錄存在且正確有效。

  • 線上遷移服務使用來源站點儲存服務提供者公開的標準介面來訪問來源資料,其行為依賴於來源站點儲存服務提供者的具體實現。

  • 線上遷移會佔用源地址和目的地址的資源。若您的業務比較重要,建議您對遷移任務設定限速,或在空閑時間啟動遷移任務。

  • 線上遷移前會檢查源地址和目的地址的檔案。如果您源地址和目的地址有相同檔案名稱的檔案,且在遷移任務中配置了覆蓋方式為覆蓋,則遷移時會直接覆蓋目的地址的檔案。若兩個檔案內容不同,必須變更檔名或做好備份。

警告

請您務必在遷移任務完成後,校正目的端遷移資料,確保資料無誤。您在刪除來源資料前,未校正目的端遷移資料無誤,導致資料丟失所引起的一切損失和後果均由您自行承擔。

遷移限制說明

  • 若您遷移的源地址中設定了靜態網站託管,資料移轉時會額外掃描出實際不存在的目錄。例如,上傳檔案myapp/resource/1.jpg,開啟靜態網站託管後,遷移服務掃描會得到3個對象,分別為myapp/myapp/resource/myapp/resource/1.jpg,其中myapp/myapp/resource/會遷移失敗,但不影響myapp/resource/1.jpg的正常遷移。

  • 若您源bucket中存在以'/'結尾的對象,在遷移該對象時,會忽略任務覆蓋方式,該對象的屬性總是會設定到目的LocalFs對應的目錄屬性中。

  • 若您的源地址中有以正斜線(/)結尾的檔案,遷移到目的地址後 ,會以目錄形式展示,如源端存在a/、a/b/a/b/c/三個檔案,遷移到目的地址後會展示為a/b/c/的目錄形式。

  • 目前僅支援單次遷移單個Bucket資料,無法將整個帳號的資料一次性遷移。

  • 不支援金融雲、政務雲的資料移轉。

  • 遷移阿里雲OSS資料至LocalFS的屬性說明如下所示:

    • 支援遷移的屬性:LastModifyTime -> ModifyTime(LocalFS)。

    • 不支援遷移的屬性(包括但不限於):x-oss-meta-*、Content-Type,Cache-Control,Content-Encoding,Content-Disposition、Content-Language 、Expires、StorageClass、Acl、服務端加密、標籤Tagging、使用者自訂header x-oss-persistent-header等。

      說明

      不支援遷移的屬性包括但不限於以上列舉的內容,其他未列舉的屬性行為暫無法確定,以實際遷移完成的內容為準。

步驟一:選擇地區

  1. 使用建立的RAM使用者登入阿里雲線上遷移服務管理主控台

  2. 在頂部功能表列左上方處,選擇代理所在的地區,如下圖所示。

    image.png

    重要
    • 不同地區內的通道、代理、資料地址和遷移任務不通用,請謹慎選擇。

    • 優先選擇代理所在的地區。如果沒有代理所在地對應的地區,請儘可能選擇接近代理所在的地區建立遷移任務。

步驟二:建立通道

  1. 在左側導覽列,選擇線上遷移服務>通道管理,單擊建立通道

  2. 建立通道對話方塊,配置如下參數,然後單擊確定

    參數

    是否必填

    說明

    名稱

    通道的名稱。

    • 通道名稱不可為空,最大長度為100個字元。

    • 支援英文大小寫字母、數字和特殊字元短劃線(-)和底線(_)。

    頻寬上限

    通道可以使用的頻寬上限。

    • 不填寫:預設值為0,表示不限制頻寬。

    • 設定該值:取值範圍請參考控制台提示。

    重要

    可用頻寬取決於網路鏈路的實際頻寬。

    請求數/秒

    通道每秒請求數上限。

    • 不填寫:預設值為0,表示不限制每秒請求數。

    • 設定該值:取值範圍請參考控制台提示。

    警告

    請根據資料來源儲存系統的能力認真評估,過大會影響業務正常運行,建議根據控制台提示設定。

說明

關於通道的更多資訊,請參見通道管理

步驟三:建立代理

  1. 在左側導覽列,選擇線上遷移服務>代理管理,單擊建立代理

  2. 建立代理對話方塊,配置如下參數,然後單擊確定

    參數

    是否必填

    說明

    名稱

    代理名稱。

    • 代理名稱不可為空,長度為3~63個字元。

    • 支援英文小寫字母、數字和特殊字元短劃線(-)和底線(_),且區分大小寫。

    • UTF-8編碼並且不能以短劃線(-)和底線(_)開頭。

    網路類型

    代理的網路連接方式,包含如下兩種:

    • 公網(公網):此代理通過公網進行資料移轉。此方式要求代理機器必須可以訪問與遷移服務部署地區的線上遷移服務公網網域名稱。例如,您當前控制台在華北2(北京)地區,則此代理機器必須可以訪問線上遷移服務華北2(北京)地區的公網網域名稱cn-beijing.mgw-tc.aliyuncs.com

    • 專線/VPN(VPC):此代理通過專線進行資料移轉。此方式要求代理機器必須可以訪問與遷移服務部署地區的線上遷移服務內網網域名稱。例如,您當前控制台在華北2(北京)地區,則此代理必須可以訪問線上遷移服務華北2(北京)地區的內網網域名稱cn-beijing.mgw-tc-internal.aliyuncs.com。建議您使用與遷移服務部署地區的ECS部署代理程式。

    部署方式

    代理的部署方式。目前只支援獨立進程部署方式。

    通道

    代理所屬的通道,一個代理只允許關聯一個通道,代理的頻寬受通道總頻寬影響。

    例如:名稱為tunnel-1的通道,設定最高頻寬為10 Gbit/s,tunnel-1關聯3個代理,分別為agent-1agent-2agent-3,則3個代理的總頻寬之和最高為10 Gbit/s。如果agent-1設定3 Gbit/s的頻寬,則agent-2agent-3僅有7 Gbit/s的頻寬可用,請提前規劃並謹慎分配頻寬。

  3. 產生部署代理程式指令碼。具體操作,請參見產生部署代理程式指令碼

說明

關於代理的更多資訊,請參見代理管理

步驟四:建立源地址

  1. 在左側導覽列,選擇線上遷移服務>地址管理,單擊建立地址

  2. 建立地址面板,配置如下參數,然後單擊確定

    參數

    是否必選

    說明

    名稱

    輸入來源資料位址名稱。名稱命名規則如下:

    • 名稱不可為空,長度為3~63個字元。

    • 支援英文小寫字母、數字和特殊字元短劃線(-)和底線(_),且區分大小寫。

    • UTF-8編碼不能以短劃線(-)和底線(_)開頭。

    類型

    選擇Alibaba OSS

    地區

    選擇源地址所在的地區,例如華東1(杭州)

    授權角色

    儲存桶(Bucket)

    輸入當前控制台所在帳號下待遷移資料所在的儲存桶(Bucket)名稱。

    代理

    選擇需要使用的代理名稱。

    重要
    • 僅通過專線或VPN遷移資料上雲、自建儲存資料移轉上雲需要使用該參數。

    • 指定通道下,最多可同時選擇30個代理。

步驟五:建立目的地址

  1. 在左側導覽列,選擇線上遷移服務 > 地址管理,單擊建立地址

  2. 建立地址面板,配置如下參數,然後單擊確定。

    參數

    是否必選

    說明

    名稱

    輸入目的資料位址名稱。名稱命名規則如下:

    • 名稱不可為空,長度為3~63個字元。

    • 支援英文小寫字母、數字和特殊字元短劃線(-)和底線(_),且區分大小寫。

    • UTF-8編碼不能以短劃線(-)和底線(_)開頭。

    類型

    選擇LocalFS

    待遷移目錄

    您可以指定資料路徑首碼將來源資料遷移至指定目錄下。

    請使用絕對路徑,必須以正斜線(/)開頭和結尾,不支援環境變數和特殊字元。

    例如,設定來源資料地址首碼為/example/src/,此路徑下有檔案example.jpg,設定目的資料地址首碼為example/dest/,則遷移後檔案example.jpg的完整路徑為example/dest/example.jpg

    通道

    選擇需要使用的通道名稱。

    重要
    • 僅通過專線或VPN遷移資料上雲、自建儲存資料移轉上雲需要使用該參數。

    • 目的資料地址是LOCALFS的以及需要走專線(金融雲、專有雲等)的情境需要關聯代理。

    代理

    選擇需要使用的代理名稱。

    重要
    • 僅通過專線或VPN遷移資料上雲、自建儲存資料移轉上雲需要使用該參數。

    • 指定通道下,最多可同時選擇30個代理。

步驟六:建立遷移任務

  1. 在左側導覽列,選擇線上遷移服務 > 遷移任務,單擊建立任務

  2. 選擇地址頁面,配置如下參數,然後單擊下一步

    參數

    是否必選

    說明

    名稱

    輸入遷移任務名稱。名稱命名規則如下:

    • 名稱不可為空,長度為3~63個字元。

    • 支援英文小寫字母、數字和特殊字元短劃線(-)和底線(_),且區分大小寫。

    • UTF-8編碼不能以短劃線(-)和底線(_)開頭。

    源地址

    選擇已建立的源地址。

    目的地址

    選擇已建立的目的地址。

  3. 配置任務頁面,配置如下參數。

    參數

    是否必選

    說明

    遷移頻寬

    選擇遷移頻寬。

    • 預設:預設最大頻寬,實際速度取決於檔案大小和檔案數量。

    • 指定上限:根據控制台提示指定具體的頻寬上限。

    重要
    • 實際遷移頻寬與資料來源、網路、目的限流、檔案大小等因素有關,不一定能達到指定上限。

    • 請您評估資料來源、遷移目的、業務情況、網路頻寬等,並根據實際情況選擇合理數值,限流不恰當可能會影響業務的正常運行。

    每秒遷移檔案數

    選擇每秒遷移檔案數。

    • 預設:每秒遷移檔案數。

    • 指定上限:根據控制台提示指定具體的每秒遷移檔案數。

    重要
    • 實際遷移頻寬與資料來源、網路、目的限流、檔案大小等因素有關,不一定能達到指定上限。

    • 請您評估資料來源、遷移目的、業務情況、網路頻寬等,並根據實際情況選擇合理數值,限流不當可能會影響業務的正常運行。

    覆蓋方式

    選擇同名檔案的覆蓋方式。

    • 不覆蓋:不遷移該檔案。

    • 全部覆蓋:源地址中的檔案會覆蓋目的地址中的檔案。

    • 根據最後修改時間覆蓋

      • 當源地址中的檔案最後修改時間晚於目的地址中的檔案最後修改時間時,目的地址中的檔案會被覆蓋。

      • 當源地址中的檔案最後修改時間與目的地址中的檔案最後修改時間相同時,若二者的Size和Content-Type有一項不同,則目的地址中的檔案會被覆蓋。

    • 警告
      • 根據最後修改時間覆蓋無法嚴格保證一定不會覆蓋更新的檔案,存在舊檔案覆蓋新檔案的風險。

      • 若您選擇根據最後修改時間覆蓋的覆蓋方式,請務必確保源端檔案能返回最後修改時間SizeContent-Type等資訊,否則覆蓋策略可能失效,產生非預期的遷移結果。

      • 選擇不覆蓋根據最後修改時間覆蓋時,為執行後續覆蓋判斷,會分別請求源端和目的端meta資訊一次,因此會在源端和目的端產生對應的請求費用。

    遷移報告

    遷移報告推送方式。

    • 不推送(預設):不推送遷移報告至目的LocalFS。

    • 推送:將遷移報告推送至目的LocalFS,詳細路徑請參考後續操作

    重要
    • 遷移報告推送會佔用目的端一定的儲存空間。

    • 遷移報告的推送存在一定的時間延時,請您耐心等待遷移報告的產生。

    • 每個任務執行記錄都有一個唯一的ID,請注意,遷移報告只會推送一次,請謹慎刪除!

    遷移日誌

    遷移日誌推送方式。

    • 不推送(預設):不推送遷移日誌。

    • 推送:將遷移日誌推送至Log ServiceSLS,可在SLS上查看遷移日誌。

    • 僅推送檔案錯誤記錄檔:僅將錯誤遷移日誌推送至Log ServiceSLS,可在SLS上查看錯誤遷移日誌。

    當選擇推送僅推送檔案錯誤記錄檔時,線上遷移服務會在Log ServiceSLS中建立名稱為aliyun-oss-import-log-阿里雲帳號ID-當前遷移服務部署地區的Project,例如aliyun-oss-import-log-137918634953****-cn-hangzhou。

    重要

    請務必完成以下操作後,再選擇推送僅推送檔案錯誤記錄檔,否則可能會導致遷移任務異常。

    • 已開通SLS服務。

    • 已在Log Service授權項授權頁面中同意授權。

    Log Service授權

    遷移日誌選擇推送僅推送檔案錯誤記錄檔時出現該選項。

    單擊授權進入雲資源訪問授權頁面,頁面會對應建立AliyunOSSImportSlsAuditRole角色,並對角色做授權,請單擊同意授權完成授權。

    檔案名稱

    檔案名稱過濾器。

    支援包含排除兩種過濾規則,請參見RE2庫的Regex文法(僅支援部分運算式文法)。例如:

    • .*\.jpg$表示以.jpg結尾的所有檔案。

    • ^file.*預設表示根目錄下以file開頭的所有檔案。

      如果來源資料地址設定了首碼,例如來源資料地址首碼為data/to/oss/,則需要使用^data/to/oss/file.*來匹配指定首碼下以file開頭的所有檔案。

    • .*/picture/.*表示匹配某一級為picture的子目錄。

    重要
    • 當過濾規則為包含時,符合規則的檔案都會被遷移,如果有多條規則,符合任意一個條件的檔案都會被遷移。

      例如2個檔案picture.jpgpicture.png,設定一條包含規則過濾.*\.jpg$,此時只會遷移picture.jpg檔案,如果同時也設定了包含規則過濾.*\.png$,則2個檔案都會被遷移。

    • 當過濾規則為排除時,符合規則的檔案都不會被遷移,如果有多條規則,符合任意一個條件的檔案都不會被遷移。

      例如2個檔案picture.jpgpicture.png,設定一條排除規則過濾.*\.jpg$,此時只會遷移picture.png,如果同時也設定了排除規則過濾.*\.png$,則2個檔案都不會被遷移。

    • 排除規則優先。當一個檔案既在排除規則中又在包含規則中,則檔案不會被遷移。

      例如檔案file.txt,設定排除規則過濾.*\.txt$檔案,並同時設定包含規則過濾file.*,則此時file.txt檔案不會被遷移。

    檔案修改時間

    檔案最後一次修改時間過濾器。

    可指定檔案最後一次修改時間作為過濾規則。如果指定了時間範圍,則只遷移檔案最後一次修改時間在指定時間範圍內的檔案,具體規則如下。

    • 當僅指定開始時間為2019年01月01日,不指定結束時間時,則只遷移檔案最後一次修改時間晚於等於2019年01月01日的檔案。

    • 當僅指定結束時間為2022年01月01日,不指定開始時間時,則只遷移檔案最後一次修改時間早於等於2022年01月01日的檔案。

    • 當指定開始時間為2019年01月01日,結束時間為2022年01月01日,則遷移檔案最後一次修改時間範圍在晚於等於2019年01月01日,且早於等於2022年01月01日的檔案。

    是否遷移

    是否遷移特殊類型的實體。勾選表示啟用遷移,不勾選表示禁用。

    軟連結:

    • 啟用時,源地址中所有的Symlink對象也會被加入待遷移隊列,同時會被統計到遷移任務的【檔案數】、【儲存量】欄位。會在目的地址中建立對應的軟連結檔案,並將源Symlink對象的UserMeta中(支援遷移)的屬性設定到軟連結檔案的屬性中,軟連結檔案的Target屬性值取決於【是否轉換Target】選項。

    • 禁用時,源地址中所有的Symlink對象將會被忽略,不會被統計到遷移任務的【檔案數】、【儲存量】欄位。

    重要

    任何情況下,都不會額外遷移源地址中Symlink對象所指向的目標對象(除非該目標對象也在本次遷移範圍內)。

    是否轉換Target

    對源地址中軟連結檔案的Target屬性進行轉換,以儘可能使遷移後的軟連結檔案仍可正常指向其目標檔案。勾選表示啟用轉換,不勾選表示禁用轉換。

    重要
    • 此選項僅在啟用遷移軟連結時才生效。

    • 無論是否轉換Target,遷移總是不會檢查目標檔案是否存在、目標檔案類型是否合法以及目標檔案是否有存取權限等。

    啟用時,執行字串替換操作,將源軟連結的Target屬性中的SrcPrefix(若匹配)替換成DestPrefix,並將替換後的結果值設定到目的軟連結檔案的Target屬性上。

    說明

    樣本:假設遷移任務配置的SrcPrefix="cloud_base/",DestPrefix="/mnt/nas1/",cloud_base/links/a.lnk是源地址下的一個Symlink對象,假設其Target屬性:

    • 為"cloud_base/data/a.txt"。則替換後的最終Target結果值為"/mnt/nas1/data/a.txt"。

    • 為"cloud_outer/data/a.txt"。則替換未能匹配,最終Target結果值仍為"cloud_outer/data/a.txt"。

    禁用時:不轉換,將源軟連結的Target屬性原始值設定到目的軟連結檔案的Target屬性上。

    執行時間

    重要
    1. 正在遷移中的任務,在下一個指定時間前仍未結束本輪遷移,則會在本輪遷移結束後,自動順延至下一個指定時間啟動任務,直至完成指定次數的遷移。

    2. 遷移任務並發數量限制:遷移服務部署地區選擇中國香港或中國內地時最多支援10個任務並發,選擇海外地區時最多支援5個,超出限制後可能導致定時任務調度無法按預期執行。

    確定遷移任務的執行時間。

    • 立即執行:立即執行當前任務。

    • 指定執行時間:指定任務執行期間每天的執行時間段。預設情況下,任務將在指定的起始時間啟動,在指定的停止時間暫停。

    • 周期調度:通過調整執行頻率和執行次數來啟動任務。

      • 執行頻率:支援以每小時、每天、每周、一周中某些天、自訂等5種頻率,具體請查看執行頻率參考

      • 執行次數:指定任務的執行次數,如不設定則預設執行一次,最大執行次數請參考控制台提示。

    重要

    可隨時手動啟動和暫停任務,不受自訂執行時間的影響。

  4. 閱讀線上遷移服務合約,選中我已理解並確認,合規承諾聲明且當遷移任務完成時,我有確認遷移資料一致性的義務和責任,然後單擊下一步

  5. 檢查配置資訊,確認無誤後,單擊確定,等待遷移任務執行。

執行頻率參考

執行頻率

說明

樣本

每小時

選擇以每小時為頻率,可搭配執行次數一起使用。

目前時間為8:05分,指定每小時為頻率,執行3次任務,則會在下一個整點9點鐘開始第一次任務。

  • 若任務在下一個整點前結束,則會在下一個整點10點鐘開始第二次任務,以此類推直到完成指定次數的遷移。

  • 若任務在下一個整點尚未結束,在當日12:30分結束,則會在下一個整點13點鐘開始第二次遷移,以此類推直到完成指定次數的遷移。

每天

選擇以每天為頻率時,需設定0~23小時中任意整點時間啟動任務,可搭配執行次數一起使用。

目前時間為8:05分,指定每天10點,執行5次,會在當天10點開始第一次任務。

  • 若任務在次日10點前結束,則會在次日10點開始第二次任務,以此類推直到完成指定次數的遷移。

  • 若任務在次日10點前尚未結束,在次日12:05分結束,則會在第三日的10點開始第二次任務,以此類推直到完成指定次數的遷移。

每周

選擇每周時,需指定周內任意一天,並設定0~23小時中任意整點時間啟動任務,可搭配執行次數一起使用。

目前時間為周一8:05分,指定每周一的10點,執行10次,則會在當天10點時開始第一次任務。

  • 若任務在下周一10點前結束,則會在下周一10點開始第二次任務,以此類推直到完成指定次數的遷移。

  • 若任務在下周一10點前尚未結束,實際在下周一12:05分結束,則會在下下周的10點開始第二次任務,以此類推直到完成指定次數的遷移。

一周中某些天

選擇一周中某些天時,支援選擇周內任意幾天,並設定0~23小時中任意整點時間啟動任務。

當前為周三8:05,指定每周一、三、五的10點,則會在當天的10點時開始第一次任務。

  • 若任務在周五10點前結束,則會在周五10點開始第二次任務,以此類推直到完成指定次數的遷移。

  • 若任務在周五10點前尚未結束,實際在下周一12:05分結束,則會在下周三的10點開始第二次任務,以此類推直到完成指定次數的遷移。

自訂

使用Cron運算式自訂設定任務啟動時間。

說明

Cron運算式由6個欄位組成,每個欄位之間使用空格分隔,依次表示任務的執行時間規則:秒 分鐘 小時 日 月 星期。

以下Cron運算式樣本僅供參考,更多請參照Cron運算式產生器:

  • 0 0 * * * *:表示每小時的0分0秒執行任務。

  • 0 0 0/1 * * ?:表示每隔1小時執行任務(最小間隔1小時)。

  • 0 0 12 * * MON-FRI:表示每周一至周五的12點執行任務。

  • 0 30 8 1,15 * *:表示每月1日和15日的8點30分執行任務。

步驟七:校正資料

遷移服務僅負責資料的遷移,無法保證資料的一致性和完整性。遷移任務完成後,請您全量校正遷移的資料,務必自行做好源端和目的端資料一致性校正。

警告

請您務必在遷移任務完成後,校正目的端遷移資料。您在刪除來源資料前,未校正目的端遷移資料無誤,導致資料丟失所引起的一切損失和後果均由您自行承擔。