Esporta

Esportare tutti i dati del carico di lavoro (storage, immagini, file) in un host esterno, impostare l'host della utility e trasformare il disco di avvio.

Esporta disco di boot

Copiare il disco di boot dall'ambiente di origine in un server di utility che verrà utilizzato per preparare l'immagine per il caricamento in PCA.

Il metodo utilizzato dipende dall'hypervisor di origine e dalla piattaforma di gestione. Ad esempio, in Oracle VM o PCA 2.4 ottenere il file .img per il disco di boot copiandolo dal repository di storage mostrato nel file vm.cfg delle VM. Eseguire il comando sul nodo di calcolo o su Oracle VM Server (OVS). Ad esempio:

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

In questo esempio, il file di output viene rinominato con l'estensione file .raw, una modifica facoltativa che indica che il file Oracle VM .img utilizza il formato immagine 'raw disk'.

Esportare i repository di storage Private Cloud Appliance 2.x

Sono disponibili alcune opzioni per esportare i repository di storage dalle distribuzioni Private Cloud Appliance 2.x.

In Private Cloud Appliance 2.4, i repository di storage vengono installati sui nodi di calcolo che, per impostazione predefinita, si trovano sulle reti private di PCA e non dispongono di una connessione di rete preconfigurata al data center. In questo caso:

  • È possibile scp il file .img in uno dei due nodi di gestione.
  • In alternativa, creare un'esportazione di repository Oracle VM di sola lettura nei nodi di gestione, quindi scp in un host esterno.

I passi riportati di seguito vengono estratti dalla Guida di backup di Oracle Private Cloud Appliance. Questo processo può essere utilizzato per esportare in blocco tutte le VM in un repository di storage Oracle VM:

  1. In Oracle VM Manager, selezionare la scheda Server e VM. In Pool di server espandere il nome del pool di server per visualizzare i nomi dei server e selezionare uno dei server. Nel pannello di gestione, selezionare Esportazioni repository dall'elenco a discesa Prospettiva.
  2. Fare clic sull'icona +. Nella finestra di dialogo Crea esportazione repository selezionare il repository da esportare. Immettere l'indirizzo IP o il nome host dell'host che eseguirà il MOUNT della condivisione NFS, ossia l'indirizzo di uno dei nodi di gestione. Nel campo Opzioni immettere le opzioni ro,no_root_squash per garantire un'attivazione di sola lettura che renda visibili tutti i file del repository.
  3. Fare clic su OK e trovare l'esportazione nella lista Esportazioni repository.
  4. Copiare il valore nella colonna Percorso repository ed eseguire un comando di MOUNT utilizzando il nodo di calcolo selezionato come server NFS. Il nodo di gestione avrà una vista di sola lettura del repository di storage ed è possibile copiare le immagini dei dischi direttamente dalla directory VirtualDisks del repository senza prima doverla scp da un nodo di calcolo. Ad esempio:
    # 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

    È possibile ottimizzare le opzioni di attivazione. Ad esempio:

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

Individuare ed esportare immagini del disco della VM VirtualBox

In genere Oracle VM VirtualBox memorizza le immagini dei dischi nella directory VirtualBox VMs in una sottodirectory con lo stesso nome della VM.

  1. Le informazioni sulla VM dall'interfaccia utente forniscono il percorso completo:
    $ 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. Cercare all'interno della cartella l'immagine del disco .vdi o .vmdk per il disco di boot della VM e scp per l'host della utility.

Individuare ed esportare immagini dei dischi KVM

Le immagini dei dischi delle virtual machine possono essere individuate eseguendo il comando riportato di seguito:

  1. Elenca immagini 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. Individuare l'immagine del disco per la VM che si desidera esportare in Private Cloud Appliance e scp che si trova all'host della utility.

Individuare ed esportare immagini del disco VMware

Le immagini VMware possono essere esportate in un "appliance virtuale" che è in realtà un file tar contenente l'immagine del disco.

Seguire una procedura simile per ottenere l'appliance virtuale, quindi utilizzare il comando tar per estrarre il file .vmdk dal file .ova e copiarlo nell'host della utility.

Velocizzare l'esportazione comprimendo i file di immagini del disco

Le dimensioni dei file immagine del disco sono grandi e la copia in altri host può richiedere molto tempo. Questa operazione può risultare molto più veloce se si utilizza la compressione, soprattutto per le immagini di dischi sparsi.

Se si desidera, è possibile comprimere il file immagine del disco utilizzando un comando come gzip o lzop per ridurre il tempo necessario per la copia nell'host della utility. Ad esempio, utilizzando lzop e l'output di piping su scp:

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

