Exportar

Exporte todos los datos de carga de trabajo (almacenamiento, imágenes, archivos) a un host externo, configure el host de la utilidad y transforme el disco de inicio.

Exportar disco de arranque

Copie el disco de inicio del entorno de origen en un servidor de utilidades que se utilizará para preparar la imagen para cargarla en PCA.

El método que utilice depende del hipervisor de origen y la plataforma de gestión. Por ejemplo, en Oracle VM o PCA 2.4, obtenga el archivo .img para el disco de inicio copiándolo del repositorio de almacenamiento que se muestra en el archivo VM.cfg de la máquina virtual. Ejecute el comando en el nodo de cálculo u Oracle VM Server (OVS). Por ejemplo:

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

En este ejemplo, se cambia el nombre del archivo de salida por la extensión de archivo .raw, un cambio opcional que indica que el archivo .img de Oracle VM utiliza el formato de imagen "disco raw".

Exporte los repositorios de almacenamiento de Private Cloud Appliance 2.x

Tiene un par de opciones para exportar repositorios de almacenamiento desde despliegues de Private Cloud Appliance 2.x.

En Private Cloud Appliance 2.4, los repositorios de almacenamiento se montan en los nodos de cálculo, que por defecto están en las redes privadas de PCA y no tienen una conexión de red preconfigurada al centro de datos. En ese caso:

  • Puede scp el archivo .img en cualquiera de los dos nodos de gestión.
  • O bien, cree una exportación de repositorio de Oracle VM de solo lectura a los nodos de gestión y, a continuación, scp a un host externo.

Los siguientes pasos se extraen de la Guía de copia de seguridad de Oracle Private Cloud Appliance. Este proceso se puede utilizar para exportar de forma masiva todas las máquinas virtuales de un repositorio de almacenamiento de Oracle VM:

  1. En Oracle VM Manager, seleccione el separador Servidores y máquinas virtuales. En Pools de servidores, amplíe el nombre del pool de servidores para mostrar los nombres del servidor y seleccione uno de los servidores. En el panel de gestión, en la lista desplegable Perspectiva, seleccione Exportaciones de repositorio.
  2. Haga clic en el icono +. En el cuadro de diálogo Crear exportación de repositorio, seleccione el repositorio que se va a exportar. Introduzca la dirección IP o el nombre de host del host que montará el recurso compartido NFS, que es la dirección de cualquiera de los nodos de gestión. En el campo Opciones, introduzca las opciones ro,no_root_squash para garantizar un montaje de solo lectura que haga visibles todos los archivos del repositorio.
  3. Haga clic en Aceptar y busque la exportación en la lista de exportaciones de repositorio.
  4. Copie el valor de la columna Repository Path y ejecute un comando de montaje con el nodo de cálculo seleccionado como servidor NFS. El nodo de gestión tendrá una vista de solo lectura del repositorio de almacenamiento y puede copiar imágenes de disco directamente desde el directorio VirtualDisks del repositorio sin tener que scp primero desde un nodo de cálculo. Por ejemplo:
    # 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

    Puede optimizar las opciones de montaje. Por ejemplo:

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

Localizar y exportar imágenes de disco VirtualBox de VM

Oracle VM VirtualBox suele almacenar imágenes de disco en el directorio VirtualBox VMs en un subdirectorio con el mismo nombre que la VM.

  1. La información de VM de la interfaz de usuario proporciona la ruta completa:
    $ 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. Busque en esa carpeta la imagen de disco .vdi o .vmdk para el disco de inicio de la VM y scp para el host de la utilidad.

Localización y exportación de imágenes de disco de KVM

Las imágenes de disco de máquina virtual se pueden ubicar mediante la ejecución del comando que se muestra a continuación:

  1. Muestra las imágenes de disco:
    $ 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. Busque la imagen de disco de la máquina virtual que desea exportar a Private Cloud Appliance y scp en el host de la utilidad.

Localizar y exportar imágenes de disco VMware

Las imágenes VMware se pueden exportar a un "dispositivo virtual", que es en realidad un archivo tar que contiene la imagen del disco.

Utilice un procedimiento similar para obtener el dispositivo virtual y, a continuación, utilice el comando tar para extraer el archivo .vmdk del archivo .ova y copiarlo en el host de la utilidad.

Aceleración de la exportación mediante la compresión de archivos de imagen de disco

Los archivos de imagen de disco son grandes y su copia en otros hosts puede tardar mucho tiempo. Esto puede ser mucho más rápido si utiliza compresión, especialmente para imágenes de disco dispersas.

