Exporter

Exportez toutes les données de charge de travail (stockage, images, fichiers) vers un hôte externe, configurez l'hôte de l'utilitaire et transformez le disque de démarrage.

Exporter le disque de démarrage

Copiez le disque de démarrage de l'environnement source vers un serveur d'utilitaire qui sera utilisé pour préparer l'image pour le chargement dans PCA.

La méthode que vous utilisez dépend de l'hyperviseur source et de la plate-forme de gestion. Par exemple, sur Oracle VM ou PCA 2.4, obtenez le fichier .img pour le disque de démarrage en le copiant à partir du référentiel de stockage affiché dans le fichier vm.cfg de la machine virtuelle. Exécutez la commande sur le noeud de calcul ou sur Oracle VM Server (OVS). Par exemple :

cd /OVS/Repositories/0004fb00000300007b2cd14ca0d48e8b/VirtualDisks
scp 0004fb0000120000fcd80512881d4979.img
utilityhost:/data/0004fb0000120000fcd80512881d4979.raw

Dans cet exemple, le fichier de sortie est renommé avec l'extension de fichier .raw, une modification facultative qui indique que le fichier .img d'Oracle VM utilise le format d'image 'disque brut'.

Exporter les référentiels de stockage 2.x du boîtier en nuage privé

Vous disposez de quelques options pour exporter des référentiels de stockage des déploiements 2.x de boîtier en nuage privé.

Sur le boîtier en nuage privé 2.4, les référentiels de stockage sont montés sur les noeuds de calcul, qui sont par défaut sur les réseaux privés de PCA et ne disposent pas d'une connexion réseau préconfigurée au centre de données. Dans ce cas :

  • Vous pouvez scp le fichier .img vers l'un des deux noeuds de gestion.
  • Ou créez une exportation de référentiel Oracle VM en lecture seule vers les noeuds de gestion, puis scp vers un hôte externe.

Les étapes suivantes sont extraites du guide de sauvegarde sur Oracle Private Cloud Appliance. Ce processus peut être utilisé pour exporter en masse toutes les machines virtuelles d'un référentiel de stockage Oracle VM :

  1. Dans Oracle VM Manager, sélectionnez l'onglet Serveurs et machines virtuelles. Sous Groupes de serveurs, développez le nom du groupe de serveurs pour afficher les noms de serveur et sélectionnez l'un des serveurs. Dans le panneau de gestion, dans la liste déroulante Perspective, sélectionnez Exportations de référentiel.
  2. Cliquez sur l'icône +. Dans la boîte de dialogue Créer une exportation de référentiel, sélectionnez le référentiel à exporter. Entrez l'adresse IP ou le nom d'hôte de l'hôte qui montera le partage NFS, qui est l'adresse de l'un des noeuds de gestion. Dans le champ Options, entrez les options ro,no_root_squash pour assurer un montage en lecture seule qui rend tous les fichiers de référentiel visibles.
  3. Cliquez sur OK et recherchez l'exportation dans la liste des exportations de référentiel.
  4. Copiez la valeur dans la colonne Chemin du référentiel et exécutez une commande de montage en utilisant le noeud de calcul sélectionné comme serveur NFS. Le noeud de gestion dispose d'une vue en lecture seule du référentiel de stockage et vous pouvez copier des images de disque directement à partir du répertoire VirtualDisks du référentiel sans avoir à le scp d'abord à partir d'un noeud de calcul. Par exemple :
    # mount 192.168.4.5:/OVS/Repositories/0004fb0000030000cc1d0d9dfba208d0/ /mnt
    # ls -la /mnt
    total 2077 
    drwxr-xr-x   8 root root  3896 Aug 10  2019 .
    dr-xr-xr-x. 22 root root  4096 Jan  5 20:10 ..
    drwx------   9 root root  3896 Jan 24 14:10 Assemblies
    drwx------   2 root root  3896 Dec  9 14:23 ISOs
    drwxr-xr-x   2 root root  3896 Aug  8  2019 lost+found
    -rw-------   1 root root 15014 Mar  9 11:48 .ovsmeta
    -rw-------   1 root root   151 Sep 10  2020 .ovsrepo
    drwx------  11 root root  3896 Nov 25 16:12 Templates
    drwx------   2 root root  8192 Mar  9 11:48 VirtualDisks
    drwx------  53 root root  3896 Mar  9 11:48 VirtualMachines

    Vous pouvez optimiser les options de montage. Par exemple :

    mount -o ro,bg,hard,rsize=524288,wsize=524288,nfsvers=3,tcp 192.168.4.5:/OVS/Repositories/0004fb0000030000cc1d0d9dfba208d0 /mnt

Localiser et exporter des images de disque VM VirtualBox