In questo caso utilizziamo lzop per la compressione perché è disponibile una rete veloce, quindi la velocità di compressione era più importante del rapporto di compressione. Se si dispone di una rete più lenta, è possibile optare per un altro approccio, ad esempio utilizzando gzip o bzip2:

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

Tutti questi metodi, o senza alcuna compressione, sono ugualmente validi e dipendono dalle tue preferenze.

Impostazione dell'host utility

Creare un host di utility che esegua Oracle Linux. Può trattarsi di una virtual machine o di un'istanza Bare Metal.

Preparare l'host della utility installando l'interfaccia CLI OCI. Per istruzioni, vedere la sezione 1.2 della Guida per l'utente di Oracle Private Cloud Appliance.

Utilizzare i comandi seguenti per installare qemu-img e virt-sparsify. In questo esempio si presume un host Oracle Linux 7:

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

Trasforma disco di boot

Potrebbe essere necessario convertire il disco di boot nel formato qcow2 standard aperto utilizzato dall'hypervisor PCA.

Nota:

Si consiglia, ma non strettamente necessario, di convertire le immagini dei dischi già in formato vmdk o qcow2 e di raggrupparle in un file .oci. Il file .oci include l'immagine del disco in formato qcow2 e i metadati dell'immagine. Ciò garantisce che vengano forniti i metadati corretti per l'immagine con il contenuto del disco.
  1. È possibile convertire il disco di boot nell'host della utility che ha accesso all'interfaccia CLI OCI, al comando qemu-img e ad altre utility facoltative.
  2. Elaborare il disco di boot sul disco di boot preparato per PCA. Questo è un passo necessario per le immagini dei dischi di Oracle VM su Exalogic o PCA 2.x.

    Nota:

    Questo passo è facoltativo per le immagini del disco in formato .vmdk (VMware o Oracle VirtualBox). Non è necessario convertire i file in formato qcow2 del dispositivo KVM.
  3. Nel nodo della utility immettere un comando simile al seguente, sostituendo il nome file effettivo per il file immagine del 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
    • Utilizzare -f raw per dischi virtuali di Oracle VM e PCA 2.x
    • utilizzare -f vdi per i file .vdi di Oracle VM VirtualBox
    • utilizzare -f vmdk per le immagini .vmdk provenienti da VMware

    Nota:

    1. È necessario assegnare un nome al file di output output.QCOW2.
    2. L'esecuzione del comando qemu-img può richiedere molto tempo a seconda delle dimensioni del file immagine e della velocità del sistema. È possibile utilizzare il flag "-p" per visualizzare lo stato di avanzamento visualizzato come percentuale nel formato (nn.nn/100%.

    È consigliabile, ma non necessario, convertire un'immagine .vmdk perché Private Cloud Appliance può utilizzare il tipo di file specificato. Vedere la sezione Migrazione più avanti in questa soluzione.

  4. Potrebbe essere possibile ridurre le dimensioni dell'immagine del disco utilizzando lo strumento virt-sparsify. Questo strumento funziona su molti file system: ext2/3/4. xfs, btrfs, NTFS, LVM. Riduce la dimensione dell'immagine del disco sparsa eliminando i blocchi del disco non di proprietà di un file. La quantità di riduzione varia in base al contenuto dell'immagine del disco prima dell'esportazione. A seconda dell'ambiente di utility in uso, potrebbe essere necessario eseguire anche export LIBGUESTFS_BACKEND=direct prima di eseguire il comando:
    $ virt-sparsify --in-place output.QCOW2 

Prepara il tipo di file OCI per l'importazione

L'immagine X9-2 di Private Cloud Appliance e le immagini OCI utilizzano il tipo di file .oci, che contiene due componenti:

  • File image_metadata.json che descrive l'immagine in formato JSON e l'immagine effettiva del disco denominata output.QCOW2 creata.
  • Il file image_metadata.json descrive le impostazioni dell'immagine (BIOS vs. UEFI, la modalità di implementazione dei dispositivi virtuali) e il sistema operativo in esecuzione.

Selezionare la versione del BIOS o UEFI in base all'origine e modificare la descrizione del sistema operativo.

Le immagini Oracle Exalogic saranno in modalità BIOS.

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

File image_metadata.json di esempio

Utilizzare questo file image_metadata.json di esempio incluso in un bundle .oci per il caricamento.

Esaminare le seguenti versioni dei file di metadati BIOS e UEFI e utilizzarle in base a quanto pertinente. Impostare la versione BIOS o UEFI in base ai valori dell'ambiente di origine per operatingSystem e operatingSystemVersion in base all'immagine importata.

Immagini 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"
}

Immagini 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"
}