Come lavorare con i file VHD e VHDX di Hyper-V: Concetti fondamentali essenziali

Il rilascio di Windows Server 2012 è stato accolto con favore grazie all’introduzione di molteplici funzionalità di virtualizzazione, tra cui il nuovo formato file VHDX. VHDX è essenzialmente il successore di VHD, ma con capacità più avanzate. Tuttavia, è ancora possibile creare e gestire file VHD nel proprio ambiente Hyper-V. Esploriamo le differenze tra i file Hyper-V VHD e VHDX, i benefici che forniscono e come possono essere utilizzati.

A proposito dei file Hyper-V VHD e VHDX

I dischi virtuali creati nell’ambiente Hyper-V possono essere archiviati come file nei formati VHD o VHDX situati su un disco fisico. I dischi rigidi virtuali sono un’alternativa ai dischi rigidi fisici; funzionano come i dischi rigidi di una macchina virtuale (VM). I dischi virtuali possono contenere un sistema di file nativo, partizioni di disco, settori e cartelle. Possono effettuare operazioni standard su disco e file. Ogni VM deve avere almeno un disco rigido virtuale che può essere utilizzato come archivio per i dati della VM.

Le versioni precedenti di Windows supportavano solo un formato file per i dischi virtuali: VHD. A seguito dell’aumento delle esigenze tecnologiche, Windows 2012 ha introdotto il formato file VHDX, che ha notevolmente migliorato la capacità di archiviazione, le prestazioni su dischi a settori grandi e garantito livelli più elevati di protezione dei dati.

Sia i file Hyper-V VHD che VHDX possono essere di diversi tipi:

  • Fisso. Lo spazio per il disco virtuale viene assegnato quando viene creato il file VHD. Il file del disco rigido virtuale ha la stessa dimensione del disco rigido virtuale. La sua dimensione rimane costante, indipendentemente dai dati aggiunti o eliminati.
  • Espansione dinamica. Lo spazio per il disco virtuale viene assegnato su richiesta. Il disco rigido virtuale ha una quantità specificata di spazio di archiviazione fisica che può potenzialmente essere utilizzato, ma lo spazio viene allocato man mano che necessario. Pertanto, la dimensione del file VHD o VHDX aumenta quando vengono aggiunti nuovi dati.
  • Differenziale. Questo tipo di disco viene utilizzato per identificare, memorizzare, gestire e ripristinare le modifiche apportate a un altro disco virtuale o al disco genitore.

Differenze tra i file VHD e VHDX di Hyper-V

Per comprendere meglio come funzionano i file VHD e VHDX di Hyper-V, esploriamo le differenze tra i formati dei file. A sua volta, questo ci dice come ciascuno di essi può migliorare le prestazioni dei dischi virtuali. La seguente tabella mette in contrasto i due formati:

VHD VHDX
Il formato file di base supportato da Windows, Citrix e Oracle Un formato file avanzato supportato da Windows
Fino a 2 TB di capacità di archiviazione Fino a 64 TB di capacità di archiviazione
I file VHD offrono una protezione inferiore contro la corruzione dei dati rispetto ai loro corrispettivi VHDX I file VHDX forniscono una robusta protezione contro la corruzione dei dati tenendo traccia dei metadati
Il supporto per i metadati personalizzati non è previsto I metadati personalizzati sono supportati e possono essere memorizzati
Supportato da Windows Server 2008, 2008 R2, 2012 e 2012 R2 Supportato da Windows 2012 e versioni successive
Nessuna ridimensionamento live Il ridimensionamento live è disponibile
Dimensione del settore logico di 512 byte Dimensione del settore logico di 4 KB
Problemi con l’allineamento dei dati Migliore allineamento dei dati
Il trimming non è supportato Il trimming è supportato