Oracle VM VirtualBox stocke généralement des images de disque dans le répertoire VirtualBox VMs dans un sous-répertoire portant le même nom que la machine virtuelle.

  1. Les informations sur la machine virtuelle de l'interface utilisateur fournissent le chemin complet :
    $ vboxmanage showvminfo "Solaris 11.4"|more
    Name: Solaris 11.4
    Groups: /
    Guest OS: Oracle Solaris 11 (64-bit)
    UUID: 3a4ce795-d6b1-44f8-a16b-8b7fb0fbb4a8
    Config file: /Users/jeff/VirtualBox VMs/Solaris 11.4/Solaris 11.4.vbox
    Snapshot folder: /Users/jeff/VirtualBox VMs/Solaris 11.4/Snapshots
    Log folder: /Users/jeff/VirtualBox VMs/Solaris 11.4/Logs
  2. Recherchez dans ce dossier l'image de disque .vdi ou .vmdk pour le disque de démarrage de la machine virtuelle et scp pour l'hôte de l'utilitaire.

Localiser et exporter des images de disque KVM

Les images de disque de machine virtuelle peuvent être localisées en exécutant la commande ci-dessous :

  1. Lister les images de disque :
    $ virsh vol-list default
    Name Path
    ------------------------------------------------------------------------------
    guest-ol8-minimal-serial.qcow2 /home/admin/.local/share/libvirt/images/guest-ol8-minimalserial.qcow2
    guest-ol8-minimal.qcow2 /home/admin/.local/share/libvirt/images/guest-ol8-minimal.qcow2
    guest-ol8.qcow2 /home/admin/.local/share/libvirt/images/guest-ol8.qcow2
    guest-ovsx54-ol7.qcow2 /home/admin/.local/share/libvirt/images/guest-ovsx54-ol7.qcow2 
    juniper-kvm-ol7.qcow2 /home/admin/.local/share/libvirt/images/juniper-kvm-ol7.qcow2
  2. Localisez l'image de disque de la machine virtuelle à exporter vers le boîtier en nuage privé et scp vers l'hôte de l'utilitaire.

Localiser et exporter des images de disque VMware

Les images VMware peuvent être exportées vers un "boîtier virtuel" qui est en fait un fichier tar contenant l'image de disque.

Utilisez une procédure similaire pour obtenir le boîtier virtuel, puis utilisez la commande tar pour extraire le fichier .vmdk du fichier .ova et le copier vers l'hôte de l'utilitaire.

Accélérer l'exportation en compressant les fichiers d'image de disque

Les fichiers d'image de disque sont volumineux et leur copie sur d'autres hôtes peut prendre beaucoup de temps. Cela peut aller beaucoup plus vite si vous utilisez la compression, en particulier pour les images de disque dispersées.

Vous pouvez éventuellement compresser le fichier d'image de disque à l'aide d'une commande telle que gzip ou lzop pour réduire le temps de copie vers l'hôte de l'utilitaire. Par exemple, à l'aide de lzop et de la sortie de pipeline vers scp :

lzop -1 < 0004fb0000120000fcd80512881d4979.img | ssh utilityhost 'lzop -d > /data/0004fb0000120000fcd80512881d4979.raw' 

Nous utilisons lzop pour la compression dans ce cas parce qu'un réseau rapide est disponible, donc la vitesse de compression était plus importante que le taux de compression. Si votre réseau est plus lent, vous pouvez opter pour une autre approche, par exemple gzip ou bzip2 :

gzip 0004fb00001200008190ce0329fdacdf.img
scp 0004fb00001200008190ce0329fdacdf.img.gz utilityhost:/data/

Toutes ces méthodes, ou n'utilisant aucune compression du tout, sont également valides et dépendent de vos préférences.

Configurer l'hôte de l'utilitaire

Créez un hôte d'utilitaire qui exécute Oracle Linux. Il peut s'agir d'une machine virtuelle ou d'une instance sans système d'exploitation.

Préparez l'hôte de l'utilitaire en installant l'interface de ligne de commande OCI. Pour obtenir des instructions, voir la section 1.2 du guide de l'utilisateur d'Oracle Private Cloud Appliance.

Utilisez les commandes suivantes pour installer qemu-img et virt-sparsify. Cet exemple suppose un hôte Oracle Linux 7 :

$ sudo yum upgrade 
$ sudo yum-config-manager --enable ol7_kvm_utils 
$ sudo yum install qemu-img libguestfs-tools

Transformer le disque de démarrage

Vous devrez peut-être convertir le disque de démarrage au format qcow2 standard ouvert utilisé par l'hyperviseur PCA.

Note :

