Exporter

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

Exporter le disque d'initialisation

Copiez le disque d'initialisation de l'environnement source vers un serveur utilitaire qui sera utilisé pour préparer l'image à télécharger vers 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 du disque d'initialisation en le copiant à partir du référentiel de stockage indiqué 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 image 'raw disk'.

Exporter les référentiels de stockage Private Cloud Appliance 2.x

Vous disposez de plusieurs options pour exporter des référentiels de stockage à partir de déploiements Private Cloud Appliance 2.x.

Sur Private Cloud Appliance 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 n'ont pas de connexion réseau préconfigurée au centre de données. Dans ce cas :

  • Vous pouvez scp le fichier .img sur l'un des deux noeuds de gestion.
  • Vous pouvez également créer un export 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 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 Pools de serveurs, développez le nom du pool de serveurs pour afficher les noms des serveurs 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 un export 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 va monter 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 garantir un montage en lecture seule qui rend tous les fichiers du référentiel visibles.
  3. Cliquez sur OK et recherchez l'export dans la liste des exports de référentiel.
  4. Copiez la valeur dans la colonne Chemin de référentiel et exécutez une commande de montage à l'aide du noeud de calcul sélectionné en tant que 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 à 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 VirtualBox de machine virtuelle

Oracle VM VirtualBox stocke généralement les 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 de 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 du disque d'initialisation de la machine virtuelle et scp de 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 à l'aide de la commande suivante :

  1. Répertoriez 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 Private Cloud Appliance 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 une "appliance virtuelle" qui est en fait un fichier tar contenant l'image de disque.

Utilisez une procédure similaire pour obtenir l'appliance virtuelle, 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'export en compressant les fichiers d'image de disque

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

Vous pouvez éventuellement compresser le fichier image du disque à l'aide d'une commande telle que gzip ou lzop pour réduire le temps de copie sur l'hôte de l'utilitaire. Par exemple, en utilisant lzop et en transférant la sortie 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, de sorte que 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, telle que gzip ou bzip2 :

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

Toutes ces méthodes, ou sans compression du tout, sont tout aussi valides et dépendent de vos préférences.

Configuration de l'hôte de l'utilitaire

Créez un hôte utilitaire qui exécute Oracle Linux. Il peut s'agir d'une machine virtuelle ou d'une instance Bare Metal.

Préparez l'hôte de l'utilitaire en installant l'interface de ligne de commande OCI. Pour obtenir des instructions, reportez-vous à la section 1.2 du Guide de l'utilisateur Oracle Private Cloud Appliance.

Utilisez les commandes suivantes pour installer qemu-img et virt-sparsify. Cet exemple suppose qu'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 d'initialisation

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

Remarque :

Il est recommandé, mais pas strictement nécessaire, de convertir les images de disque déjà au format vmdk ou qcow2 et de les packager 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 de l'image sont fournies avec le contenu du disque.
  1. Vous convertissez le disque d'initialisation sur l'hôte 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 d'initialisation sur le disque d'initialisation 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.

    Remarque :

    Cette étape est facultative pour les images de disque au format .vmdk (VMware ou Oracle VirtualBox). Il n'est pas nécessaire de convertir les fichiers au format qcow2 à partir de KVM.
  3. Sur le noeud utilitaire, entrez une commande semblable à la suivante, en remplaçant le fichier image disque par le nom de fichier réel :
    $ 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
    • Utiliser -f raw pour les disques virtuels d'Oracle VM et de PCA 2.x
    • utiliser -f vdi pour les fichiers .vdi d'Oracle VM VirtualBox
    • utiliser -f vmdk pour les images .vmdk provenant de VMware

    Remarque :

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

    Il est recommandé, mais pas nécessaire, de convertir une image .vmdk car Private Cloud Appliance peut utiliser ce type de fichier. Reportez-vous à 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. et réduit la taille des images de disque dispersées en éliminant les blocs de disque qui n'appartiennent pas à un fichier. La quantité de réduction varie en fonction du contenu de l'image du disque avant l'exportation. Selon votre environnement utilitaire, vous devrez peut-être également exécuter export LIBGUESTFS_BACKEND=direct avant d'exécuter la commande :
    $ virt-sparsify --in-place output.QCOW2 

Préparation du type de fichier OCI pour l'import

L'image Private Cloud Appliance X9-2 et les images OCI utilisent le type de fichier .oci, qui comporte deux composants :

  • 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 et UEFI, la manière dont les périphériques virtuels sont implémentés) 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 groupe .oci pour le téléchargement.

Passez en revue les versions suivantes des fichiers de métadonnées BIOS et UEFI et utilisez la version la plus pertinente. Définissez la version du BIOS ou de l'UEFI comme déterminé par les valeurs d'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"
}