本文介紹資料移轉的注意事項、遷移限制說明和操作步驟。
注意事項
使用線上遷移服務遷移資料時需要注意以下事項:
-
建立來源資料地址時,待迁移目录請使用絕對路徑,必須以正斜線(/)開頭和結尾,不支援環境變數和特殊字元。
-
建立來源資料地址時,需確保待迁移目录存在且正確有效。
-
線上遷移會佔用源地址和目的地址的資源,可能會影響業務正常運行。若您的業務比較重要,請提前做好評估後對遷移任務設定限速,或在空閑時間啟動遷移任務。
-
線上遷移前會檢查源地址和目的地址的檔案,但是若您源和目的地址有相同檔案名稱的檔案,且在遷移任務中配置了覆蓋方式為覆蓋,遷移時會直接覆蓋目的地址的檔案。若兩個檔案內容不同,必須變更檔名或做好備份。
-
線上遷移會保留源檔案的最後修改時間屬性,如果目的Bucket設定了生命週期規則,且遷移後檔案處於該生命週期規則生效的時間範圍內,則該檔案可能會在規則生效時被刪除或轉為指定的歸檔類型。
遷移限制說明
-
若您來源資料地址中有空目錄、軟連結檔案或目錄、字元裝置檔案或塊裝置檔案、Socket檔案和管道檔案,此類資料均不會被遷移。
-
若您來源資料地址存在永久連結關係,遷移後會變成普通檔案。
-
不支援檔案父目錄屬性的遷移。
-
SUID、SGID、SBID等檔案許可權不支援遷移。
-
遷移LocalFS資料至阿里雲OSS的屬性限制如下:
-
支援遷移的屬性:ModifyTime -> X-Oss-Meta-Mtime(OSS)、Permissions -> X-Oss-Meta-Perms(OSS)、Uid:Gid -> X-Oss-Meta-Owner(OSS)
說明-
Permissions:包含讀、寫、執行等9個許可權。
-
Uid:Gid:使用者ID:使用者所屬分組ID,中間以半形冒號(:)做分隔字元。
-
-
不支援遷移的屬性(包括但不限於):AccessTime、ChangeTime、Attr、Acl等。
說明不支援遷移的屬性包括但不限於以上列舉的內容,其他未列舉的屬性行為暫無法確定,以實際遷移完成的內容為準。
-
步驟一:選擇地區
-
使用建立的RAM使用者登入阿里雲線上遷移服務管理主控台。
-
在頂部功能表列左上方處,選擇代理所在的地區。
重要-
不同地區內的通道、代理、資料地址和遷移任務不通用,請謹慎選擇。
-
優先選擇代理所在的地區。如果沒有代理所在地對應的地區,請儘可能選擇接近代理所在的地區建立遷移任務。
-
跨境遷移時,推薦您開啟傳輸加速,提高遷移速度。開啟了傳輸加速的Bucket會收取傳輸加速費用。關於傳輸加速的更多資訊,請參見通過傳輸加速訪問OSS。
-
步驟二:建立通道
-
在左側導覽列,選擇在线迁移服务> 通道管理,單擊新建通道。
-
在新建通道對話方塊,配置如下參數,然後單擊确定。
參數
是否必填
說明
名稱
是
通道的名稱。
-
通道名稱不可為空,最大長度為100個字元。
-
支援英文大小寫字母、數字和特殊字元短劃線(-)和底線(_)。
带宽上限
是
通道可以使用的頻寬上限。
-
不填寫:預設值為0,表示不限制頻寬。
-
設定該值:取值範圍請參考控制台提示。
重要可用頻寬取決於網路鏈路的實際頻寬。
请求数/秒
是
通道每秒請求數上限。
-
不填寫:預設值為0,表示不限制每秒請求數。
-
設定該值:取值範圍請參考控制台提示。
警告請根據資料來源儲存系統的能力認真評估,過大會影響業務正常運行,建議根據控制台提示設定。
-
關於通道的更多資訊,請參見通道管理。
步驟三:建立代理
-
如果LocalFS為本地檔案,則只能部署1個代理。
-
如果LocalFS為NAS等遠程檔案系統,則可以部署多個代理,請確保NAS已掛載到名稱相同的目錄。
-
在左側導覽列,選擇在线迁移服务> 代理管理,單擊新建代理。
-
在新建代理對話方塊,配置如下參數,然後單擊确定。
參數
是否必填
說明
名稱
是
代理名稱。
-
代理名稱不可為空,長度為3~63個字元。
-
支援英文小寫字母、數字和特殊字元短劃線(-)和底線(_),且區分大小寫。
-
UTF-8編碼並且不能以短劃線(-)和底線(_)開頭。
-
网络类型
是
代理的網路連接方式,包含如下兩種:
-
VPC(推薦):代理通過VPC連到線上遷移服務端。此方式要求部署代理程式的機器能夠訪問線上遷移服務對應地區的內網網域名稱。例如,若您在華北2(北京)地區使用遷移服務,則代理機器必須能夠訪問線上遷移服務華北2(北京)地區的內網網域名稱{TunnelId}.cn-beijing.mgw-tc-internal.aliyuncs.com。建議您使用與線上遷移服務控制台相同地區的ECS執行個體來部署代理程式。
-
公網:代理通過公網連到線上遷移服務端。此方式要求部署代理程式的機器能夠訪問線上遷移服務對應地區的公網網域名稱。例如,若您在華北2(北京)地區使用遷移服務,則代理機器必須能夠訪問線上遷移服務華北2(北京)地區的公網網域名稱{TunnelId}.cn-beijing.mgw-tc.aliyuncs.com。
說明-
TunnelId表示通道ID。
-
您可以通過ping命令測試代理程式到遷移服務的連通性。
部署方式
是
代理的部署方式。目前只支援獨立進程部署方式。
通道
是
代理所屬的通道,一個代理只允許關聯一個通道,代理的頻寬受通道總頻寬影響。
例如:名稱為tunnel-1的通道,設定最高頻寬為10 Gbit/s,tunnel-1關聯3個代理,分別為agent-1,agent-2和agent-3,則3個代理的總頻寬之和最高為10 Gbit/s。如果agent-1設定3 Gbit/s的頻寬,則agent-2和agent-3僅有7 Gbit/s的頻寬可用,請提前規劃並謹慎分配頻寬。
-
-
產生部署代理程式指令碼。具體操作,請參見產生部署代理程式指令碼。
關於代理的更多資訊,請參見代理管理。
步驟四:建立源地址
-
如果LocalFS來源資料為原生本地檔案,則只允許部署一個代理。
-
如果LocalFS來源資料為NAS掛載的本地檔案,並同時掛載到多台機器上,則請確保NAS已掛載到名稱相同的目錄,在建立資料地址時,待遷移目錄請填寫NAS掛載的目錄。
-
在左側導覽列,選擇在线迁移服务> 地址管理,單擊建立地址。
-
在建立地址面板,配置如下參數,然後單擊确定。
參數
是否必選
說明
名稱
是
輸入來源資料位址名稱。名稱命名規則如下:
-
名稱不可為空,長度為3~63個字元。
-
支援英文小寫字母、數字和特殊字元短劃線(-)和底線(_),且區分大小寫。
-
UTF-8編碼不能以短劃線(-)和底線(_)開頭。
類型
是
選擇LocalFS。
待迁移目录
是
您可以指定待遷移目錄的路徑。請使用絕對路徑,必須以正斜線(/)開頭和結尾,不支援環境變數和特殊字元。
例如,設定來源資料地址首碼為
/example/src/,此路徑下有檔案example.jpg,設定目的資料地址首碼為example/dest/,則遷移後檔案example.jpg的完整路徑為example/dest/example.jpg。重要-
如果資料地址關聯了多台代理,需確保每個代理都能訪問到該目錄,否則會導致資料漏遷移。
-
如果LocalFS源為NAS掛載的本地檔案, 並同時掛載到多台機器上,請確保NAS掛載到名稱相同的本地目錄上,在建立資料地址時,待遷移目錄填寫NAS掛載的本地目錄名稱。
通道
是
選擇需要使用的通道名稱。
重要-
僅通過專線或VPN遷移資料上雲、自建儲存資料移轉上雲需要使用該參數。
-
目的資料地址是LocalFs的以及需要走專線(金融雲、專有雲等)的情境需要關聯代理。
代理
是
選擇需要使用的代理名稱。
重要-
僅通過專線或VPN遷移資料上雲、自建儲存資料移轉上雲需要使用該參數。
-
指定通道下,最多可同時選擇 200 個代理。
-
步驟五:建立目的地址
-
在左側導覽列,選擇在线迁移服务 > 地址管理,單擊建立地址。
-
在建立地址面板,配置如下參數,然後單擊確定。
參數
是否必選
說明
名稱
是
輸入目的資料位址名稱。名稱命名規則如下:
-
名稱不可為空,長度為3~63個字元。
-
支援英文小寫字母、數字和特殊字元短劃線(-)和底線(_),且區分大小寫。
-
UTF-8編碼不能以短劃線(-)和底線(_)開頭。
類型
是
選擇Alibaba OSS。
区域
否
選擇目的地址所在的地區,例如华东1(杭州)。
授權角色
是
-
目的Bucket歸屬於線上遷移控制台帳號
-
目的Bucket不屬於線上遷移控制台帳號
儲存桶(Bucket)
是
輸入當前控制台所在帳號下遷移後資料所在的儲存桶(Bucket)名稱。
代理
否
選擇需要使用的代理名稱。
重要-
僅通過專線或VPN遷移資料上雲、自建儲存資料移轉上雲需要使用該參數。
-
指定通道下,最多可同時選擇 200 個代理。
-
步驟六:建立遷移任務
-
在左側導覽列,選擇在线迁移服务 > 迁移任务,單擊新建任务。
-
在选择地址頁面,配置如下參數,然後單擊下一步。
參數
是否必選
說明
名称
是
輸入遷移任務名稱。名稱命名規則如下:
-
名稱不可為空,長度為3~63個字元。
-
支援英文小寫字母、數字和特殊字元短劃線(-)和底線(_),且區分大小寫。
-
UTF-8編碼不能以短劃線(-)和底線(_)開頭。
源地址
是
選擇已建立的源地址。
目的地址
是
選擇已建立的目的地址。
-
-
在配置任务頁面,配置如下參數。
參數
是否必選
說明
基礎配置
迁移带宽
否
選擇遷移頻寬。
-
默认:預設最大頻寬,實際速度取決於檔案大小和檔案數量。
-
指定上限:根據控制台提示指定具體的頻寬上限。
重要-
實際遷移頻寬與資料來源、網路、目的限流、檔案大小等因素有關,不一定能達到指定上限。
-
請您評估資料來源、遷移目的、業務情況、網路頻寬等,並根據實際情況選擇合理數值,限流不恰當可能會影響業務的正常運行。
每秒迁移文件数
否
選擇每秒遷移檔案數。
-
默认:每秒遷移檔案數。
-
指定上限:根據控制台提示指定具體的每秒遷移檔案數。
重要-
實際遷移頻寬與資料來源、網路、目的限流、檔案大小等因素有關,不一定能達到指定上限。
-
請您評估資料來源、遷移目的、業務情況、網路頻寬等,並根據實際情況選擇合理數值,限流不當可能會影響業務的正常運行。
覆盖方式
否
選擇同名檔案的覆蓋方式。
-
不覆盖:不遷移該檔案。
-
全部覆盖:源地址中的檔案會覆蓋目的地址中的檔案。
-
根据最后修改时间覆盖:
-
當源地址中的檔案最後修改時間晚於目的地址中的檔案最後修改時間時,目的地址中的檔案會被覆蓋。
-
當源地址中的檔案最後修改時間與目的地址中的檔案最後修改時間相同時,若二者的Size和Content-Type有一項不同,則目的地址中的檔案會被覆蓋。
-
-
根据最后修改时间覆盖無法嚴格保證一定不會覆蓋更新的檔案,存在舊檔案覆蓋新檔案的風險。
-
若您選擇根据最后修改时间覆盖的覆蓋方式,請務必確保源端檔案能返回最後修改時間、Size、Content-Type等資訊,否則覆蓋策略可能失效,產生非預期的遷移結果。
-
選擇不覆蓋或根據最後修改時間覆蓋時,為執行後續覆蓋判斷,會分別請求源端和目的端meta資訊一次,因此會在源端和目的端產生對應的請求費用。
警告審計方式
迁移报告
是
遷移報告推送方式。
-
不推送(預設):不推送遷移報告至目的bucket。
-
推送:將遷移報告推送至目的bucket,詳細路徑請參考後續操作。
重要-
遷移報告推送會佔用目的端一定的儲存空間。
-
遷移報告的推送可能會存在一定的時間延遲,請您耐心等待遷移報告的產生。
-
每個任務執行記錄都有一個唯一的ID,請注意,遷移報告只會推送一次,請謹慎刪除!
迁移日志
是
遷移日誌推送方式。
-
不推送(預設):不推送遷移日誌。
-
推送:將遷移日誌推送至Log ServiceSLS,可在SLS上查看遷移日誌。
-
仅推送文件错误日志:僅將錯誤遷移日誌推送至Log ServiceSLS,可在SLS上查看錯誤遷移日誌。
當選擇推送或仅推送文件错误日志時,線上遷移服務會在Log ServiceSLS中建立名稱為aliyun-oss-import-log-阿里雲帳號ID-當前遷移服務部署地區的Project,例如aliyun-oss-import-log-137918634953****-cn-hangzhou。
重要請務必完成以下操作後,再選擇推送或仅推送文件错误日志,否則可能會導致遷移任務異常。
-
已開通SLS服務。
-
已在日志服务授权項授權頁面中同意授權。
日志服务授权
否
當迁移日志選擇推送或仅推送文件错误日志時出現該選項。
單擊授权進入雲資源訪問授權頁面,頁面會對應建立AliyunOSSImportSlsAuditRole角色,並對角色做授權,請單擊同意授權完成授權。
過濾器
文件名
否
檔案名稱過濾器。
支援包含和排除兩種過濾規則,請參見RE2庫的Regex文法(僅支援部分運算式文法)。例如:
-
.*\.jpg$表示以.jpg結尾的所有檔案。
-
^file.*預設表示根目錄下以file開頭的所有檔案。
如果來源資料地址設定了首碼,例如來源資料地址首碼為data/to/oss/,則需要使用^data/to/oss/file.*來匹配指定首碼下以file開頭的所有檔案。
-
.*/picture/.*表示匹配某一級為picture的子目錄。
重要-
當過濾規則為包含時,符合規則的檔案都會被遷移,如果有多條規則,符合任意一個條件的檔案都會被遷移。
例如2個檔案picture.jpg和picture.png,設定一條包含規則過濾.*\.jpg$,此時只會遷移picture.jpg檔案,如果同時也設定了包含規則過濾.*\.png$,則2個檔案都會被遷移。
-
當過濾規則為排除時,符合規則的檔案都不會被遷移,如果有多條規則,符合任意一個條件的檔案都不會被遷移。
例如2個檔案picture.jpg和picture.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日的檔案。
是否遷移
否
是否遷移特殊類型的實體。勾選表示啟用遷移,不勾選表示禁用。
目錄:
-
啟用時,源地址中掃描到的所有目錄自身也會被加入待遷移隊列,同時會被統計到遷移任務的【檔案數】、【儲存量】欄位。會在目的地址建立對應的'/'結尾的Null 物件,並將來源目錄(支援遷移)的屬性設定到目的對象的UserMeta中。
-
禁用時,源地址中掃描到的所有目錄自身將會被忽略,不會被統計到遷移任務的【檔案數】、【儲存量】欄位。不會在目的地址建立對應的'/'結尾的Null 物件。
軟連結:
-
啟用時,源地址中所有軟連結類型的檔案自身也會被加入待遷移隊列,同時會被統計到遷移任務的【檔案數】、【儲存量】欄位。會在目的地址中建立對應的Symlink對象,並將源軟連結檔案(支援遷移)的屬性設定到Symlink對象的UserMeta中。Symlink對象的Target屬性值取決於【是否轉換Target】選項。
-
禁用時,源地址中所有軟連結類型的檔案將會被忽略,不會被統計到遷移任務的【檔案數】、【儲存量】欄位。
重要任何情況下,都不會額外遷移源地址中軟連結檔案所指向的目標檔案或目錄(除非該目標檔案或目錄也在本次遷移範圍內)。
遷移配置
是否轉換Target
否
對源地址中軟連結檔案的Target屬性進行轉換,以儘可能使遷移後的Symlink對象仍可正常指向其目標對象。勾選表示啟用轉換,不勾選表示禁用轉換。
重要-
此選項僅在啟用遷移軟連結時才生效。
-
無論是否轉換Target,遷移總是不會檢查目標對象是否存在、目標物件類型是否合法以及目標對象是否有存取權限等。
啟用時,先(以此軟連結所在目錄為基準)將Target屬性解析成最短絕對路徑(字元長度最短的等效路徑,AbsTarget),然後執行字串替換操作,將AbsTarget中的SrcPrefix(若匹配)替換成DestPrefix,並將替換後的結果值設定到目的Symlink對象的Target屬性上。
說明樣本:假設遷移任務配置的SrcPrefix="/mnt/nas1/",DestPrefix="cloud_base/",/mnt/nas1/links/a.lnk是源地址下的一個軟連結類型檔案,假設其Target屬性:
-
為"../data/./a.txt"。則解析後的最短絕對路徑為"/mnt/nas1/data/a.txt"。則替換後的最終Target結果值為"cloud_base/data/a.txt"。
-
為"/mnt/nas1/verbose/../data/./a.txt"。則解析後的最短絕對路徑為"/mnt/nas1/data/a.txt",替換後的最終Target結果值為"cloud_base/data/a.txt"。
-
為"/root/outer/../data/./a.txt"。則解析後的最短絕對路徑為"/root/data/a.txt",替換未能匹配,最終Target結果值仍為"/root/data/a.txt"。
禁用時,不轉換,將源軟連結的Target屬性原始值設定到目的Symlink對象的Target屬性上。
檔案最後修改時間(是否保留)
是
是否保留源檔案的最後修改時間。
-
保留(預設):源端檔案的最後修改時間將被設定到目的端。
-
不保留:不會被設定。
指定目的檔案的儲存類型
否
是否指定目的檔案的儲存類型。
-
指定:遷移到目的端的檔案將會被設定成您指定的檔案儲存體類型。可指定的儲存類型如下:
-
標準儲存
-
低頻儲存
-
Archive Storage
-
冷Archive Storage
-
深度冷Archive Storage
-
-
不指定(預設):不會被設定,遷移到目的端的檔案與目標端預設的儲存類型保持一致。
重要-
只有在已開通白名單存取權限的情況下,該選項才會顯示在頁面上,並允許使用者進行配置。
-
目前僅目的端為 OSS 的任務支援該選項。
任務調度
執行時間
否
重要-
正在遷移中的任務,在下一個指定時間前仍未結束本輪遷移,則會在本輪遷移結束後,自動順延至下一個指定時間啟動任務,直至完成指定次數的遷移。
-
遷移任務並發數量限制:遷移服務部署地區選擇中國香港或中國內地時最多支援10個任務並發,選擇海外地區時最多支援5個,超出限制後可能導致定時任務調度無法按預期執行。
確定遷移任務的執行時間。
-
立即执行:立即執行當前任務。
-
指定执行时间:指定任務執行期間每天的執行時間段。預設情況下,任務將在指定的起始時間啟動,在指定的停止時間暫停。
-
周期调度通過調整執行頻率和執行次數來啟動任務。
-
執行頻率:支援以每小時、每天、每周、一周中某些天、自訂等5種頻率,具體請查看執行頻率參考。
-
執行次數:指定任務的執行次數,如不設定則預設執行一次,最大執行次數請參考控制台提示。
-
重要可隨時手動啟動和暫停任務,不受自訂執行時間的影響。
-
-
閱讀線上遷移服務合約,選中我已理解並確認,合規承諾聲明且當遷移任務完成時,我有確認遷移資料一致性的義務和責任,然後單擊下一步。
-
檢查配置資訊,確認無誤後,單擊确定,等待遷移任務執行。
執行頻率參考
執行頻率 | 說明 | 樣本 |
每小時 | 選擇以每小時為頻率,可搭配最大執行輪次一起使用。 | 目前時間為8:05,指定每小時為頻率,執行3次任務,則會在下一個整點9點鐘開始第一次任務。
|
每天 | 選擇以每天為頻率時,需設定0~23小時中任意整點時間啟動任務,可搭配最大執行輪次一起使用。 | 目前時間為8:05,指定每天10點,執行5次,會在當天10點開始第一次任務。
|
每周 | 選擇每周時,需指定周內任意一天,並設定0~23小時中任意整點時間啟動任務,可搭配最大執行輪次一起使用。 | 目前時間為周一8:05分,指定每周一的10點,執行10次,則會在當天10點時開始第一次任務
|
一周中某些天 | 選擇一周中某些天時,支援選擇周內任意幾天,並設定0~23小時中任意整點時間啟動任務 | 當前為周三8:05,指定每周一、三、五的10點,則會在當天的10點時開始第一次任務。
|
自訂 | 使用Cron運算式自訂設定任務啟動時間 | 說明 Cron運算式由6個欄位組成,每個欄位之間使用空格分隔,依次表示任務的執行時間規則:秒、分鐘、小時、日、月、星期,最小間隔1小時。 以下Cron運算式樣本僅供參考,更多請參照Cron運算式產生器:
|
步驟七:校正資料
遷移服務僅負責資料的遷移,無法保證資料的一致性和完整性。遷移任務完成後,請您全量校正遷移的資料,務必自行做好源端和目的端資料一致性校正。
請您務必在遷移任務完成後,校正目的端遷移資料。您在刪除來源資料前,未校正目的端遷移資料無誤,導致資料丟失所引起的一切損失和後果均由您自行承擔。