執行匯出前更新

建議您在原始來源系統上變更 VM,藉此準備用於私有雲設備的 VM。在來源系統的複製 (而非原始 VM) 上執行下列預先匯出更新步驟。

注意:

在來源系統上執行生產環境映像檔的複製作業。這可保護生產環境,並在需要重複時提供已知的備用環境。使用來源系統提供的方法來複製 VM。

例如,在 Oracle VM 和 Private Cloud Appliance 2.4 中,在伺服器與 VM 頁籤中選取 VM,然後按一下滑鼠右鍵並選取複製。在任何情況下,請停止來源 VM,以確保複製項具有一致的磁碟內容。

作業系統的目前層次修正程式

將複製 VM 更新至相同作業系統的目前修正程式層級。

指示取決於來賓作業系統。例如,yum update 至 Oracle Linux 7 或 8 的最新修補程式層級、Solaris 11.4 上的 pkg update,或 Microsoft Windows 上的 Windows Update。修正之後重新開機,以確保後續修正作業正確。

這可確保最新的裝置驅動程式可用,並防止最近關閉的錯誤和安全風險發生。

將虛擬網路裝置變更為 DHCP

Private Cloud Appliance 上安裝之後,來賓 VM 的虛擬網路可能需要變更才能運作。

Private Cloud Appliance 使用 DHCP 為新執行處理提供網路位址。由於可以從同一個映像檔複製多個執行處理,因此在每個執行處理建立時指定新的 MAC 和 IP 位址是合理的。

注意:

  1. 建立實例時,DHCP 取得的 IP 位址穩定。
  2. 執行處理可見的 IP 位址是虛擬雲端網路 (VCN) 上的專用 IP 位址。此執行處理是使用網路位址轉譯 (NAT) 層從專用雲端設備外部存取。請參閱運算 Enclave 的執行處理描述中的「網路」頁籤,瞭解專用與公用 IP 位址。

在 Linux 上,編輯 /etc/sysconfig/network-scripts/ifcfg-NICNAME 檔案並移除 HWADDRMACADDR 行,然後設定 BOOTPROTO="dhcp"。或者,您也可以使用配銷隨附的圖形化工具。此外,如果存在,請移除檔案 /etc/udev/rules.d/70-persistent-ipoib.rules/etc/udev/rules.d/70-persistentnet.rules。這些檔案包含與新實例不相符的 MAC 位址。系統將視需要自動重建這些記錄。

在 Solaris 上使用 ipadm 指令。例如:

# ipadm delete-addr net0/v4
# ipadm create-addr -T dhcp net0/v4
    

在 Windows 上,使用「控制台」或「設定」。

移除虛擬機器工具和驅動程式

如果您是從 VMware、Oracle VM 或 VirtualBox 進行移轉,請從複製項目中移除關聯的半虛擬化驅動程式和工具。此圖像使用安裝的工具和驅動程式,但您在啟動時或登入時可能會看到錯誤訊息,因此這是選擇性的。

例如,您可以在「控制台」中尋找驅動程式來移除 Microsoft Windows 的 Oracle VM Paravirtualization (PV) 驅動程式,然後按一下滑鼠右鍵並選取解除安裝

安裝 Private Cloud Appliance 的 Linux 核心與驅動程式功能

作業系統可能需要在開機時明確包含 VirtIO 裝置驅動程式。

注意:

如果來源虛擬機器管理程式是 KVM,就已經是私有雲設備的正確驅動程式。
  1. 您可以在執行 dracut 之前,視需要備份核心。例如:mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
  2. 使用 dracut 指令新增裝置驅動程式至 initramfs。例如:dracut --force -Ndracut -N --regenerateall
    • -N 選項會停用僅限主機模式,此模式只會為目前的主機建立 initramfs。此選項會產生一個通用影像 。
    • 如果您是在沒有 -N 選項的舊版 Linux 上執行,請特別列出 Private Cloud Appliance X9-2 所需的核心模組。例如:dracut --add-drivers 'sg sd_mod virtio virtio_pci virtio_ring virtio_scsi'
    • --regenerate-all 選項會為 /boot 中的所有核心版本重新產生 initramfs,而不只是目前已啟動的版本。這對 Oracle Linux 而言十分有用,可確保 UEK 與 RHCK 核心都能夠取得所需的驅動程式,無論目前啟動的是哪一個驅動程式。
    • 選項 --force 會覆蓋目前的 initramfs 檔案。

您可以在 /boot 中查看更新的 initramfs 檔案。由於新增的裝置驅動程式,它們會比先前版本還大 。

如果省略 dracut 步驟,您可以在私有雲設備 X9-2 上第一次啟動執行處理時執行該步驟。

  1. 登入 Compute Enclave
  2. 選取執行處理並連線至主控台。
  3. 選取 Grub 功能表中的救援明細行。
  4. 如果在選取救援開機之前啟動失敗,請從 Compute Enclave 在執行處理上執行重設 (Reset) 動作。
  5. 在執行處理啟動之後,請登入並執行 dracut 指令。

為 Private Cloud Appliance 安裝 Solaris 核心與驅動程式功能

作業系統可能需要在開機時明確包含 VirtIO 裝置驅動程式。

注意:

