GNU/Linux >> Linux Esercitazione >  >> Linux

Migra la macchina virtuale da VMware ESXi a Proxmox VE

Ciao cari lettori, oggi migreremo una macchina virtuale da VMware ESXi a Proxmox VE.

Oggi non stiamo lavorando sul nostro ambiente di laboratorio ma su quello di produzione. Abbiamo programmato tempi di inattività per questo processo di migrazione. Stiamo migrando un server NTP virtuale dal nostro vecchio ESXi al nuovo cluster Proxmox.

Preparazione per la migrazione

Abbiamo un array di dischi RAID5 come datastore per il nostro vecchio hypervisor ESXi e Gluster FS Replicated Storage come storage condiviso in Proxmox Cluster. Sappiamo che VMware ESXi archivia i dischi VM nel formato immagine VMDK e per Proxmox abbiamo bisogno del formato immagine disco QCOW2. Quindi, cambieremo il formato dell'immagine da VMDK a QCOW2. Per saperne di più su Proxmox puoi visitare i nostri altri post su Proxmox.

Possiamo importare direttamente il disco VMware su Proxmox Hypervisor ma utilizzerà l'intera dimensione del disco allocata per l'immagine del disco virtuale. L'importazione dell'immagine del disco come thin provisioning fa risparmiare spazio su disco e ci consente di sovraccaricare lo spazio su disco tra le macchine virtuali.

Per importare un disco di una macchina virtuale come thin provisioning e rimuovere lo spazio su disco non necessario utilizzato dall'immagine disco, utilizzeremo un altro host di virtualizzazione CentOS intermedio con l'utilità qemu-img e lo strumento di compressione virt-sparsify, pigz installato al suo interno.

In questo articolo eseguiamo tutte le operazioni dall'interfaccia della riga di comando. Quindi, avremo bisogno dell'accesso alla shell per tutti e 3 gli host. Per abilitare l'accesso SSH in VMware ESXi, controlla questo documento. Dovremo anche consentire al client SSH di SCP file di immagine del disco dall'host ESXi; vai su Rete -> Regole firewall -> Client SSH nel portale host ESXi. Fare clic su Azioni e quindi su Abilita.

Preparazione dell'immagine disco VMware ESXi

Identifica la macchina virtuale di destinazione all'interno di ESXi.

# vim-cmd vmsvc/getallvms

Oppure usa grep per filtrare gli output non necessari

# vim-cmd vmsvc/getallvms | grep -i ntp

Qui abbiamo trovato che l'ID VM è 19 e il suo file di configurazione si trova all'interno di datastore2/NTP-1 directory.

Ora spegni la macchina virtuale di destinazione e controlla lo stato di alimentazione della VM

# vim-cmd vmsvc/power.getstate 19

Passare alla directory VM e determinare il nome del disco virtuale

VMware utilizza il formato immagine disco VMDK per archiviare i dati. In ESXi utilizza un file di metadati e nomi di immagini del disco effettivi come IMAGENAME-flat.vmdk. Qui troviamo che abbiamo 2 file di questo tipo, NTP-1.vmdk (metadata) e NTP-1-flat.vmdk.

Poiché il disco virtuale NTP-1-flat.vmdk ha una dimensione maggiore, lo comprimeremo in modo che non ci costerà più tempo nel trasferimento dei dati da ESXi all'host CentOS.

# pigz -v -1 -k -p8 NTP-1-flat.vmdk

Nota:se disponi di connessioni di rete ad alta velocità tra i server, puoi saltare la compressione.

Dopo il completamento della compressione, eseguiamo un SCP dell'immagine disco compressa e del file di metadati sul nostro host di virtualizzazione CentOS intermedio per convertire e sparsificare l'immagine del disco.

Convertire VMDK in QCOW2 e sparsificare l'immagine del disco QCOW2

Per convertire l'immagine del disco da VMDK al formato QCOW2 avremo bisogno di qemu-img utility che dovrebbe essere preinstallata nell'host CentOS Virtualizations. Puoi installarlo anche con il comando sottostante

# yum install -y qemu-img

Passa alla directory dell'immagine del disco e decomprimi il file dell'immagine del disco

# pigz -v -d NTP-1-flat.vmdk.gz

Converti il ​​formato di file da VMKD a QCOW2

# qemu-img convert -p -O qcow2 NTP-1.vmdk  NTP-1.qcow2

Installa virt-sysprep strumenti nell'host CentOS

# yum install -y /usr/bin/virt-sysprep

Per evitare problemi di dimensione della directory temporanea, stiamo creando un tmp directory all'interno del nostro vmdata directory e autorizzazione completa per tutti gli utenti

# mkdir /vmdata/tmp
# chmod 777 -R tmp

Sparse il file immagine del disco formattato qcow2

# virt-sparsify --tmp tmp --compress NTP-1.qcow2 ntp-1-sparsed.qcow2

Carica il nuovo file immagine disco sparsi su Proxmox VE Host

Distribuisci VM in Proxmox VE dall'immagine disco QCOW2 esistente

Creiamo una VM in Proxmox VE

qm create 120  --name ntp-1  \
    --sockets 1 --cores 2 --vcpus 2 --cpu host \
    --memory 4096 \
    --ostype l26 --arch x86_64 \
    --agent enabled=1 \
    --scsihw virtio-scsi-pci \
    --bootdisk scsi0 \
    --boot c

Qui 120 è l'ID VM in Proxmox

Importa l'immagine del disco ntp-1-sparsed.qcow2 nella VM

# qm importdisk 120 /path/to/image/ntp-1-sparsed.qcow2 glusterFSname --format=qcow2
# qm set 120 --scsi0 glusterFSname:120/vm-120-disk-0.qcow2

Configurare la rete per la macchina virtuale

# qm set 120 --net0 model=virtio,bridge=vmbr0,firewall=1,tag=10

Qui abbiamo usato l'ID VLAN 10 per la LAN del server, usa il tuo ID VLAN per il tipo di switchport con tag/trunk.

Verifica la configurazione della macchina virtuale

# qm config 120
 

Avvia la macchina virtuale

# qm start 120

Ecco fatto, la tua VM è stata migrata con successo da VMware ESXi a Proxmox VE.


Linux
  1. Come convertire VMDK (Virtual Machine Disk) in VDI usando VBoxManage?

  2. Come creare una seconda partizione primaria o aggiuntiva nella macchina virtuale OpenStack

  3. Come aggiungere memoria, vCPU, disco rigido alla macchina virtuale KVM Linux

  4. Avvia un sistema operativo nativo su un disco rigido come una macchina virtuale

  5. Posso creare una macchina virtuale da una macchina fisica Windows XP?

Come estendere la dimensione del disco della macchina virtuale KVM in Linux

Come accedere alla macchina virtuale Proxmox con il client SPICE

Come creare macchine virtuali Proxmox dal dashboard dell'interfaccia utente Web di Proxmox VE

Come clonare la macchina virtuale in VirtualBox

Come creare una nuova macchina virtuale su Proxmox?

Come aumentare lo spazio su disco virtuale VM su VirtualBox e VMware