Server Migration Center (SMC)容器化遷移功能支援不停機遷移,可將物理機、主流虛擬化環境(VMware/Xen/KVM/Hyper-V)及多雲平台(阿里雲/AWS/Azure/GCP/騰訊雲等)的伺服器和業務應用程式容器化,並產生鏡像推送至阿里雲Container RegistryACR,最終在Container ServiceKubernetes版ACK完成應用部署,從而實現伺服器和應用的容器化遷移。
簡介
伺服器遷移至容器鏡像功能現已升級,增加了對伺服器上的特定應用遷移至容器鏡像的支援,即應用移轉模式。現支援整機移轉模式和應用移轉模式。
SMC通過整機遷移和應用遷移方式,將伺服器和業務應用程式容器化後並推送至阿里雲Container RegistryACR,最終在Container ServiceKubernetes版ACK完成應用部署,從而實現伺服器和應用的容器化遷移。以下為該功能相關的產品服務關係及遷移流程示意圖。
在原始伺服器平台安裝SMC用戶端。
遷移配置並開始遷移,遷移完成後自動產生容器鏡像,並將容器鏡像存放至Container RegistryACR個人版。支援整機移轉模式和應用移轉模式。
在Container ServiceKubernetes上部署應用,即可完成遷移。
阿里雲Container RegistryACR(Alibaba Cloud Container Registry)個人版面向個人開發人員,提供基礎鏡像託管和構建服務。
阿里雲Container ServiceKubernetes版ACK(Container Service for Kubernetes)支援企業級Kubernetes容器化應用的生命週期管理,讓您輕鬆高效地在雲端運行Kubernetes容器化應用。
遷移情境
整機遷移
支援將物理機/虛擬機器/雲平台伺服器上系統及所有應用資料容器化後產生鏡像並推送至阿里雲Container RegistryACR。適用於系統級災備情境。
應用遷移
支援將物理機/虛擬機器/雲平台伺服器上特定應用容器化後產生鏡像並推送至阿里雲Container RegistryACR。適用於微服務容器化改造情境。
重要應用遷移功能處於邀測階段,請聯絡我們提交申請開通白名單後使用。支援的應用版本包括:
Java Tomcat
Java Tomee
Java JBoss(獨立模式)
ASP.NET Core 3.1及ASP.NET 5/6/7/8版本
使用限制
僅x86架構Linux作業系統的伺服器支援遷移為容器鏡像。支援作業系統版本包括:
CentOS
Ubuntu
RedHat
Alibaba Cloud Linux
應用遷移功能需要開通白名單使用。若有需要,請聯絡我們。支援的應用版本包括:
Java Tomcat
Java TomEE
Java JBoss(獨立模式)
ASP.NET Core 3.1及.NET 5/6/7/8版本
僅支援遷移至Container RegistryACR個人版執行個體的鏡像倉庫。
容器化遷移當前不支援資料盤遷移,系統預設排除
/mnt目錄及所有資料盤掛載點。遷移產生的目標磁碟僅包含一個預設分區,無需調整現有分區結構。如果資料盤資料需要遷移到阿里雲,可以通過FTP、SCP、手動備份至OSS/NAS等方式進行資料移轉。具體操作,請參見選擇傳輸檔案的方式和命令列工具ossutil 1.0。
應用移轉模式下,遷移過程中不要重啟應用進程,進程ID變化會導致遷移任務失敗。
遷移費用
遷移原理
SMC服務由用戶端和控制台兩部分組成。容器化遷移支援整機移轉模式和應用移轉模式,其原理如下。
整機遷移原理
支援將物理機/虛擬機器/雲平台伺服器上系統及所有應用資料容器化後產生鏡像並推送至阿里雲Container RegistryACR。
不產生分析報告,對系統和應用資料進行少量裁剪後打包整個作業系統應用環境,產生的容器鏡像較大,但能完整保留源系統運行環境,可同時支援多個應用。
應用遷移原理
應用遷移功能需要開通白名單後才可使用。請聯絡我們提交申請開通白名單。支援的應用版本包括:
Java Tomcat
Java Tomee
Java JBoss(獨立模式)
ASP.NET Core 3.1及ASP.NET 5/6/7/8版本
支援將物理機/虛擬機器/雲平台伺服器上特定應用容器化後產生鏡像並推送至阿里雲Container RegistryACR。
對指定應用產生分析報告並據此打包指定應用資料,產出的容器鏡像較小。
遷移原理說明如下:
在原始伺服器中下載並安裝SMC用戶端(如果選擇命令列匯入或者控制台自動匯入遷移源的方式,系統會自動下載並安裝SMC用戶端,無需使用者操作)。
在原始伺服器中運行SMC用戶端,SMC用戶端會通過SMC服務網域名稱將原始伺服器資訊註冊上報到SMC服務端。
SMC服務端建立臨時的中轉執行個體,並在安全性群組放開8080和8703連接埠。
中轉執行個體使用兩個資料盤來完成資料移轉和產生容器鏡像。中轉資料盤1用於存放原始伺服器資料,中轉資料盤2用於存放產生容器鏡像的資料。
SMC用戶端通過串連中轉執行個體的8080連接埠來建立通訊,並通過中轉執行個體的8703連接埠將原始伺服器上磁碟應用及資料轉送到中轉執行個體的資料盤。
如果是應用遷移,會將該應用及相關的資料轉送到中轉執行個體的資料盤上。
SMC服務端將中轉執行個體的磁碟資料製作為容器鏡像,並上傳到阿里雲Container RegistryACR。
如果是應用遷移,會將該應用及應用相關的資料,基於環境變數及啟動命令等製作為容器鏡像,並上傳到阿里雲Container RegistryACR。
前往Container ServiceKubernetes版ACK控制台部署應用,即可完成遷移。
遷移影響
在遷移之前,請先瞭解以下事項,具體如下表所示。
影響項 | 說明 |
中轉執行個體 | 請勿幹涉中轉執行個體。 為避免遷移失敗,遷移過程中請勿停止、啟動、重啟、釋放中轉執行個體或者更改中轉執行個體的計費方式。遷移完成後,該中轉執行個體會自動釋放。 說明
更多資訊,請參見遷移原理。 |
IP地址 | 遷移後IP地址會發生變化,如果業務涉及IP地址的配置,遷移後請自行修改網域名稱解析、備案等。 |
系統底層硬體裝置 | 遷移後,系統底層硬體裝置會發生變化,可能會導致某些與硬體綁定的應用許可證(License)失效,請做好檢查。 |
前提條件
已開通Server Migration Center。如果您第一次使用SMC,需要開通相關許可權、準備遷移網路、備份資料等操作,請參見相關文檔進行遷移前準備。
您可以先通過VPN網關、Express Connect物理專線或Smart Access Gateway將本機資料中心和阿里雲上Virtual Private Cloud打通,通過私網的方式遷移。如果您需要跨國際地區遷移伺服器,由於公網網路環境不穩定,遷移速度可能較慢。可以參考指導評估遷移時間與測試傳輸速度。
遷移操作
步驟一:準備工作
驗證遷移結果
當遷移即時狀態為已完成時,表示遷移成功。

