Migrazione sicura dei dati per Hyper Protect Virtual Servers da VPC a on-premises

Questa guida completa illustra il processo di migrazione sicura dei dati dall'istanza Hyper Protect Virtual Servers in esecuzione su IBM Cloud VPC a un ambiente on-premises.

Hyper Protect Virtual Servers i volumi di dati cloud sono completamente crittografati utilizzando i valori di seme forniti dall'utente, garantendo che i dati possano essere decifrati solo dall'utente di origine. Questi volumi crittografati possono essere trasferiti in un ambiente on-premise mantenendo la completa riservatezza. La decodifica dei volumi trasferiti è possibile solo all'interno di un'implementazione on-premises di IBM Confidential Computing Container Runtime o IBM Confidential Computing Container Runtime for Red Hat Virtualization Solutions, poiché la passphrase di decodifica LUKS viene generata esclusivamente all'interno del confine di esecuzione sicura dell'istanza HPVS. Il confine dell'esecuzione sicura è progettato per proteggere i segreti in memoria da manomissioni e ispezioni, compresi i tentativi di dumping della memoria o di accesso da parte degli amministratori di sistema o dell'hypervisor. Di conseguenza, le chiavi di crittografia e le passphrase rimangono isolate e protette per tutto il ciclo di vita dell'istanza HPVS.

Le fasi di migrazione descritte in questa guida sono valide solo fino alla finestra di fine servizio (EOS). Per ulteriori informazioni, vedere l'annuncio di deprezzamento del servizio.

Prerequisiti

Assicurati di avere quanto segue:

  • VPC SE VSI Account attivo IBM Cloud con istanza HPVS

  • VPC NON SE VSI Un'istanza di server virtuale in esecuzione su IBM Cloud con il pacchetto qemu-utils installato

  • VPC NON SE VSI Spazio di archiviazione sufficiente per ospitare le istantanee del volume nella macchina da cui si esegue ssh al VSI

  • VPC NON SE VSI VPC SE VSI Accesso amministrativo ad ambienti sia cloud che on-premise

  • I file originali del contratto e del seme che vengono utilizzati per la distribuzione di HPVS su IBM Cloud

  • Verifica del backup: Confermare la presenza di backup recenti dei dati sull'istanza HPVS ( IBM Cloud )

  • Pianificazione dei tempi di inattività: Si consiglia di pianificare una finestra di manutenzione e di evitare di modificare il volume durante la migrazione.

  • Connettività di rete: Garantire un meccanismo di trasferimento sicuro (VPN, collegamento diretto o trasferimento sicuro di file) tra la macchina per lo snapshot del volume e la macchina on-premise

  • Strumenti necessari: Installare qemu-utils sull'istanza del server virtuale:

    • Per Ubuntu o Debian:

      sudo apt-get update && sudo apt-get install -y qemu-utils
      
    • Per RHEL o CentOS:

      sudo yum install -y qemu-img
      

Diagramma del flusso di lavoro della migrazione

Diagramma del flusso di lavoro della migrazione
Diagramma del flusso di lavoro della migrazione

Procedura

Passo 1: creazione di un'istantanea del volume del disco crittografato

Eseguire un'istantanea del volume del disco crittografato collegato all'istanza HPVS. Per ulteriori informazioni, vedere Creazione di istantanee Block Storage for VPC.

Passo 2: creazione di un'istanza di server virtuale con QEMU utilizzando lo snapshot

Creare un'istanza di server virtuale importando l'istantanea. Per ulteriori informazioni, vedere Creazione di un'istanza di server virtuale nella console.

Passo 3: identificare la posizione del volume

  1. Accedi via SSH alla tua istanza di server virtuale:

    ssh -i /path/to/private_key user@<VSI_IP_ADDRESS>
    
  2. Eseguire il comando lsblk per elencare tutti i dispositivi a blocchi:

    lsblk
    
  3. Identificare il volume in uscita:

Si veda il seguente esempio di output:

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

Il nuovo volume è in genere l'ultimo dispositivo elencato (vdd in questo esempio).

  1. Annotare il percorso del dispositivo (ad esempio: /dev/vdd) per utilizzarlo nel passaggio successivo.

Passo 4: creare un'istantanea del volume

Utilizzate gli strumenti di QEMU per creare un'istantanea compressa del volume.

  1. Creare una directory per la memorizzazione dell'istantanea:

    sudo mkdir -p /var/lib/libvirt/images/hpvs/snap-image
    cd /var/lib/libvirt/images/hpvs/snap-image
    
  2. Creare l'istantanea utilizzando qemu-img:

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

    Parametri di comando:

    • -p: Mostra l'avanzamento della conversione
    • -f raw: Formato sorgente (dispositivo a blocchi grezzo)
    • -O qcow2: Formato di uscita (immagine compressa QCOW2 )
    • /dev/vdd: Dispositivo di origine (sostituire con il percorso del dispositivo)
    • vdd.qcow2: Nome del file di output

    Questo processo può richiedere molto tempo a seconda delle dimensioni del volume. Un volume da 10 GB richiede in genere 5-15 minuti.

  3. Verificare che l'istantanea sia stata creata correttamente:

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

    Risultato atteso:

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

Fase 5: Trasferimento dell'istantanea in sede

Trasferire in modo sicuro il file snapshot all'ambiente on-premises.

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

Passo 6: Configurazione del server virtuale on-premises

Aggiornare la configurazione del server virtuale on-premises per utilizzare il volume migrato.

  1. Individuare il file di configurazione XML del dominio:

    • Per HPVS: hpvsnew.xml
    • Per HPCR: hpcrnew.xml
  2. Modificare il file XML per aggiungere o aggiornare la configurazione del disco:

Per 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>

Per 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>

Parametri di configurazione:

  • type='file': La sorgente del disco è un file
  • device='disk': Il tipo di dispositivo è un disco
  • driver name='qemu' type='qcow2': Utilizzare il driver QEMU con il formato QCOW2
  • cache='none': Disattivare la cache per migliorare l'integrità dei dati
  • iommu='on': Abilita IOMMU per la sicurezza
  • target dev='vdb': Nome del dispositivo all'interno del guest
  • bus='virtio': Utilizzare VirtIO per migliorare le prestazioni
  1. Assicurarsi di avere i file originali del contratto e del seme utilizzati durante la distribuzione iniziale di HPVS.