從標準基礎架構移轉虛擬伺服器

您可以從 Classic 基礎結構遷移虛擬伺服器實例,以符合 IBM Cloud VPC 基礎結構的要求。 然後,您可以從實例建立映像檔範本,並將它部署在 VPC 環境中。

已停用 LinuxONE ( s390x 處理器架構) 不支援從 Classic 基礎架構遷移虛擬伺服器實例。

開始之前

在開始之前,請確認已滿足下列先決條件。

從標準基礎架構移轉虛擬伺服器

完成下列步驟,即可將與 Classic 基礎結構中的虛擬伺服器相關聯的影像範本遷移至 IBM Cloud VPC 基礎結構。 自訂映像檔在 IBM Cloud VPC 中可用後,即可以使用該映像檔來建立虛擬伺服器。

以下清單概述了遷移步驟。

  1. 針對要遷移至 IBM Cloud VPC 基礎架構的虛擬伺服器,建立影像範本。 必須先建立映像檔範本,然後才能繼續執行下列移轉步驟。
  2. 從映像檔範本中,佈建您要用作備份實例的虛擬伺服器。
  3. 自訂備份虛擬伺服器,以確保它符合在 IBM Cloud VPC中部署的需求。
  4. 建立已修改虛擬伺服器的映像檔範本。
  5. 將映像檔範本匯出至 IBM Cloud Object Storage。
  6. 將自訂映像檔匯入至 IBM Cloud VPC 基礎架構。
  7. 使用自訂映像在 IBM Cloud VPC 中建立虛擬伺服器。

有關使用 shell 腳本遷移虛擬伺服器的更多信息,請參閱 vpc 教程。 如需從 Classic 移轉到 IBM Cloud VPC 的詳細資訊,請參閱 VPC+ Cloud Migration 入門

步驟 1-識別要移轉並建立映像檔範本的虛擬伺服器

如果要將標準基礎架構中的虛擬伺服器移轉到 IBM Cloud VPC 基礎架構,可以基於該虛擬伺服器建立映像檔範本。 映像檔範本會擷取現有虛擬伺服器的映像檔。 請確定您瞭解映像檔範本的下列相關資訊。

  • 只有具有單一主要開機磁碟區 (或磁碟) 及相關檔案的影像範本,才能匯入 IBM Cloud VPC 基礎架構。
  • 映像檔範本包括主要開機磁碟上的作業系統,以及您已安裝的項目,例如 PHP 或 Python。 映像檔範本可以介於 10 GB 到 250 GB 之間的資料。 低於 10 GB 的映像檔會四捨五入至 10 GB。
  • 當您在 IBM Cloud VPC 中使用匯入的自訂映像來建立虛擬伺服器時,您可以選擇新的設定檔、指定 SSH 金鑰、指定使用者資料,以及設定網路介面。

當影像範本作為自訂影像匯入 IBM Cloud VPC 時,不支援影像範本的次要磁碟及其相關檔案。

請完成下列步驟,為您要移轉的虛擬伺服器建立映像檔範本。

  1. IBM Cloud 控制台中的儀表板,透過點選導覽選單選單圖示 > 基礎架構 > 經典基礎架構 > 裝置 > 裝置清單來建立影像範本。
  2. 按一下要使用的虛擬伺服器。
  3. 動作功能表,選取建立映像檔範本。 請務必將它命名為您可以輕鬆辨識的名稱。 如需相關資訊,請參閱建立映像檔範本

步驟 2-尋找映像檔範本並佈建虛擬伺服器

從您建立的映像檔範本中,佈建虛擬伺服器。 此實例是備份。 您可以自訂此備份虛擬伺服器,以符合 IBM Cloud VPC的需求。

請完成下列步驟,以從映像檔範本建立新的虛擬伺服器。

  1. 按一下 裝置> 管理> 映像檔,以尋找您所建立的映像檔範本。
  2. 從映像檔範本佈建虛擬伺服器,方法是按一下映像檔範本的「動作」圖示 「動作」圖示,然後選取 訂購公用虛擬伺服器實例

步驟 3-自訂 IBM Cloud VPC 的虛擬伺服器

完成下列自訂作業,以準備 IBM Cloud VPC 基礎架構的映像檔。 您的 Classic 基礎架構虛擬伺服器實例可能已經符合某些自訂需求。

自訂 Linux 虛擬伺服器

遵循 建立 Linux 自訂映像檔 中的指示,以在 Linux 實例上自訂。 您的實例需要符合下列要求。

  • 下列引數呈現在核心指令行上: nomodesetnofbvga=normalconsole=ttyS0
  • 已安裝 Virtio 驅動程式,加上 Virtio 所需的任何程式碼。
  • 您的映像檔已 啟用 cloud-init
  • 對於任何已裝載的輔助儲存磁區,您必須包括 fstab 項目 nofail

