Migration sécurisée des données pour Hyper Protect Virtual Servers de VPC à on-premises

Ce guide complet vous accompagne tout au long du processus de migration sécurisée des données de votre instance Hyper Protect Virtual Servers exécutée sur IBM Cloud VPC vers un environnement sur site.

Hyper Protect Virtual Servers les volumes de données dans le nuage sont entièrement cryptés à l'aide de valeurs de départ fournies par l'utilisateur, ce qui garantit que les données ne peuvent être décryptées que par l'utilisateur d'origine. Ces volumes cryptés peuvent être transférés vers un environnement sur site en préservant une totale confidentialité. Le décryptage des volumes transférés n'est possible que dans le cadre d'un déploiement sur site de IBM Confidential Computing Container Runtime ou de IBM Confidential Computing Container Runtime for Red Hat Virtualization Solutions, car la phrase secrète de décryptage LUKS est générée exclusivement à l'intérieur de la zone d'exécution sécurisée (Secure Execution boundary) de l'instance HPVS. La frontière d'exécution sécurisée est conçue pour protéger les secrets en mémoire contre la falsification et l'inspection, y compris le vidage de la mémoire ou les tentatives d'accès par les administrateurs système ou l'hyperviseur. Ainsi, les clés de chiffrement et les phrases de passe restent isolées et protégées tout au long du cycle de vie de l'instance HPVS.

Les étapes de migration décrites dans ce guide ne sont valables que jusqu'à la fenêtre de fin de service (EOS). Pour plus d'informations, voir l'annonce de dépréciation du service.

Prérequis

Assurez-vous de disposer des éléments suivants :

  • VPC SE VSI Compte actif IBM Cloud avec instance HPVS

  • VPC NON SE VSI Une instance de serveur virtuel fonctionnant sur IBM Cloud avec le paquet qemu-utils installé

  • VPC NON SE VSI Espace de stockage suffisant pour accueillir les instantanés de volume sur la machine à partir de laquelle vous effectuez ssh vers la VSI

  • VPC NON SE VSI VPC SE VSI Accès administratif aux environnements en nuage et sur site

  • Fichiers originaux de contrat et de semence utilisés pour le déploiement de HPVS sur les sites suivants IBM Cloud

  • Vérification des sauvegardes : Confirmez que vous disposez de sauvegardes récentes de vos données sur l'instance HPVS ( IBM Cloud deployment)

  • Planification des temps d'arrêt : Il est recommandé de prévoir une fenêtre de maintenance et d'éviter de modifier le volume pendant la migration.

  • Connectivité réseau : Assurer un mécanisme de transfert sécurisé (VPN, lien direct ou transfert de fichiers sécurisé) entre la machine pour l'instantané de volume et la machine sur site

  • Outils nécessaires : Installez qemu-utils sur votre instance de serveur virtuel :

    • Pour Ubuntu ou Debian:

      sudo apt-get update && sudo apt-get install -y qemu-utils
      
    • Pour RHEL ou CentOS:

      sudo yum install -y qemu-img
      

Diagramme de flux de migration

Diagramme de flux de migration
Diagramme de flux de migration

Procédure

Étape 1 : Prise d'un instantané du volume de disque crypté

Prenez un instantané du volume du disque crypté qui est attaché à l'instance HPVS. Pour plus d'informations, voir Création d'instantanés Block Storage for VPC.

Étape 2 : Création d'une instance de serveur virtuel avec QEMU à l'aide de l'instantané

Créez une instance de serveur virtuel en important le snapshot. Pour plus d'informations, voir Création d'une instance de serveur virtuel dans la console.

Étape 3 : Identifier l'emplacement du volume

  1. Connectez-vous via SSH à votre instance de serveur virtuel :

    ssh -i /path/to/private_key user@<VSI_IP_ADDRESS>
    
  2. Exécutez la commande lsblk pour dresser la liste de tous les périphériques de bloc :

    lsblk
    
  3. Identifiez votre volume dans la sortie :

Voir l'exemple de résultat suivant :

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

Le nouveau volume est généralement le dernier périphérique répertorié (vdd dans cet exemple).

  1. Notez le chemin d'accès à l'appareil (exemple : /dev/vdd) pour l'utiliser à l'étape suivante.

Étape 4 : Créer un instantané de volume

Utilisez les outils QEMU pour créer un instantané compressé du volume.

  1. Créer un répertoire pour stocker l'instantané :

    sudo mkdir -p /var/lib/libvirt/images/hpvs/snap-image
    cd /var/lib/libvirt/images/hpvs/snap-image
    
  2. Créez l'instantané à l'aide de qemu-img:

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

    Paramètres de commande:

    • -p: Afficher l'état d'avancement de la conversion
    • -f raw: Format de la source (bloc brut)
    • -O qcow2: Format de sortie ( QCOW2 image compressée)
    • /dev/vdd: Dispositif source (remplacer par le chemin d'accès au dispositif)
    • vdd.qcow2: Nom du fichier de sortie

    Ce processus peut prendre beaucoup de temps en fonction de la taille du volume. Un volume de 10 Go prend généralement de 5 à 15 minutes.

  3. Vérifiez que la sauvegarde a bien été créée :

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

    Résultat attendu:

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

Étape 5 : Transfert de l'instantané sur site

Transférez en toute sécurité le fichier d'instantané vers votre environnement sur site.

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

Étape 6 : Configuration du serveur virtuel sur site

Mettez à jour la configuration de votre serveur virtuel sur site pour utiliser le volume migré.

  1. Localisez le fichier de configuration XML de votre domaine :

    • Pour les HPVS : hpvsnew.xml
    • Pour HPCR : hpcrnew.xml
  2. Modifiez le fichier XML pour ajouter ou mettre à jour la configuration du disque :

Pour l'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>

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

Paramètres de configuration:

  • type='file': La source du disque est un fichier
  • device='disk': Le type de périphérique est un disque
  • driver name='qemu' type='qcow2': Utiliser le pilote QEMU avec le format QCOW2
  • cache='none': Désactiver la mise en cache pour une meilleure intégrité des données
  • iommu='on': Activer l'IOMMU pour la sécurité
  • target dev='vdb': Nom du dispositif à l'intérieur de l'invité
  • bus='virtio': Utilisez VirtIO pour de meilleures performances
  1. Assurez-vous que vous disposez des fichiers originaux de contrat et de semence utilisés lors du déploiement initial de l'HPVS.