Hyper Protect Virtual Servers 從 VPC 到內部部署的安全資料遷移

這份全面的指南將教您如何安全地將資料從在 IBM Cloud VPC 上執行的 Hyper Protect Virtual Servers 實例遷移至內部環境。

Hyper Protect Virtual Servers 雲端資料卷使用使用者提供的種子值完全加密,確保只有原始使用者才能解密資料。 這些加密的磁碟區可以傳輸到內部環境,以保持完全的機密性。 只有在 IBM Confidential Computing Container RuntimeIBM Confidential Computing Container Runtime for Red Hat 虛擬化解決方案的 內部部署中,才能對傳輸的磁碟區進行解密,因為 LUKS 解密密碼 只會在 HPVS 實例的安全執行邊界內產生。 安全執行邊界的設計是為了保護記憶體內的機密不受篡改和檢查,包括系統管理員或管理程序的記憶體轉儲或存取嘗試。 因此,在 HPVS 實例的整個生命週期中,加密金鑰和密碼都會保持隔離和受到保護。

本指南中描述的遷移步驟僅在服務結束 (EOS) 視窗之前有效。 如需詳細資訊,請參閱 服務廢止公告

必要條件

請確認您已具備以下項目:

  • VPC SE VSI 使用 HPVS 實例的 Active IBM Cloud 帳戶

  • VPC NON SE VSI 在 IBM Cloud 上執行的虛擬伺服器實體,已安裝 qemu-utils 套件

  • VPC NON SE VSI 在您從 ssh 到 VSI 的機器中,有足夠的儲存空間容納卷快照

  • VPC NON SE VSI VPC SE VSI 對雲端和內部部署環境的管理存取

  • 原始合約和種子檔案,用於 HPVS 部署在 IBM Cloud

  • 備份驗證:確認您在 HPVS 範例上有最近的資料備份 ( IBM Cloud 部署)

  • 停機規劃:建議排定維護視窗,並避免在遷移過程中修改磁碟區。

  • 網路連線:確保卷快照機器與內部機器之間的安全傳輸機制 (VPN、直接連線或安全檔案傳輸)

  • 所需的工具:在您的虛擬伺服器實例上安裝 qemu-utils

    • 適用於 Ubuntu 或 Debian:

      sudo apt-get update && sudo apt-get install -y qemu-utils
      
    • 適用於 RHEL 或 CentOS:

      sudo yum install -y qemu-img
      

遷移工作流程圖

遷移工作流程圖
遷移工作流程圖

程序

步驟 1:製作加密磁碟區的快照

為連接至 HPVS 實例的加密磁碟區製作磁碟區快照。 如需詳細資訊,請參閱 建立 Block Storage for VPC 快照

步驟 2:使用快照以 QEMU 建立虛擬伺服器實例

透過匯入快照建立虛擬伺服器實體。 如需詳細資訊,請參閱 在主控台中建立虛擬伺服器實例

步驟 3:確認磁碟區位置

  1. 透過 SSH 連線至您的虛擬伺服器實例:

    ssh -i /path/to/private_key user@<VSI_IP_ADDRESS>
    
  2. 執行 lsblk 指令,列出所有區塊裝置:

    lsblk
    
  3. 在輸出中識別您的音量:

請參閱以下輸出範例:

NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
vda     254:0    0  100G  0 disk
├─vda1  254:1    0 99.9G  0 part /
├─vda14 254:14   0    3M  0 part
└─vda15 254:15   0  124M  0 part /boot/efi
vdb     254:16   0  368K  0 disk
vdc     254:32   0   44K  0 disk
vdd     254:48   0   10G  0 disk              ← new volume
├─vdd1  254:49   0   99M  0 part
└─vdd2  254:50   0  9.9G  0 part

新卷通常是列出的最後一個裝置 (本範例中為 vdd )。

  1. 記下裝置路徑 (例如:/dev/vdd) 以供下一步使用。

步驟 4:建立磁碟區快照

使用 QEMU 工具建立磁碟區的壓縮快照。

  1. 建立儲存快照的目錄:

    sudo mkdir -p /var/lib/libvirt/images/hpvs/snap-image
    cd /var/lib/libvirt/images/hpvs/snap-image
    
  2. 使用 qemu-img 建立快照:

    sudo qemu-img convert -p -f raw -O qcow2 /dev/vdd vdd.qcow2
    

    指令參數

    • -p:在轉換過程中顯示進度
    • -f raw:來源格式 (原始區塊裝置)
    • -O qcow2:輸出格式 ( QCOW2 壓縮影像)
    • /dev/vdd:來源裝置 (以您的裝置路徑取代)
    • vdd.qcow2: 輸出檔案名稱

    此程序可能需要相當長的時間,視量大小而定。 一個 10 GB 的磁碟區通常需要 5-15 分鐘。

  3. 確認快照已成功建立:

    ls -lh vdd.qcow2
    qemu-img info vdd.qcow2
    

    預期輸出

    image: vdd.qcow2
    file format: qcow2
    virtual size: 10 GiB (10737418240 bytes)
    disk size: 2.5 GiB
    cluster_size: 65536
    

步驟 5:將快照傳輸至內部部署

安全地將快照檔案傳輸至您的內部環境。

scp vdd.qcow2 user@on-premises-host:/var/lib/libvirt/images/hpvs/snap-image/

步驟 6:配置內部虛擬伺服器

更新您的內部部署虛擬伺服器組態,以使用遷移的磁碟區。

  1. 找到您的網域 XML 設定檔案:

    • 適用於 HPVS:hpvsnew.xml
    • 用於 HPCR:hpcrnew.xml
  2. 編輯 XML 檔案以新增或更新磁碟組態:

適用於 HPVS (hpvsnew.xml):

<domain type='kvm'>
  <name>hpvs-migrated</name>
  <devices>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none' iommu='on'/>
      <source file='/var/lib/libvirt/images/hpvs/snap-image/vdd.qcow2'/>
      <target dev='vdb' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </disk>
  </devices>
</domain>

用於 HPCR (hpcrnew.xml):

<domain type='kvm'>
  <name>hpcr-migrated</name>
  <devices>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none' iommu='on'/>
      <source file='/var/lib/libvirt/images/hpvs/snap-image/vdd.qcow2'/>
      <target dev='vdb' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </disk>
  </devices>
</domain>

設定參數

  • type='file':磁碟來源為檔案
  • device='disk':裝置類型是磁碟
  • driver name='qemu' type='qcow2':使用 QCOW2 格式的 QEMU 驅動程式
  • cache='none':停用快取功能以提高資料完整性
  • iommu='on':啟用 IOMMU 以確保安全性
  • target dev='vdb':訪客內部的裝置名稱
  • bus='virtio':使用 VirtIO 以獲得更好的效能
  1. 確保您擁有初始部署 HPVS 時使用的原始合約和種子檔案。