Come potete vedere, il nuovo formato VHDX per Hyper-V include diverse funzionalità che ne hanno notevolmente incrementato l’utilità. Ad esempio, lariminazione consente di identificare blocchi di dati non più in uso e di eliminarli, migliorando l’ottimizzazione dello spazio di archiviazione e le prestazioni generali. Un’altra funzione introdotta con il nuovo formato VHDX per Hyper-V è la VHDX condivisa, che consente a macchine virtuali all’interno dello stesso cluster ospite di utilizzare un file VHDX come storage condiviso. Inoltre, i file VHDX di Hyper consentono di ri dimensionare (ridimensionare o ampliare) i dischi virtuali in esecuzione, risparmiando notevolmente tempo e riducendo l’overhead. Infine, grazie all’allineamento dei dati migliorato, i file VHDX di Hyper-V possono notevolmente migliorare le operazioni di I/O. A confronto, i dischi fisici a grandi settori sono soggetti a una degradazione delle prestazioni.

Anche se VHDX è una versione più avanzata del formato VHD, ci sono ancora alcuni casi in cui l’utilizzo di VHD è preferibile. Ad esempio, i file VHDX di Hyper-V non sono compatibili con le versioni precedenti di Windows Server. Quindi, se state gestendo ambienti virtuali con guest OS misti e deviate necessità di spostare VM tra diversi host, il formato VHD sarebbe l’opzione ottimale, poiché è supportato da più OS.

Come lavorare con i file VHD e VHDX di Hyper-V in PowerShell

Ora che sai cos’è Hyper-V VHD e i file VHDX e quali benefici possono offrire, sei pronto per creare e configurare i tuoi dischi rigidi virtuali. A questo scopo, puoi utilizzare Hyper-V Manager o PowerShell in modalità Amministratore. In questo post del blog, descriviamo come gestire le operazioni sui file Hyper-V VHD e VHDX in PowerShell. Questo è il miglior approccio, in quanto PowerShell fornisce più opzioni per configurare i file Hyper-V VHD e VHDX. Puoi creare, convertire, unire o rimuovere dischi in modo rapido e semplice eseguendo script PowerShell.

Crea file VHD e VHDX Hyper-V

Per creare un nuovo disco rigido virtuale nel formato VHD o VHDX, apri PowerShell come Amministratore ed esegui il cmdlet New-VHD. L’esempio seguente mostra come creare un disco rigido virtuale di tipo dinamico nel percorso specificato, con una dimensione di 10 GB, una dimensione del blocco di 128 MB e una dimensione del settore logico di 4 KB. Nota che è l’estensione del file (.vhd o .vhdx) a determinare il formato del file; in questo caso, viene creato un file VHDX.

New-VHD -Path 'C:\Dischi Virtuali\DemoDisk.vhdx' -DimensioneBloccoByte 128MB -DimensioneSettoreLogico 4KB -DimensioneByte 10GB -Dinamico

Il disco rigido virtuale è ora creato e le seguenti informazioni sul disco virtuale vengono visualizzate nella finestra di PowerShell.

Aggiungi file VHD e VHDX Hyper-V

Con il cmdlet Add-VMHardDiskDrive, puoi aggiungere un disco rigido virtuale a una VM specifica. Nell’esempio seguente, il disco rigido virtuale DemoDisk.vhdx nel percorso specificato viene collegato alla VM denominata DemoVM. Il controller SCSI, il numero di controller 0 e la posizione del controller 1 vengono anche assegnati al disco virtuale.

Add-VMHardDiskDrive -VMName DemoVM -ControllerType SCSI -ControllerNumber 0 -ControllerLocation 1 -Path 'C:\Dischi Virtuali\DemoDisk.vhdx'

 Rimuovere i file VHD e VHDX di Hyper-V

Il comando Remove-VMHardDiskDrive viene utilizzato per eliminare un disco rigido virtuale da una VM. Per mostrare come funziona questo cmdlet, ecco come eliminare il disco creato appena sopra:

Remove-VMHardDiskDrive -VMName DemoVM -ControllerType SCSI -ControllerNumber 0 -ControllerLocation 1