De manera opcional, puede comprimir el archivo de imagen de disco mediante un comando como gzip o lzop para reducir el tiempo de copia en el host de la utilidad. Por ejemplo, con lzop y la salida de piping en scp:

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

Utilizamos lzop para la compresión en este caso porque hay disponible una red rápida, por lo que la velocidad de compresión fue más importante que la relación de compresión. Si tiene una red más lenta, puede optar por otro enfoque, como el uso de gzip o bzip2:

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

Todos estos métodos, o no usar ninguna compresión, son igualmente válidos y dependen de sus preferencias.

Configuración del host de la utilidad

Cree un host de utilidad que ejecute Oracle Linux. Puede ser una máquina virtual o una instancia con hardware dedicado.

Prepare el host de la utilidad instalando la CLI de OCI. Consulte la sección 1.2 de la guía del usuario de Oracle Private Cloud Appliance para obtener instrucciones.

Utilice los siguientes comandos para instalar qemu-img y virt-sparsify. En este ejemplo, se asume un host de Oracle Linux 7:

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

Transformar disco de arranque

Puede que necesite convertir el disco de inicio al formato qcow2 estándar abierto utilizado por el hipervisor PCA.

Nota:

Se recomienda, pero no estrictamente necesario, convertir las imágenes de disco ya en formato vmdk o qcow2 y empaquetarlas en un archivo .oci. El archivo .oci incluye la imagen de disco en formato qcow2 y los metadatos de la imagen. Esto garantiza que los metadatos correctos para la imagen se proporcionen con el contenido del disco.
  1. Convierte el disco de inicio en un host de utilidad que tiene acceso a la CLI de OCI, el comando qemu-img y otras utilidades opcionales.
  2. Procese el disco de inicio en el disco de inicio que se está preparando para PCA. Este es un paso necesario para las imágenes de disco de Oracle VM en Exalogic o PCA 2.x.

    Nota:

    Este paso es opcional para las imágenes de disco en formato .vmdk (VMware u Oracle VirtualBox). No es necesario convertir los archivos en formato qcow2 de KVM.
  3. En el nodo de utilidad, introduzca un comando como el siguiente, sustituyendo el nombre de archivo real del archivo de imagen de disco:
    $ 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
    • Utilice -f raw para discos virtuales de Oracle VM y PCA 2.x
    • utilice -f vdi para archivos .vdi de Oracle VM VirtualBox
    • utilice -f vmdk para imágenes .vmdk procedentes de VMware

    Nota:

    1. Debe asignar un nombre al archivo de salida output.QCOW2.
    2. El comando qemu-img puede tardar bastante tiempo en ejecutarse según el tamaño del archivo de imagen y la velocidad del sistema. Puede utilizar el indicador "-p" para mostrar el progreso mostrado como porcentaje con el formato (nn.nn/100%.

    Se recomienda, pero no es necesario, convertir una imagen .vmdk porque Private Cloud Appliance puede utilizar ese tipo de archivo. Consulte la sección Migrar más adelante en esta solución.

  4. Puede reducir el tamaño de la imagen de disco mediante la herramienta virt-sparsify. Esta herramienta funciona en muchos sistemas de archivos: ext2/3/4. xfs, btrfs, NTFS, LVM. y reduce el tamaño de la imagen de disco disperso eliminando los bloques de disco que no son propiedad de un archivo. La cantidad de reducción varía según el contenido de la imagen de disco antes de la exportación. En función del entorno de su utilidad, puede que tenga que emitir también export LIBGUESTFS_BACKEND=direct antes de ejecutar el comando:
    $ virt-sparsify --in-place output.QCOW2 

Preparación del tipo de archivo de OCI para la importación

La imagen de Private Cloud Appliance X9-2 y las imágenes de OCI utilizan el tipo de archivo .oci, que tiene dos componentes:

  • Archivo image_metadata.json que describe la imagen en formato JSON y la imagen de disco real denominada output.QCOW2 que ha creado.
  • El archivo image_metadata.json describe la configuración de la imagen (BIOS frente a UEFI, cómo se implementan los dispositivos virtuales) y qué sistema operativo ejecuta.

Seleccione la versión de BIOS o UEFI según el origen y cambie la descripción del sistema operativo.

Las imágenes de Oracle Exalogic estarán en modo BIOS.

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

Archivos de Ejemplo image_metadata.json

Utilice este archivo image_metadata.json de ejemplo incluido en un paquete .oci para la carga.

Revise las siguientes versiones de archivo de metadatos UEFI y BIOS y use el que corresponda. Defina la versión de BIOS o UEFI según lo determinado por los valores del entorno de origen para operatingSystem y operatingSystemVersion según la imagen importada.

Imágenes del 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"
}

Imágenes 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"
}