自訂 Windows 實例

在 Windows 虛擬伺服器上完成下列自訂作業,以準備 IBM Cloud VPC的映像檔。

  1. 使用「遠端桌面」來存取標準 Windows 伺服器。

  2. 在此伺服器中下載並安裝 Windows VirtIO 驅動程式。 virtio-win 驅動程式檔案可透過下列步驟,從現有的 IBM Cloud VPC 虛擬伺服器取得。

    Microsoft 建議您從已授權的 RHEL 版本 8 或 9 範例取得驅動程式,因為從 Red Hat 取得的驅動程式已獲得 Microsoft 認證。 建議的最低 Red Hat virtio-win 套件版本為 virtio-win-1.9.24。 不過,最好使用最新套件。

    Red Hat virtio-win-1.9.24 ISO 包含下列特定驅動程式版本。

    100.84.104.19500 oem10.inf \vioprot.inf_amd64_af0659efdaba9e4b\vioprot.inf
    100.90.104.21400 oem11.inf \viofs.inf_amd64_c6f785e21f3f6f80\viofs.inf
    100.85.104.20200 oem12.inf \viogpudo.inf_amd64_b19dcf9947e73e5a\viogpudo.inf
    100.85.104.19900 oem13.inf \vioinput.inf_amd64_4505a789e17b5f89\vioinput.inf
    100.81.104.17500 oem14.inf \viorng.inf_amd64_ef304eab276a3e61\viorng.inf
    100.85.104.19900 oem15.inf \vioser.inf_amd64_cb4783c018c10eba\vioser.inf
    100.90.104.21500 oem2.inf  \vioscsi.inf_amd64_02a46a7a223648d1\vioscsi.inf
    100.90.104.21500 oem3.inf  \viostor.inf_amd64_520417bbc533faba\viostor.inf
    100.85.104.20700 oem4.inf  \balloon.inf_amd64_afa8c93081df5458\balloon.inf
    100.90.104.21400 oem5.inf  \netkvm.inf_amd64_0efff05c07fcee39\netkvm.inf
    100.85.104.19900 oem6.inf  \pvpanic.inf_amd64_b7028360ef636f8b\pvpanic.inf
    10.0.0.21000     oem9.inf  \qxldod.inf_amd64_6199f9ecf2339133\qxldod.inf
    
    1. 在 IBM Cloud VPC中佈建或存取現有的 RHEL 虛擬伺服器,以取得必要的 virtio-win 驅動程式。

    2. 在您在 IBM Cloud VPC中佈建的 RHEL 虛擬伺服器上,執行下列指令來安裝 virtio-win 套件。 在此範例中,virtio-win 套件安裝在 RHEL 第 8 版上。

      yum install virtio-win
      ```      {: pre}
      
      The output looks like the following example.
      
      ```text {: screen}
      Installed: virtio-win-1.9.24-2.el8_5.noarch
      
    3. 存取 /usr/share/virtio-win 目錄中的 virtio-win ISO。

      cd /usr/share/virtio-win/
      
    4. 使用 WinSCP 公用程式將 virtio-win ISO 檔案 (例如 virtio-win-1.9.24.iso ) 從 RHEL VPC 伺服器複製到 Classic Windows 伺服器。

    5. 找出下載的 ISO,並按兩下它來裝載它。

    6. 從裝載的 ISO 中,執行 virtio-win-guest-tools.exe 並完成安裝。

      1. 找出下載的 ISO,並按兩下它來裝載它。
      2. 從裝載的 ISO 中,執行 virtio-win-guest-tools.exe 並完成安裝。
  3. Cloudbase-Init 安裝套件安裝並配置 cloudbase-init。

  4. 修改 cloudbase-init.conf 檔案 (C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\cloudbase-init.conf),以符合下列值。 請勿從檔案中移除任何其他內容。

    [DEFAULT]
    #  "cloudbase-init.conf" is used for every boot
    config_drive_types=vfat,iso
    config_drive_locations=hdd,partition
    activate_windows=true
    kms_host=kms.adn.networklayer.com:1688
    mtu_use_dhcp_config=false
    real_time_clock_utc=false
    bsdtar_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\bsdtar.exe
    mtools_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\
    debug=true
    log_dir=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\log\
    log_file=cloudbase-init.log
    default_log_levels=comtypes=INFO,suds=INFO,iso8601=WARN,requests=WARN
    local_scripts_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\LocalScripts\
    metadata_services=cloudbaseinit.metadata.services.configdrive.ConfigDriveService,
    # enabled plugins - executed in order
    plugins=cloudbaseinit.plugins.common.mtu.MTUPlugin,
              cloudbaseinit.plugins.windows.ntpclient.NTPClientPlugin,
              cloudbaseinit.plugins.windows.licensing.WindowsLicensingPlugin,
              cloudbaseinit.plugins.windows.extendvolumes.ExtendVolumesPlugin,
              cloudbaseinit.plugins.common.userdata.UserDataPlugin,
              cloudbaseinit.plugins.common.localscripts.LocalScriptsPlugin
    

    如果您計劃為自訂映像檔提供您自己的授權,請從 cloudbase-init.conf 檔案中移除下列各行。

    activate_windows=true
    kms_host=kms.adn.networklayer.com:1688
    
  5. 修改 cloudbase-init-unattend.conf 檔案 (C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\cloudbase-init-unattend.conf),以符合下列值。 請勿從檔案中移除任何其他內容。

    [DEFAULT]
    #  "cloudbase-init-unattend.conf" is used during the Sysprep phase
    username=Administrator
    inject_user_password=true
    first_logon_behaviour=no
    config_drive_types=vfat
    config_drive_locations=hdd
    allow_reboot=false
    stop_service_on_exit=false
    mtu_use_dhcp_config=false
    bsdtar_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\bsdtar.exe
    mtools_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\
    debug=true
    log_dir=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\log\
    log_file=cloudbase-init-unattend.log
    default_log_levels=comtypes=INFO,suds=INFO,iso8601=WARN,requests=WARN
    local_scripts_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\LocalScripts\
    metadata_services=cloudbaseinit.metadata.services.configdrive.ConfigDriveService,
    # enabled plugins - executed in order
     plugins=cloudbaseinit.plugins.common.mtu.MTUPlugin,
              cloudbaseinit.plugins.common.sethostname.SetHostNamePlugin,
              cloudbaseinit.plugins.windows.createuser.CreateUserPlugin,
              cloudbaseinit.plugins.windows.extendvolumes.ExtendVolumesPlugin,
              cloudbaseinit.plugins.common.setuserpassword.SetUserPasswordPlugin,
              cloudbaseinit.plugins.common.localscripts.LocalScriptsPlugin
    
  6. 修改 Unattend.xml 檔案 (C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\Unattend.xml),並將 PersistAllDeviceInstalls 值設為 false

  7. 從命令提示字元使用下列指令來執行 Sysprep

    C:\Windows\System32\Sysprep\Sysprep.exe /oobe /generalize /shutdown "/unattend:C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\Unattend.xml"
    

    這個指令會關閉系統。