Utilizzando questi cmdlet, è possibile creare e eliminare facilmente dischi virtuali con i parametri richiesti e collegarli a VM specifiche.

Convertire i file VHD e VHDX di Hyper-V

Come accennato in precedenza, i file VHDX offrono una serie di vantaggi rispetto ai loro predecessori VHD. Pertanto, in molti casi, è consigliabile convertire tutti i file VHD nel formato VHDX. Per aggiornare i file VHD di Hyper-V in VHDX, esegui semplicemente il cmdlet Convert-VHD, che ti consente di cambiare il formato del file salvando il contenuto del disco rigido virtuale di origine. I dati del disco rigido virtuale di origine vengono copiati su un nuovo disco del formato richiesto. L’operazione dovrebbe essere eseguita offline; è consigliabile scollegare il disco rigido virtuale. L’esempio seguente illustra il cmdlet che consente la conversione dei file VHD di Hyper-V in VHDX:

Convert-VHD -Path ‘C:\Nuovi Dischi Virtuali\Disco Fisso.vhd’ -DestinationPath ‘C:\Nuovi Dischi Virtuali\Disco Fisso.vhdx’

Tuttavia, ricorda che i file VHDX sono compatibili solo con Windows Server 2012 e versioni successive. Pertanto, potresti dover convertire i file VHDX di Hyper-V in VHD. In questo caso, lo stesso Convert-VHD cmdlet può essere utilizzato, ma al contrario. Ricorda che il disco rigido virtuale deve essere scollegato prima di condurre l’operazione.

Convert-VHD -Path ‘C:\Dischi Virtuali\DemoDisk.vhdx’ ‘C:\Dischi Virtuali\DemoDisk.vhd’

Unisci i file VHD e VHDX di Hyper-V

Come menzionato in precedenza, i dischi di differenziazione vengono utilizzati per memorizzare e annullare le modifiche apportate a un altro VHD o a un sistema operativo guest. Ogni disco di differenziazione tiene traccia e memorizza le modifiche apportate a un disco virtuale associato. In questo caso, il disco di differenziazione è chiamato “disco figlio” e il disco rigido virtuale è chiamato “disco genitore”. Con il cmdlet Merge-VHD, è possibile unire le modifiche memorizzate in un disco di differenziazione nel disco genitore o in un altro disco figlio nella catena di dischi di differenziazione. Nota che questa operazione viene eseguita offline; assicurarsi che la catena di dischi sia staccata.

Per unire il disco rigido virtuale figlio al disco rigido virtuale genitore, eseguire il seguente cmdlet. Nota che una volta completata l’operazione e i contenuti del disco figlio trasferiti nel genitore, il disco di differenziazione viene distrutto.

Merge-VHD -Path ‘C:\Archiviazione Virtuale\Differenziazione.vhdx’

Nell’esempio seguente, abbiamo un disco genitore, maindisk.vhdx, e un disco figlio, ChDisk1.vhdx, che a sua volta ha un figlio: ChDisk2.vhdx. Il secondo disco virtuale ha persino il suo figlio, ChDisk3.vhdx. Insieme, questi dischi costituiscono la catena di differenziazione. Il cmdlet seguente può essere utilizzato per unire i dischi rigidi virtuali figlio nella catena di dischi.

Merge-VHD -Path ‘C:\Test VM\ChDisk3.vhdx’ -DestinationPath ‘C:\Test VM\ChDisk1.vhdx’

Attraverso questa operazione, i dati da ChDisk3.vhdx e ChDisk2.vhdx vengono uniti in ChDisk1.vhdx. Lo script PowerShell semplifica il processo di unione dei dischi rigidi virtuali; l’intera operazione può essere eseguita in un’unica esecuzione, indipendentemente dalle dimensioni della catena delle differenze. Questo è un vantaggio di PowerShell: con Hyper-V Manager, non ti è permesso unire contemporaneamente più livelli della catena del disco delle differenze. Dovresti unire manualmente ogni livello della catena del disco delle differenze e questi passaggi aggiuntivi ti farebbero perdere tempo e sforzi.

