Come convertire un server Linux fisico in una VM VMware: guida completa
L’esecuzione dei server su VM offre una serie di vantaggi quali scalabilità, utilizzo razionale delle risorse, alta disponibilità, bilanciamento del carico, gestione semplificata, funzioni di protezione dei dati e così via. Per questo motivo, potresti voler migrare alcuni dei tuoi server fisici su VM. Questo processo è noto anche come conversione da fisico a virtuale ed è indicato con l’acronimo P2V.
VMware è uno dei leader nel mondo IT nella fornitura di soluzioni di virtualizzazione e Linux è uno dei sistemi operativi più affidabili in esecuzione sui server. Questo articolo del blog spiega l’importanza del backup dei server Linux e come convertire un server Linux fisico in una macchina virtuale (VM) in esecuzione su un Host VMware ESXi in vSphere. Vengono presi in esame due diversi metodi di conversione VMware P2V per Linux utilizzando come esempio Ubuntu 18.
Metodo 1 – Utilizzo di VMware vCenter Converter
VMware vCenter Converter Standalone è un’applicazione gratuita installabile su Windows che consente di convertire macchine fisiche Windows, macchine fisiche Linux, macchine virtuali Hyper-V, macchine virtuali VMware e macchine virtuali in esecuzione su Red Hat KVM o RHEL XEN. I tipi di destinazione supportati includono: macchine virtuali per host ESXi non gestiti; macchine virtuali per host ESXi gestiti da vCenter Server; macchine virtuali per VMware Workstation; macchine virtuali per VMware Fusion.
La conversione di una macchina virtuale Hyper-V in una macchina virtuale VMware residente su un host ESXi è stata spiegata in questo post del blog.
Il principio di funzionamento
Quando si converte una macchina fisica Linux accesa in una macchina virtuale in formato VMware ESXi, VMware vCenter Converter Standalone non installa un agente sulla macchina Linux di origine (a differenza delle macchine Windows). Il processo di conversione può essere suddiviso in due fasi principali.
Fase 1 . VMware Converter si connette a una macchina Linux di origine tramite SSH e consente di selezionare i componenti da copiare, come dischi virtuali e partizioni. In base ai componenti selezionati della macchina fisica Linux di origine e alle impostazioni configurate della macchina virtuale di destinazione, il convertitore creerà una macchina virtuale ausiliaria.
Fase 2 . Una volta selezionati tutti i componenti necessari e configurate le impostazioni di rete della VM ausiliaria, VMware Converter crea una VM ausiliaria su un host VMware ESXi di destinazione e sugli archivi dati. Successivamente, il convertitore avvia la VM ausiliaria, che si avvia dall’immagine ISO della VM ausiliaria, e copia tutti i dati necessari da una macchina Linux di origine a una VM di destinazione che mantiene lo stato di VM ausiliaria fino a quando il processo di conversione termina.
Una VM ausiliaria viene distribuita dall’immagine ISO basata su Linux memorizzata nel file system della macchina Windows su cui è installato il convertitore. Il percorso dei file converter-helper-vm.iso e converter-helper-vm-x64.iso utilizzati per l’avvio di una VM ausiliaria su un host ESXi è, per impostazione predefinita, “ C:Program Files (x86)VMwareVMware vCenter Converter Standalone” .
Dopo aver copiato i dati nella VM di destinazione, la VM può essere riconfigurata da VMware Converter se sono state selezionate le opzioni appropriate per il processo di conversione.
Requisiti di sistema
Esistono alcuni requisiti che devono essere soddisfatti per eseguire la conversione VMware P2V di Linux con VMware Converter:
- Una macchina fisica con sistema operativo Linux deve essere accesa.
- Un host VMware ESXi deve essere acceso e accessibile tramite la rete. Il client e il server di vCenter Converter Standalone devono potersi comunicare tra loro. Per la comunicazione di rete vengono utilizzate per impostazione predefinita le porte TCP 22, 443 e 902.
- Sulla macchina fisica Linux da convertire deve essere utilizzato il boot loader GRUB. LILO non è supportato.
- I dischi ottici devono essere espulsi dalle unità ottiche.
- Il server SSH deve essere configurato su una macchina fisica Linux (la macchina di origine).
Nota: Il server SSH può essere installato su Ubuntu Linux con il comando:
apt-get install openssh-server
L’accesso remoto per l’utente con password tramite SSH può essere configurato modificando il file sshd_config :
vim /etc/ssh/sshd_config
Creare o rimuovere il commento dalla riga:
PasswordAuthentication yes
Salvare il file di configurazione
:wq
Riavviare il demone sshd (servizio)
service sshd restart
Conversione P2V di Linux con VMware Converter: guida passo passo
Per eseguire la conversione P2V di Linux, è necessario seguire questi passaggi:
1. Scarica Scaricare VMware vCenter Converter Standalone dal sito web ufficiale.
2. Installare il convertitore su un computer Windows in grado di connettersi al computer Linux tramite la rete. Il processo di installazione è semplice: basta eseguire il file EXE e seguire le indicazioni della procedura guidata di installazione. Nell’esempio odierno viene utilizzato VMware Converter 6.2.
3. Eseguire VMware vCenter Converter Standalone.
4. Fare clic su Convert machine.
5. Source System. Selezionare il sistema di origine nella procedura guidata di conversione della macchina che si è aperta. Selezionare Powered on e Remote Linux machine. Specificare l’indirizzo IP, il nome utente e la password utilizzati sul computer Linux remoto. Ricordare che il server SSH deve essere configurato sulla macchina Linux e che un firewall non deve bloccare le connessioni SSH in questa fase. In caso contrario, verrà visualizzato il messaggio di errore: Impossibile connettersi via SSH alla macchina di origine. Verificare se un firewall sta bloccando l’accesso al demone SSH sulla macchina di origine . L’utente specificato deve essere in grado di accedere alla console Linux tramite SSH utilizzando la combinazione login/password o un file di chiave privata. Per questo esempio viene utilizzato un utente denominato user1 con una password.
5.1. Fare clic su View source details per visualizzare i dettagli della macchina Linux remota che deve essere convertita in una VM VMware. Premere Avanti per continuare e passare al passaggio successivo.
Se viene visualizzata l’avvertenza di sicurezza (avvertenza relativa all’impronta digitale dell’host remoto), fare clic su Sì per connettersi. A volte il convertitore non riesce a eseguire comandi sulla macchina Linux remota e visualizza l’avvertenza: Impossibile interrogare la macchina Linux di origine in tempo reale. Assicurati di poter eseguire sudo senza inserire una password quando accedi alla macchina di origine tramite SSH come your_username .
In questo caso, è necessario modificare il file /etc/sudoers e consentire al proprio utente di eseguire sudo senza inserire la password. Invece di modificare manualmente /etc/sudoers , utilizzare il seguente comando:
visudo
Aggiungere la riga alla fine del file come segue:
user1 ALL=(ALL) NOPASSWD: ALL
Dove user1 è il nome del proprio utente. È necessario inserire il proprio nome utente. Premere Ctrl+X per uscire e premere Y (Sì) per salvare le modifiche al file.
6. Destination System. Selezionare il sistema di destinazione. Per impostazione predefinita, il tipo di destinazione è definito come macchina virtuale VMware Infrastructure se si sta convertendo una macchina fisica Linux, e questa è l’unica opzione disponibile per convertire una macchina fisica Linux in una VM VMware. Ciò significa che la VM di destinazione verrà eseguita su un server ESXi o nel Cluster VMware vSphere. Se il Host ESXi su cui si desidera eseguire la macchina virtuale convertita è gestito da vCenter, selezionare l’indirizzo IP del proprio vCenter Server e definire le credenziali dell’amministratore di vCenter o di un altro utente che disponga dei privilegi amministrativi per la gestione di vCenter Server.
Nota: Non è possibile convertire una macchina fisica Linux in una macchina virtuale in formato VMware Workstation con VMware vCenter Converter Standalone.
Se vengono visualizzate avvertenze relative ai certificati, è possibile fare clic su Ignora per continuare.
7. Destination Virtual Machine. Selezionare il data center in cui archiviare la macchina virtuale e inserire il nome della VM di destinazione, ad esempio, Ubuntu18-04-vm .
8. Destination Location. Selezionare un host ESXi su cui eseguire la macchina virtuale e un archivio dati in cui archiviare i file della macchina virtuale. È inoltre possibile selezionare la versione della macchina virtuale. Per impostazione predefinita, viene selezionata la versione più recente supportata. In questo caso, si tratta della versione 13 poiché si utilizza ESXi 6.5.
9. Options. In questa fase è possibile modificare diverse opzioni di conversione.
Dati da copiare . È possibile selezionare tutti i volumi o volumi personalizzati da copiare e scegliere il tipo di provisioning del disco virtuale ((provisioning a capacità fissa o variabile). È inoltre possibile archiviare ciascun disco virtuale su un archivio dati diverso. Lasciare selezionata la casella di controllo “ Crea layout partizioni ottimizzato ”. Questa opzione serve a ottimizzare l’allineamento delle partizioni del disco.
Dispositivi . Impostare la quantità di memoria necessaria per la VM di destinazione nella scheda Memory . Impostare il controller del disco, il numero di processori e di core nella scheda Other .
Networks . Selezionare il numero di adattatori di rete virtuali da collegare alla VM. Quindi selezionare la rete virtuale a cui ciascun adattatore di rete deve essere collegato connesso, il tipo di controller di rete e, se necessario, spuntare la casella di controllo Connetti alla VM al boot .
Opzioni avanzate . Le impostazioni post-conversione si trovano in questa sezione. Nel nostro caso, per la conversione di un server Linux fisico in una VM VMware, è disponibile solo l’opzione Riconfigura macchina virtuale di destinazione . Questa opzione viene utilizzata per configurare il boot loader e aggiornare i driver utilizzati dal sistema operativo, al fine di ottimizzarli per l’esecuzione di una VM nell’ambiente virtuale VMware (con l’hardware virtuale appropriato).
Rete della macchina virtuale ausiliaria . Durante il processo di conversione di un server Linux in una macchina virtuale, VMware vCenter Converter crea una macchina virtuale ausiliaria sull’host/archivio dati di destinazione. La VM ausiliaria deve avere accesso tramite la rete alla macchina fisica di origine su cui è in esecuzione Linux, al fine di clonare tutti i file della macchina di origine. In questa sezione è possibile configurare l’indirizzo IP, la netmask, il gateway e i server DNS utilizzati per la connessione di rete della VM ausiliaria.
10. Summary. Verificare tutte le impostazioni di conversione per la conversione P2V di Linux e, se tutto è corretto, fare clic su Fine per avviare il processo di conversione.
11. Attendere il completamento del processo di conversione. La durata della conversione dipende dalla quantità di dati memorizzati sui dischi della macchina Linux di origine. Se, al termine della conversione, in VMware vCenter Converter viene visualizzato lo stato Completato del processo di conversione, è possibile avviare la VM Linux di destinazione dall’interfaccia di VMware vSphere Client, VMware Host Client o VMware Workstation.
Tuttavia, a volte il processo di conversione P2V della macchina Linux può terminare al 97% con l’errore:
FALLITO: Si è verificato un errore durante la conversione: ‘GrubInstaller::InstallGrub: /usr/lib/vmware-converter/installGrub.sh non è riuscito con codice di ritorno: 127 e messaggio: FATAL: kernel troppo vecchio. Errore durante l’esecuzione di vmware-updateGrub.sh tramite chroot in /mnt/p2v-src-root. Comando:
chroot "/mnt/p2v-src-root" /vmware-updateGrub.sh "GRUB2" "(hd0)" "(hd0,1)" /vmware-device.map "grub2-install" '
Questo problema può verificarsi perché il boot loader GRUB non è stato configurato correttamente da VMware vCenter Converter sulla VM di destinazione. Se si tenta di avviare la VM Linux dopo la conversione, verrà visualizzato il seguente errore: Errore durante il caricamento del sistema operativo .
Come è possibile risolvere questo problema di VMware Converter relativo a Linux?
1. È necessario avviare il sistema dal supporto di installazione di Ubuntu e utilizzarlo come disco di ripristino. Modificare le impostazioni della VM utilizzando VMware vSphere Client, VMware Host Client o VMware Workstation (VM > Edit Settings).
2. Nelle impostazioni Hardware , selezionare l’unità CD/DVD della VM e scegliere il supporto di installazione avviabile di Ubuntu. Nel nostro esempio, utilizziamo l’immagine ISO di installazione di Ubuntu 18.04 che si trova nell’archivio dati, accessibile dall’Host VMware ESXi su cui risiede la VM Linux dopo la conversione. Non dimenticare di spuntare la casella di controllo Connetti all’accensione .
3. Dopo aver avviato la VM, premi F2 per accedere alla configurazione del BIOS della VM. Seleziona CD-ROM come primo dispositivo di avvio nella sezione Avvio .
Quindi vai su Exit > Exit Saving Changes.
In alternativa, puoi modificare l’ordine di avvio una volta premendo Esc anziché F2 subito dopo l’avvio di una VM.
4. Dopo l’avvio dal supporto di installazione di Ubuntu, seleziona Try Ubuntu nella schermata Benvenuto . Attendere che Ubuntu venga caricato dal Live DVD e verrà visualizzato il desktop di Ubuntu.
5. Aprire la console di Ubuntu e ottenere i privilegi di root.
sudo -i
6. Elencare i dischi disponibili.
ls -al /dev/sd*
fdisk -l
Nel nostro esempio, viene utilizzato lo schema di partizionamento del disco più semplice per Ubuntu installato sulla macchina fisica. Linux è installato sull’unica partizione /dev/sda1 che rappresenta l’intero disco. È necessario individuare quale partizione viene utilizzata per l’avvio di Linux e contenga la /boot/ directory oppure sia montata sulla /boot/ directory.
7. È possibile individuare la partizione utilizzata per l’avvio di Linux con parted:
parted /dev/sda
unit MB
p free
Ora è possibile vedere quale partizione viene utilizzata per l’avvio di Linux (il flag di avvio è presente in quella stringa). Successivamente, è possibile uscire da parted .
quit
Nota: Se si utilizza uno schema di partizionamento manuale e una partizione di avvio separata per avviare Linux, l’elenco delle partizioni risulterà diverso, ma si dovrebbe comunque individuare la partizione con il flag boot .
8. Creare la directory sul disco RAM e montare le partizioni utilizzate da Ubuntu. Se Ubuntu è installato su un’unica partizione, utilizzare comandi del tipo: mkdir /mnt/ubuntu18
mount /dev/sda1 /mnt/ubuntu18
Nota: Se Ubuntu utilizza più partizioni, creare directory separate e montare ciascuna partizione nella directory appropriata:
mkdir /mnt/ubuntu18/boot
mkdir/mnt/ubuntu18/root
mount /dev/sda1 /mnt/ubuntu18/boot
mount /dev/sda2 /mnt/ubuntu18/root
e così via.
9. Installare V im (l’editor di testo).
apt-get install vim
10. Verificare l’identificatore di disco per ciascuna partizione. È necessario conoscere l’UUID della partizione che contiene la /boot directory (o la partizione montata sulla /boot directory). Prendete nota di questo nuovo UUID. Nel nostro caso, questa partizione è /dev/sda1
blkid
11. Modificate il file /etc/fstab sul disco virtuale utilizzato dall’istanza di Ubuntu installata. Il file /etc/fstab ha la sua ubicazione nella directory temporanea in cui abbiamo montato il filesystem di root di Ubuntu (/mnt/ubuntu18/etc/fstab ).
vim /mnt/ubuntu18/etc/fstab
Modificare l’UUID di ciascuna partizione in /etc/fstab per consentire il montaggio automatico della partizione all’avvio di Linux. Sostituire i vecchi valori UUID utilizzati per i dischi su una macchina fisica Linux con i nuovi valori UUID utilizzati su una nuova VM. Nell’attuale esempio semplice, viene utilizzata una sola partizione /dev/sda1 che deve essere montata nella directory radice (/). Pertanto, dobbiamo modificare 2516177b-e9a9-4502-bdae-a3626fe3ab0a in dd05b02c-8772-4ec2-9340-2473ec8c2f8b.
Salva le modifiche e chiudi vim.
:wq
Nota: Se il tuo sistema Linux utilizza più partizioni, potrebbe essere necessario modificare il valore UUID per le altre partizioni oppure definirle semplicemente come sda2 , sda3 , sdb1 , sdb2 ecc. per consentire il montaggio automatico di tali partizioni all’avvio di Linux.
12. Modifica il file di configurazione di GRUB, che solitamente ha la sua ubicazione nella /boot/grub/ directory. Ricordate la directory temporanea in cui avete montato una partizione contenente i file della directory /boot/ . Dopo aver convertito una macchina fisica Linux in una VM, l’UUID del disco è stato modificato sulla VM di destinazione e, per questo motivo, il boot loader (GRUB) non riesce ad avviarsi dalla partizione necessaria. Nel nostro caso, modifichiamo il file grub.cfg con il comando:
vim /mnt/ubuntu18/boot/grub/grub.cfg
13. Sostituite il vecchio UUID con quello nuovo. L’UUID compare più volte nel file di configurazione e modificare manualmente questo valore non è pratico. L’editor di testo vim consente di effettuare la sostituzione automatica del testo di origine con quello di destinazione utilizzando il comando: :%s/source_text/target_text/g
Dove %s significa che tutti i valori corrispondenti presenti nell’intero file di testo devono essere sostituiti.
Nel nostro esempio attuale, utilizziamo il comando:
:%s/2516177b-e9a9-4502-bdae-a3626fe3ab0a/dd05b02c-8772-4ec2-9340-2473ec8c2f8b/g
Salvare le modifiche nel file di sola lettura e uscire da vim.
:wq!
Nota: Se il proprio sistema Linux utilizza più partizioni, sostituire i valori UUID di tutte le partizioni i cui UUID sono menzionati nel file grub.cfg .
14. Ora è necessario reinstallare GRUB come boot loader nella stessa directory in cui era stato installato in precedenza. Nel nostro esempio, GRUB era installato nella directory /boot e la directory /boot è ora temporaneamente accessibile come /mnt/ubuntu18/boot nel nostro esempio. Il disco utilizzato per l’avvio di Ubuntu è /dev/sda di conseguenza.
grub-install --boot-directory=/mnt/ubuntu18/boot /dev/sda
15. Smontare tutte le partizioni montate in precedenza:
umount /dev/sda1
16. Spegnere la VM
init 0
17. Riconfigurare le impostazioni di avvio nelle impostazioni della VM in modo da avviare il sistema da un disco rigido virtuale anziché da CD-ROM.
18. Accendere la VM.
19. Ora la VM può avviarsi dal proprio disco rigido virtuale con GRUB su un host VMware ESXi.
In questo modo, saprete come eseguire la conversione P2V di Linux con VMware vCenter Converter Standalone. Purtroppo, la versione Linux di VMware Converter non è disponibile, ma se desiderate convertire il vostro server Linux fisico in una VM VMware utilizzando esclusivamente macchine Linux, dovreste familiarizzare con il secondo metodo di conversione P2V per Linux.
Metodo 2 – Conversione P2V da Linux a VMware senza VMware Converter
Il secondo metodo per convertire una macchina fisica Linux in una VM in formato ESXi non richiede VMware vCenter Converter Standalone. Questo metodo è indicato per utenti e amministratori che non dispongono di una macchina Windows nel proprio ambiente (come ricorderete, VMware vCenter Converter può essere installato solo su Windows). Il principio alla base del secondo metodo di conversione P2V da Linux a VMware è il seguente:
- Creare immagini dei dischi fisici utilizzati in un server Linux fisico con l’utilità dd
- Convertire le immagini risultanti in immagini nel formato vmdk
- Creare una nuova macchina virtuale in VMware Workstation (eseguibile su Linux o Windows) utilizzando i dischi virtuali esistenti per la nuova VM
- Esportare la VM dal formato VMware Workstation in un modello OVF
- Creare una nuova VM su un host ESXi a partire dal modello OVF
Nel nostro esempio, Ubuntu 18 è installato su una macchina fisica che deve essere convertita, ESXi 6.5 e vCenter 6.5 vengono utilizzati come destinazione, mentre VMware Workstation 15 funge da punto di transizione nel processo di conversione P2V di Linux.
Guida passo passo
1. Sul server Linux fisico, eseguire l’utilità dd (duplicatore di dati) per ciascun disco fisico (/dev/sda , /dev/sdb ecc.) e creare l’immagine di ciascun disco. È possibile collegare un disco rigido USB alla propria macchina fisica Linux e memorizzare su tale disco rigido USB le immagini create con l’utilità dd . Successivamente, è possibile collegare quel disco rigido USB a una macchina sulla quale deve essere creata una VM. Nell’esempio attuale, tutte le partizioni utilizzate da Linux hanno la loro ubicazione sul /dev/sda disco:
dd if=/dev/sda of=/media/user1/data/sda.img bs=8M conv=sync,noerror status=progress
Dove:
if=/dev/sda – il file di input che rappresenta l’intero disco fisico;
of=/media/user1/data/sda.img – il percorso del file immagine di output che, in questo caso, si trova sul disco esterno.
bs=8M – la dimensione del blocco è di 8 MB. Questa opzione aumenta la velocità poiché dd copia i dati utilizzando porzioni di 512 byte per impostazione predefinita
conv=sync,noerror – viene utilizzata per impedire che dd si interrompa in caso di errore durante la lettura dei dati da un disco (file) di origine.
status=progress – utilizzare questa opzione per visualizzare lo stato di avanzamento dell’operazione nella console per maggiore comodità
2. Installare qemu che è un’applicazione open-source per l’emulazione hardware. È possibile installare qemu su qualsiasi macchina Linux.
apt-get install qemu
3. Nella console di Linux, andare nella directory in cui si trova l’ubicazione dei img file creati in precedenza. Convertire le immagini dei dischi realizzate con l’utilità dd dal formato di file img al formato vmdk . Per questa operazione è possibile utilizzare Qemu. Nel nostro esempio convertiamo un’immagine disco:
qemu-img convert -o compat6 sda.img -O vmdk sda-vmware.vmdk
Ora le immagini disco sono state convertite nel formato vmdk e sono pronte per essere aperte in VMware Workstation. Come ricorderete, il formato dei dischi virtuali VMDK è diverso per VMware Workstation e VMware ESXi. I dettagli sul formato dei file VMDK sono spiegati su qui. È necessario esportare una macchina virtuale da VMware Workstation in un modello OVF e quindi importare la macchina virtuale dal modello OVF su un Host VMware ESXi.
Assicurarsi che VMware Workstation sia installato su uno dei propri computer. Nel nostro esempio, VMware Workstation 15 è installato su una macchina con Ubuntu 18, ma non sulla macchina Linux di origine che deve essere convertita in una macchina virtuale (non utilizziamo Windows per questo metodo P2V da Linux). La procedura per i computer Windows con VMware Workstation è simile.
4. Creare una nuova directory sul computer su cui è installato VMware Workstation, ad esempio: /vms/P2V_Linux
mkdir /vms/P2V_Linux
5. Copiare i file vmdk convertiti da qemu in quella directory. In questo caso, copiamo il file sda-vmware.vmdk in quella directory.
6. Crea una nuova VM in VMware Workstation:
File > New virtual machine
Si aprirà una Procedura guidata Nuova VM . È necessario completare tutti i passaggi di configurazione di questa procedura guidata:
Virtual Machine Configuration. Seleziona Personalizzata (avanzata) per abilitare la configurazione delle opzioni avanzate. Fare clic su Avanti per continuare.
Virtual Machine Hardware Compatibility. Selezionare la versione hardware della VM necessaria, ad esempio Workstation 15.x.
Guest Operation System Installation. Selezionare Installerò il sistema operativo in un secondo momento .
Guest Operating System. Selezionare Linux , quindi selezionare Ubuntu a 64 bit dal menu a discesa.
Virtual Machine Name. Inserire il nome e impostare l’ubicazione della VM. In questo esempio, il nome della VM è P2V Linux e la sua ubicazione è /vms/P2V_Linux_VM/
Processor configuration. Selezionare il numero di processori e il numero di core in base alla configurazione utilizzata sulla macchina Linux fisica che si sta convertendo in una VM VMware.
Memory for the Virtual Machine. Impostare la quantità di memoria in modo che sia almeno pari a quella presente sul computer Linux fisico.
Network Connection. Selezionare il tipo di rete, ad esempio, Rete in bridge . Assicurarsi che il server Linux di origine sia ora disconnesso per evitare conflitti di rete.
I/O Controller Types. Selezionare il valore consigliato. In questo esempio, Controller SCSI: LSI Logic (consigliato) è selezionato.
Virtual Disk Type. Selezionare il tipo di disco consigliato. Nel nostro caso, è SCSI (consigliato).
Select a Disk. Scegliere l’opzione Use an existing virtual disk .
Select an Existing Disk. Sfoglia il file vmdk corrispondente del disco convertito /dev/sda . Nell’esempio attuale, il file sda-vmware.vmdk è selezionato come disco virtuale esistente.
Nota: Se si dispone di più dischi rigidi su un server Linux fisico di origine e di più file VMDK dopo la conversione, selezionare il primo file vmdk convertito dal disco /dev/sda . Aggiungere manualmente altri dischi dopo la creazione della VM modificando le impostazioni della VM.
Selezionare Mantieni formato esistente per una migliore compatibilità.
Ready to Create Virtual Machine. Controlla il riepilogo della configurazione e, se tutto è corretto, premi Termina .
Una volta creata la VM, puoi verificarne la configurazione prima di avviarla.
Nota: Se hai convertito più dischi fisici in dischi virtuali, aggiungi i dischi virtuali rimanenti procedendo come segue:
- Fai clic su VM > Impostazioni
- Fai clic su Aggiungi nella scheda Hardware
- Seleziona Disco rigido
- Seleziona l’opzione consigliata (SCSI nel nostro caso)
- Fare clic su Utilizza un disco virtuale esistente
- Seleziona un file di disco virtuale
7. Accendi la VM in VMware Workstation (assicurati che tutti i dischi virtuali necessari siano stati aggiunti alla configurazione della VM).
8. Una volta caricato il sistema guest Linux sulla VM, verifica la connessione di rete:
ifconfig
9. Installa VMware Tools sul sistema Linux in esecuzione sulla VM. In Ubuntu, VMware Tools può essere installato da un’immagine ISO virtuale o dai repository software online.
apt-get install open-vm-tools
10. Se tutto è corretto, spegnere la VM e prepararsi a creare un modello OVF per migrare la VM su un Host VMware ESXi.
11. Nell’interfaccia grafica di VMware Workstation, fare clic su File > Export to OVF.
12. Salvare il file OVF nella directory contenente la VM Linux, ad esempio. Nell’esempio attuale, il modello OVF viene salvato in /vms/P2V_Linux_VM/
13. Aprire VMware vSphere Client nel browser web.
14. Vai su Host e cluster , quindi seleziona l’host ESXi su cui desideri eseguire la VM dopo la conversione.
15. Crea una VM da un modello. Fai clic su Actions > Deploy OVF Template.
Si aprirà una nuova finestra della procedura guidata Distribuisci modello OVF che prevede 7 passaggi:
1. Seleziona un modello OVF . Fare clic su File locale , quindi premere Sfoglia . È necessario selezionare due file: il file OVF del modello della macchina virtuale e il file (o i file) VMDK del disco (o dei dischi) virtuale. Se si seleziona un solo file modello OVF, verrà visualizzato un messaggio relativo ai file mancanti e ai loro nomi. I file devono essere accessibili da un computer su cui è stato avviato VMware vSphere Client (i file devono essere memorizzati su dischi locali, su una condivisione SMB o NFS, ecc.).
2. Selezionare un nome e una cartella . Specificare un nome univoco per la VM e l’ubicazione di destinazione (un datacenter o una cartella della VM). Nell’esempio corrente, il nome della VM è P2V_Linux .
3. Selezionare una risorsa di calcolo . In questa fase, è necessario selezionare un host ESXi o un cluster su cui verrà eseguita la VM.
In questa fase potrebbe comparire il seguente errore: Problemi rilevati con il modello selezionato. Dettagli: – -1:-1:VALUE_ILLEGAL: Nessuna versione hardware supportata tra [vmx-16]; versioni supportate: [vmx-04, vmx-07, vmx-08, vmx-09, vmx-10, vmx-11, vmx-12, vmx-13].
Questo errore può verificarsi quando la versione hardware impostata nel modello della VM è superiore a quella supportata da un host ESXi.
Modificare il file OVF nell’editor di testo per risolvere il problema. È possibile utilizzare Vim in Linux. Accedere alla directory in cui si trova il modello OVF e modificare il file:
vim P2V_Linux.ovf
Individuare la stringa simile a vmx-xx , dove xx è il numero della versione hardware della VM. La versione hardware massima supportata per ESXi 6.5 è 13, mentre nel nostro modello è impostata la versione hardware 16 della VM.
Per individuare il testo necessario in Vim , nella modalità di navigazione digitare:
/vmx-
Modifica vmx-16 in vmx-12 , ad esempio, e salviamo il file OVF.
Una volta salvate le modifiche nel file OVF, tornare a VMware vSphere Client e fare clic su Next nella fase Seleziona una risorsa di calcolo della procedura guidata Esecuzione dell’implementazione del modello OVF .
4. Verifica dei dettagli . In questo passaggio è possibile verificare i dettagli del modello.
5. Selezione dello storage . Selezionare l’archivio dati di destinazione in cui archiviare i file di configurazione e i file del disco della VM e selezionare il formato del disco virtuale (Lazy Zeroed Thick, Eager Zeroed Thick o Thin Provision).
6. Selezione delle reti . Selezionare una rete per ciascuna scheda di rete virtuale. È necessario configurare ciascun adattatore di rete in modo che si connetta alla rete appropriata.
7. Pronti per il completamento . Verificare la configurazione e fare clic su Fine per avviare la creazione della VM.
Attendere fino a quando non viene creata una nuova VM dal modello.
16. Al termine dell’importazione della VM dal modello OVF, accendere la VM sull’host ESXi. Maggiori informazioni sui modelli di VM sono disponibili qui post sul blog. Se viene visualizzato il messaggio “ Vuoi provare a connettere questo dispositivo virtuale ogni volta che accendi la VM?”, rispondi che non desideri connettere quel dispositivo ogni volta durante l’avvio della VM facendo clic su No.
Un server Linux fisico è stato convertito in una VM senza utilizzare Windows e VMware vCenter Converter Standalone. Il processo di conversione P2V per Linux è stato illustrato utilizzando l’esempio di Ubuntu Linux. Se devi convertire server fisici che eseguono altre distribuzioni Linux, come SUSE o Red Hat, in VM VMware, utilizza lo stesso algoritmo, ma tieni presente che alcuni comandi e percorsi dei file di configurazione potrebbero essere diversi. Invece di utilizzare apt-get come gestore dei pacchetti in SUSE, dovresti utilizzare zypper mentre in Red Hat dovresti utilizzare yum . Potrebbe essere necessario riconfigurare le impostazioni di rete della VM, quali indirizzo IP, gateway predefinito, server DNS, ecc.
È inoltre possibile guardare questo video per vedere entrambi i metodi di conversione VMware P2V per Linux in azione:
Conclusione
La conversione di un server Linux fisico in una VM VMware può essere effettuata utilizzando una varietà di metodi: con VMware vCenter Converter Standalone, che richiede un computer Windows, e utilizzando le utility Linux in combinazione con VMware Workstation. Quando si utilizza uno di questi metodi, potrebbe essere necessario modificare manualmente la configurazione della macchina virtuale. Con il primo metodo, come destinazione per la conversione P2V di Linux è possibile utilizzare solo un Host VMware ESXi, mentre il secondo metodo consente di convertire una macchina fisica Linux sia nel formato VMware ESXi che in quello VMware Workstation.































