Exportar

Exporte todos los datos de la 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 inicio

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 dependerá del hipervisor de origen y de 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 VM. 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 de '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 con el 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 en bloque 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, expanda el nombre del pool de servidores para mostrar los nombres de 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 Ruta de repositorio y ejecute un comando de montaje mediante 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 desde un nodo de cálculo primero. 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

Localización y exportación de imágenes de disco de VM VirtualBox

Oracle VM VirtualBox normalmente almacena 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 siguiente comando:

  1. Mostrar 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 en realidad es un archivo tar que contiene la imagen de 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.

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

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

Opcionalmente, 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, utilizando lzop y la salida de canalización a scp:

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

Utilizamos lzop para la compresión en este caso porque hay una red rápida disponible, por lo que la velocidad de compresión era 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 el uso de ninguna compresión en absoluto, 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 mediante la instalación de 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 supone que 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 inicio

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

Note:

Se recomienda, pero no es 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 el host de la utilidad que tiene acceso a la CLI de OCI, el comando qemu-img y otras utilidades opcionales.
  2. Procesar 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.

    Note:

    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 en el nombre de archivo real por el 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
    • utilizar -f vdi para archivos .vdi de Oracle VM VirtualBox
    • utilice -f vmdk para las imágenes .vmdk procedentes de VMware

    Note:

    1. Debe asignar al archivo de salida el nombre output.QCOW2.
    2. El comando qemu-img puede tardar bastante 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 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. Según el entorno de la utilidad, puede que también tenga que ejecutar 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 X9-2 de Private Cloud Appliance 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 el sistema operativo que ejecuta.

Seleccione la versión del 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

Ejemplo de archivos image_metadata.json

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

Revise las siguientes versiones de archivos de metadatos BIOS y UEFI y use la que sea relevante. Configure la versión del 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"
}