Il est recommandé, mais pas strictement nécessaire, de convertir des images de disque déjà au format vmdk ou qcow2 et de les assembler dans un fichier .oci. Le fichier .oci inclut l'image de disque au format qcow2 et les métadonnées d'image. Cela garantit que les métadonnées correctes pour l'image sont fournies avec le contenu du disque.
  1. Vous convertissez le disque de démarrage sur l'hôte de l'utilitaire qui a accès à l'interface de ligne de commande OCI, à la commande qemu-img et à d'autres utilitaires facultatifs.
  2. Traitez le disque de démarrage sur le disque de démarrage en cours de préparation pour PCA. Cette étape est nécessaire pour les images de disque d'Oracle VM sur Exalogic ou PCA 2.x.

    Note :

    Cette étape est facultative pour les images de disque au format .vmdk (VMware ou Oracle VirtualBox). Les fichiers au format qcow2 de KVM n'ont pas besoin d'être convertis.
  3. Sur le noeud d'utilitaire, entrez la commande suivante, en remplaçant le fichier image disque par le nom du fichier :
    $ qemu-img convert -f raw -O qcow2 0004fb0000120000fcd80512881d4979.raw output.QCOW2
    $ qemu-img convert -f vdi -O qcow2 ol8.vdi output.QCOW
    $ qemu-img convert -f vmdk -O qcow2 myVMwareVM.vmdk output.QCOW2
    • Utilisez -f raw pour les disques virtuels d'Oracle VM et PCA 2.x
    • utiliser -f vdi pour les fichiers .vdi à partir d'Oracle VM VirtualBox
    • utiliser -f vmdk pour les images .vmdk provenant de VMware

    Note :

    1. Vous devez nommer le fichier de sortie output.QCOW2.
    2. L'exécution de la commande qemu-img peut prendre un temps considérable en fonction de la taille du fichier d'image et de la vitesse du système. Vous pouvez utiliser l'indicateur "-p" pour afficher la progression sous forme de pourcentage dans le formulaire (nn.nn/100%.

    Il est recommandé, mais pas nécessaire, de convertir une image .vmdk, car le boîtier en nuage privé peut utiliser ce type de fichier. Consultez la section Migrer plus loin dans cette solution.

  4. Vous pouvez réduire la taille de l'image de disque à l'aide de l'outil virt-sparsify. Cet outil fonctionne sur de nombreux systèmes de fichiers : ext2/3/4. xfs, btrfs, NTFS, LVM. Il réduit la taille des images de disque dispersées en éliminant les blocs de disque qui ne sont pas détenus par un fichier. La réduction varie en fonction du contenu de l'image de disque avant l'exportation. Selon votre environnement d'utilitaire, vous devrez peut-être également émettre export LIBGUESTFS_BACKEND=direct avant d'exécuter la commande :
    $ virt-sparsify --in-place output.QCOW2 

Préparer le type de fichier OCI pour l'importation

L'image X9-2 du boîtier en nuage privé et les images OCI utilisent le type de fichier .oci, qui comporte deux composants :

  • Un fichier image_metadata.json qui décrit l'image au format JSON et l'image de disque réelle nommée output.QCOW2 que vous avez créée.
  • Le fichier image_metadata.json décrit les paramètres de l'image (BIOS vs UEFI, comment les appareils virtuels sont mis en oeuvre) et le système d'exploitation qu'il exécute.

Sélectionnez la version du BIOS ou de l'UEFI en fonction de la source et modifiez la description du système d'exploitation.

Les images Oracle Exalogic seront en mode BIOS.

$ tar zcf MyImage.oci image_metadata.json output.QCOW2

Exemple de fichiers image_metadata.json

Utilisez cet exemple de fichier image_metadata.json inclus dans un ensemble .oci pour le chargement.

Vérifiez les versions de fichier de métadonnées du BIOS et de l'UEFI suivantes et utilisez la version la plus appropriée. Définissez la version du BIOS ou de l'UEFI telle que déterminée par les valeurs de l'environnement source pour operatingSystem et operatingSystemVersion en fonction de l'image importée.

Images BIOS


{
   "version": 2,
   "externalLaunchOptions": {
       "firmware": "BIOS",
       "networkType": "PARAVIRTUALIZED",
       "bootVolumeType": "PARAVIRTUALIZED",
       "remoteDataVolumeType": "PARAVIRTUALIZED",
       "localDataVolumeType": "PARAVIRTUALIZED",
       "launchOptionsSource": "CUSTOM",
       "pvAttachmentVersion": 1,
       "pvEncryptionInTransitEnabled": false,
       "consistentVolumeNamingEnabled": false
    },
    "imageCapabilityData": null,
    "imageCapsFormatVersion": null,
    "operatingSystem": "Oracle Linux",
    "operatingSystemVersion": "8.5"
}

Images UEFI


{
    "version": 2,
    "externalLaunchOptions": {
        "firmware": "UEFI_64",
        "networkType": "PARAVIRTUALIZED",
        "bootVolumeType": "PARAVIRTUALIZED",
        "remoteDataVolumeType": "PARAVIRTUALIZED",
        "localDataVolumeType": "PARAVIRTUALIZED",
        "launchOptionsSource": "CUSTOM",
        "pvAttachmentVersion": 1,
        "pvEncryptionInTransitEnabled": false,
        "consistentVolumeNamingEnabled": false
     },
     "imageCapabilityData": null,
     "imageCapsFormatVersion": null,
     "operatingSystem": "Oracle Linux",
     "operatingSystemVersion": "7.9"
}