複製來源機器的檔案系統

如要翻新應用程式元件,必須建立來源機器的檔案系統副本。

本頁面說明複製來源機器的檔案系統時所需的步驟,以及縮減所複製檔案系統大小的相關規格。

建立 Linux 來源機檔案系統的本機副本

Migrate to Containers CLI 支援使用直接 SSH 連線或 gcloud 存取來源機器。

直接 SSH

如要使用直接 SSH 存取權複製檔案,請執行下列指令:

./m2c copy ssh [USERNAME@]HOSTNAME \
  -i PATH_TO_PRIVATE_KEY \
  -o OUTPUT_FILESYSTEM_DIR

更改下列內容:

  • USERNAME:您的使用者名稱
  • HOSTNAME:主機名稱
  • PATH_TO_PRIVATE_KEY:私密金鑰的路徑
  • OUTPUT_FILESYSTEM_DIR:本機輸出目錄的路徑,您要將來源機器的檔案系統複製到這個目錄

gcloud

如果來源機器有公開 IP,請執行下列指令:

./m2c copy gcloud \
  -p PROJECT_ID \
  -z ZONE \
  -n VM_NAME \
  -o OUTPUT_FILESYSTEM_DIR

更改下列內容:

  • PROJECT_ID:專案 ID
  • ZONE:VM 的可用區
  • VM_NAME:來源 VM 的名稱
  • OUTPUT_FILESYSTEM_DIR:本機的目錄輸出路徑,您要將來源機器的檔案系統複製到該處

如果來源機器沒有公開 IP,請執行下列其中一項操作:

  • 如果您是從相同內部網路中的電腦執行 Migrate to Containers CLI,請使用 --internal-ip 旗標。
  • 如果是在其他網路上執行,請使用 --tunnel-through-iap 標記。

如要進一步瞭解這些旗標,請參閱 gcloud 說明文件

複製完成後,來源機器的檔案系統副本就會出現在指定的輸出目錄中。

縮減複製的檔案系統大小

視來源電腦而定,複製的檔案系統可能非常龐大。複製的內容越大,每個作業完成所需的時間就越長,如果空間不足,複製作業就會失敗。

Migrate to Containers CLI 會套用篩選器來縮減副本大小,但您可根據應用程式元件的相關知識修改篩選器,進一步縮減副本大小。

再次執行 copy 指令並使用修改後的篩選器時,輸出目錄的內容會根據您在篩選器檔案中套用的變更更新。

如要修改預設篩選器,請按照下列步驟操作:

  1. 取得預設篩選器清單:

    ./m2c copy default-filters > filters.txt
    
  2. 編輯 filters.txt 檔案,移除不相關的目錄。檔案會使用 rsync 篩選規則格式,如 rsync 說明文件頁面所述。

  3. 使用 --filters 旗標,透過 copy 指令指定篩選器檔案。

    直接 SSH

    ./m2c copy ssh [USERNAME@]HOSTNAME \
      -i PATH_TO_PRIVATE_KEY \
      -o OUTPUT_FILESYSTEM_DIR \
      --filters filters.txt
    

    gcloud

    ./m2c copy gcloud \
      -p PROJECT_ID \
      -z ZONE \
      -n VM_NAME \
      -o OUTPUT_FILESYSTEM_DIR \
      --filters filters.txt
    

建立 Windows 來源電腦檔案系統的本機副本

如果是 Windows 來源機器,您需要複製 VHD 或 VHDX 格式的磁碟映像檔,才能進行遷移程序。不過,Migrate to Containers CLI 不支援將磁碟映像檔從來源平台匯出至本機電腦。

  • 如要匯出 Compute Engine 虛擬機器 (VM) 執行個體磁碟,請先從磁碟建立映像檔,然後將映像檔匯出至本機電腦。

  • 如要從 Compute Engine 匯出映像檔,請按照下列步驟操作:

    1. 使用 gcloud compute images export 指令將映像檔匯出至 Cloud Storage:

      gcloud compute images export \
        --export-format vhdx \
        --destination-uri DESTINATION_URI \
        --image IMAGE_NAME
      

      更改下列內容:

      • DESTINATION_URI:匯出映文件檔案的 Cloud Storage URI 目的地。
      • IMAGE_NAME:要匯出的磁碟映像檔名稱。
    2. 將圖片下載至本機電腦:

      gcloud storage cp DESTINATION_URI LOCAL_PATH
      

      更改下列內容:

      • DESTINATION_URI:匯出映文件檔案的 Cloud Storage URI 目的地
      • LOCAL_PATH:要下載圖片的本機資料夾路徑

    詳情請參閱「將自訂映像檔匯出至 Cloud Storage」。

  • 如要進一步瞭解如何匯出 Amazon EC2 映像檔,請參閱「使用 VM Import/Export 將執行個體匯出為 VM」。

  • 如要進一步瞭解如何匯出 Azure Cloud Compute 映像檔,請參閱「從 Azure 下載 Windows VHD」。

  • 如要匯出 VMware VM 磁碟映像檔,請先完成將映像檔匯出至 VMDK 檔案的步驟。接著,使用 qemu-img 等第三方工具,將 VMDK 檔案轉換為 VHD 檔案。

後續步驟