Monta file VHD e VHDX di Hyper-V

Il cmdlet Mount-VHD ti consente di montare uno o più dischi rigidi virtuali. L’esempio seguente dimostra come montare un disco rigido virtuale con il percorso C:\Dischi Virtuali\DemoDisk.vhdx.

Mount-VHD -Path ‘C:\Dischi Virtuali\DemoDisk.vhdx’

Utilizzando gli script PowerShell, puoi montare un disco rigido virtuale in modalità di sola lettura:

Mount-VHD -Path ‘C:\Dischi Virtuali\DemoDisk.vhdx’ -ReadOnly

Smonta file VHD e VHDX di Hyper-V

Se vuoi smontare un disco rigido virtuale, esegui il cmdlet Dismount-VHD in PowerShell. Nell’esempio seguente, puoi vedere come smontare il disco rigido virtuale con il percorso C:\Dischi Virtuali\DemoDisk.vhdx.

Dismount-VHD -Path ‘C:\Dischi Virtuali\DemoDisk.vhdx’

Un’altra opzione è smontare il disco rigido virtuale utilizzando il numero di disco del disco montato, come segue:

Dismount-VHD -DiskNumber 8

Ridimensionare file VHD e VHDX di Hyper-V

Se desideri ridimensionare (restringere o espandere) un disco rigido virtuale, il cmdlet Resize-VHD dovrebbe essere utilizzato. L’esempio seguente mostra come ridimensionare un disco rigido virtuale assegnandogli una nuova dimensione specificata. In questo caso, abbiamo espanso il VHDX da 10GB a 20GB:

Resize-VHD -Path 'C:\Dischi Virtuali\DiscoDemo.vhdx' -SizeBytes 20GB

Tuttavia, il ridimensionamento è disponibile solo per i file VHDX. Nota che il disco rigido virtuale non dovrebbe essere ridotto a una dimensione inferiore rispetto alla sua dimensione minima specificata. Per vedere la dimensione minima del disco rigido virtuale, esegui il seguente cmdlet:

Get-VHD -Path 'C:\Dischi Rigidi Virtuali\discodemov.vhdx’

Puoi utilizzare il seguente comando per ridurre il file VHDX alla sua dimensione minima:

Resize-VHD -Path 'C:\Dischi Rigidi Virtuali\discodemov.vhdx’ -ToMinimumSize

Conclusione

Sia i file VHD che VHDX di Hyper-V svolgono un ruolo significativo negli ambienti virtuali poiché funzionano come i dischi rigidi di una VM. Il formato del file VHD è stato utilizzato per molto tempo, ma per stare al passo con il costante progresso della tecnologia di virtualizzazione, Microsoft ha introdotto una versione più avanzata. Pertanto, il formato del file VHDX è stato rilasciato con Windows Server 2012 per migliorare le prestazioni dei dischi fisici con settori di grandi dimensioni, aumentare la capacità di archiviazione e garantire la protezione dei dati.

Dopo aver confrontato tutte le caratteristiche che i file Hyper-V VHD e VHDX forniscono, è sicuro dire che l’Hyper-V VHDX è un formato di file più efficiente e affidabile, progettato per gestire le esigenze di prestazioni degli ambienti virtuali moderni.

Assicurati di proteggere i tuoi dischi VHD e VHDX con una soluzione di protezione dati su misura per l’infrastruttura virtualizzata. Considera NAKIVO Backup & Replication, che è una soluzione rapida e conveniente che offre diverse opzioni per proteggere gli ambienti Hyper-V, VMware, AWS EC2 e Microsoft 365.

Source:
https://www.nakivo.com/blog/work-hyper-v-vhd-vhdx-files-essential-basics/