遷移成功後會產生阿里雲容器鏡像,您可以通過容器鏡像部署容器應用。具體操作如下:
在遷移源的操作列,單擊部署應用,系統跳轉到ACK叢集列表頁面。
選擇已有的ACK叢集或者建立ACK叢集。具體操作,請參見建立叢集。
進入叢集,在左側導覽列選擇工作負載>無狀態,單擊使用鏡像建立來建立應用。其中鏡像選擇前面遷移產生的容器鏡像。具體操作,請參見建立無狀態工作負載Deployment。
整機移轉模式啟動命令樣本說明
在ACK叢集部署應用時,您需要在應用生命週期或者應用YAML檔案添加原始伺服器上啟動源服務的相關指令碼和開發連接埠,以便拉起服務。請根據實際情況補充指令碼。一個YAML添加CMD的樣本如下:
spec: containers: - args: - | cd /www/server/panel && chmod +x /www/server/panel/init.sh && echo 3 | sh init.sh && tail -f /dev/null command: - /bin/sh - '-c' image: 'registry-vpc.cn-hangzhou.aliyuncs.com/zi***h/sa***:v1'應用移轉模式說明
您可以使用
netstat -lptn查看原始伺服器的應用服務連接埠,並在ACK部署應用時開啟連接埠映射。
遷移伺服器後,您需要對資料校正和驗證,確保資料的完整性和正確性。具體操作,請參見遷移Linux伺服器後怎麼檢查系統?。
說明如果原始伺服器已經綁定網域名稱,請將網域名稱解析到新的伺服器公網IP地址。具體操作,請參見添加網站解析。
當遷移即時狀態為出錯時,表示遷移任務出錯。此時,您需要排查問題後重試:
修改問題後,在操作列,單擊重試遷移。遷移任務會從上一次結束時的進度處繼續遷移。
重要如果中轉執行個體已被釋放,需要重新遷移。具體操作,請參見誤釋放了中轉執行個體怎麼辦。
清理資源
遷移至雲端服務器鏡像
遷移時,SMC會在您的阿里雲目標帳號下建立一台名稱為No_Delete_SMC_Transition_Instance的臨時隨用隨付中轉執行個體,用於輔助遷移。您需要根據遷移是否成功選擇是否需要手動清理:
遷移成功:中轉執行個體會自動釋放,您無需手動清理。
遷移出錯:中轉執行個體會隨遷移任務一直存在併產生費用。您可以通過以下方式釋放,避免不必要計費:
如果您已確認不再使用該遷移任務,單擊遷移源ID,在遷移任務的操作列,單擊取消遷移,通過刪除遷移任務自動清理中轉執行個體。
手動釋放中轉執行個體。
遷移至雲端服務器執行個體
遷移時,SMC會在目標執行個體下建立一塊名稱為SMC_Temp_Disk的臨時隨用隨付中轉雲端硬碟,用於輔助遷移。您需要根據遷移是否成功選擇是否需要手動清理該中轉雲端硬碟:
遷移成功:中轉雲端硬碟會自動釋放,您無需手動清理。
遷移出錯:中轉雲端硬碟會隨遷移任務一直存在併產生費用。您可以選擇以下方式釋放,避免不必要的計費:
如果您已確認不再使用該遷移任務,單擊遷移源ID,在遷移任務的操作列,單擊取消遷移,通過刪除遷移任務自動清理中轉雲端硬碟。
手動釋放中轉雲端硬碟。