如果來源虛擬機器管理程式是 KVM,就已經是 PCA 的正確驅動程式。
  1. Oracle 強烈建議 Solaris 11 使用者升級至 Solaris 11.4,這是直接的程序且高度相容的程序。在 Solaris 11.4 實例中建立 Solaris 10 標記非全域區域,以移動 Solaris 10 環境。這可讓 Solaris 10 環境從現代核心與裝置驅動程式中受益。
  2. 使用 pkg update 指令將 Solaris 11.4 更新為最新的 SRU,並啟動至新的啟動環境。

安裝 Windows 適用的 VirtIO 驅動程式

您必須安裝 Oracle Private Cloud Appliance 的核心和驅動程式功能。您可以從 My Oracle Support 或從 Oracle Software Delivery Cloud 下載。這裡是 Windows 作業系統的說明 。

若為 Oracle Software Delivery Cloud:

  1. 登入 Oracle Software Delivery Cloud。
  2. 在「所有類別」清單中,選取版本
  3. 輸入 Oracle Linux ,然後按一下搜尋
  4. 選取 DLP: Oracle Linux N.N.0.0.0 ( Oracle Linux )。新版本推出時,N 的值將會不同。
  5. 按一下繼續
  6. 平台 / 語言資料欄中,選取清單中的 x86 64 位元,然後按一下繼續
  7. 接受「Oracle 標準條款與條件」,然後按一下繼續
  8. 按一下描述為 Oracle VirtIO Drivers for Microsoft Windows, version N.N.N 的檔案名稱以下載驅動程式。目前的書寫版本為 V1009702-01.zip。版本號碼會在新版本推出時變更。
  9. 將壓縮檔下載至您的 Windows VM。
  10. 擷取壓縮檔然後按兩下 [ 設定 ] 檔案,即可安裝驅動程式。完成時,重新啟動與關閉。

若要從 My Oracle Support 下載:

  1. 登入 My Oracle Support。
  2. 選取修正程式和更新頁籤。
  3. 修正程式搜尋面板的修正程式名稱或編號欄位中,輸入 27637937 ,然後按一下搜尋。請勿選取任何一個平台選項。
  4. 按一下 Oracle VirtIO driver version N.N.N 左側的「修補程式名稱」。例如,版本 2.0.1。
  5. 修正程式詳細資訊頁面中,按一下下載
  6. 擷取壓縮檔然後按兩下 [ 設定 ] 檔案,即可安裝驅動程式。完成時,請重新啟動並關閉。

選擇性安裝初始化工具程式

建議您安裝 cloud-init (Linux) 或 cloudbase-init (Solaris、Windows) 工具程式。

這些工具程式是不受業界標準的跨平台執行處理初始化方法。它們可協助識別雲端執行處理在開機期間執行、從雲端讀取任何提供的 metadata,並據此初始化系統。它們能夠從以密碼為基礎的 ssh 轉換成使用金鑰組交換。如需詳細資訊,請參閱 Oracle Private Cloud Appliance User Guide 的第 6.4 節。

在 Oracle Linux 上,安裝適用於 Linux 發行版本的 cloud-initoci-utils 套裝軟體。若為 Oracle Linux 8,請使用下列指令:

# dnf install yum-utils
# yum-config-manager --enable ol8_addons
# dnf install cloud-init oci-utils

在 Solaris 上,依照 Installation and Software Management Features Solaris 11.4 What's New 文件中的描述發出 pkg install cloudbase-init

然後使用引證參照中描述的金鑰組交換,使用 userid opc 在已啟動的執行處理中執行 ssh

上述步驟會停用密碼式認證。如果您要繼續在目標系統上使用以密碼為基礎的 ssh 認證來確保它如來源平台般運作,可以在匯出前編輯 /etc/cloud.cfg 並新增行來重新啟用:

ssh_pwauth: 1

或者,在 /etc/ssh/sshd_config 中註釋下列行,即可在匯出之前執行此動作:

# PasswordAuthentication no

在 Windows 執行處理上,使用 cloudbase-init,如 Cloudbase-init 文件中所述。

準備啟動和檔案系統

影像只包含開機磁碟,因此請停用所有需要其他磁碟的開機時間服務和應用程式。

必須移除非啟動檔案系統的參照,直到之後重新建立它們為止。如果開機映像檔參照其他磁碟進行交換、/tmp/var/logs,則必須暫時將它們移至開機磁碟區。

請依照 Linux 上的下列步驟:

  1. 編輯 /etc/fstab
  2. 移除非在啟動磁碟上檔案系統掛載的項目。
  3. 確定沒有任何開機磁碟分割區直接由裝置名稱 (例如 /dev/xvda) 參照。
  4. 請改用 LABEL=UUID=
  5. 如果您要參照啟動磁碟,就不需要修改 LVM 裝置的參照。
  6. 執行 pvs 指令以確保唯一的 LVM 實體磁碟區 (PV) 是開機磁碟區。
  7. 如果磁碟區群組 (VG) 位於其他實體磁碟區上,應從 /etc/fstab 加註。

如果邏輯磁碟區同時包含開機磁碟和其他磁碟,則遷移變得更複雜,而且超出此解決方案的範圍。

遵循 Solaris 上的下列步驟:

  1. 編輯 /etc/vfstab
  2. 移除任何不在啟動磁碟上的掛載。
  3. 針對非根 ZFS 集區執行 zpool export $POOLNAME 指令。一般而言,這些是 ZFS 集區,而非 rpool

由於在 Private Cloud Appliance X9-2 上首次啟動,因此請停用開機時啟動且需要完整配置的任何服務或應用程式,都不會有完整的作業環境。