步驟 4-建立自訂虛擬伺服器的映像檔範本

當您在備份虛擬伺服器上完成自訂作業時,請使用下列步驟來建立新的映像檔範本。

  1. IBM Cloud 控制台的儀表板中,按一下選單選單圖示 > 基礎架構 > 經典基礎架構 > 裝置 > 裝置清單以建立影像範本。
  2. 按一下您先前自訂的備份虛擬伺服器。
  3. 動作功能表,選取建立映像檔範本。 必須先建立映像檔範本,然後才能繼續執行下列步驟。

步驟 5-將映像檔範本匯出至 IBM Cloud Object Storage

若要將您建立的映像檔範本從已修改的虛擬伺服器匯出至 IBM Cloud Object Storage,請完成下列步驟。

  1. 按一下 裝置> 管理> 映像檔,以尋找您在「映像檔範本」頁面上建立的新映像檔範本。
  2. 從「影像範本」頁面,按一下 ... 您要匯出的影像範本,然後選擇匯出至 IBM Cloud Object Storage。 如需相關資訊,請參閱將映像檔匯出到 IBM Cloud Object Storage

步驟 6-將自訂映像檔匯入至 IBM Cloud VPC 基礎架構

  1. 在IBM Cloud控制台中,點選導航選單圖示選單圖示> 基礎架構VPC 圖示> 計算 > 影像
  2. 自訂影像 標籤上,按一下 匯入自訂影像。 如需相關資訊,請參閱匯入自訂映像檔

步驟 7-使用自訂映像檔在 IBM Cloud VPC 中建立虛擬伺服器

當您匯入的影像在 Images for VPC 頁面的「自訂影像」索引標籤上可用時,您可以使用它在 IBM Cloud VPC 基礎架構中建立虛擬伺服器實體。

  1. 自訂映像檔 標籤上,尋找所匯入自訂映像檔的名稱,按一下「動作」「其他動作」圖示,然後選取 新建虛擬伺服器
  2. IBM Cloud控制台中,前往導航選單圖示選單圖示> 基礎架構VPC 圖示> 計算 > 虛擬伺服器實例
  3. 在「虛擬伺服器實例」頁面上,按一下動作 「其他動作」圖示。 在存取虛擬伺服器之前,請先停止再啟動它。
  4. 建立入埠及出埠安全群組,以提供 RDP 資料流量埠 3389 的存取權。 如需相關資訊,請參閱 設定資源的安全群組
  5. 若要產生密碼以容許使用浮動 IP 存取 Windows 及 RDP,請參閱 連接至 Windows 實例