Comandi Powershell per la gestione di Hyper-V

PowerShell_logo Tipicamente gestiamo Hyper-V attraverso la comoda Management Console, tuttavia ci sono degli scenari in cui è necessario amministrare il server di virtualizzazione attraverso dei comandi powershell chiamati CMDLET

.

In questo breve articolo elencheremo alcuni dei cmdlet che ogni amministratore dovrebbe conoscere.

GET-VM

Con questo comando elencheremo tutte le virtual machine di Hyper-V con alcune informazioni utili come lo status, l’uptime e la memoria.

Hyper-v GET-VM

I cmdlet possono essere combinati per modificarne l’output.

Ad esempio con il comando get-vm WindowsXp | select *  verranno visualizzati i dettagli della virtual machine “WindowsXP”

Mentre con Get-VM | Where { $_.State –eq ‘Running’ }  si avrà la lista delle virtual machine avviate nel nostro Hyper-V

get-vm where running

Start-VM

Con il comando start-vm possiamo avviare una macchina virtuale, aggiungendo –asjob avviamo un task in background per l’avvio della VM.

Possiamo anche avviarne più di una utilizzando il carattere jolly “*”

start-vm WindowsXp

start-vm WindowsXp –asjob

start-vm win* –asjob

Stop-VM

Stop-vm ci consente di spegnere una o più macchine virtuali, possiamo utilizzare i parametri opzionali –force (per forzare lo spegnimento) –turnoff (per togliere virtualmente l’energia alla macchina virtuale) e –save (per mettere la VM in saved state).

stop-vm Windows-Xp -force

stop-vm win* –save –force

stop-vm Windows-Xp –turnoff

 

Checkpoint-VM

Potete utilizzare il cmdlet Checkpoint-VM per creare una snapshot di una o più virtual machine.

Potrebbe tornare utile creare un’operazione pianificata per eseguire delle snapshot a cadenza regolare, in questo caso possiamo utilizzare la data come nome della snapshot.

get-vm * | checkpoint-vm -SnapshotName “Mensile $((GetDate).toshortdatestring())” -AsJob

Get-VMSnapshot

Con il comando get-vmsnapshot possiamo gestire i nostri chkeckpoint, visualizzando le snapshot di tutte le macchine virtuali o di una sola macchina, può essere comodo anche per rimuovere delle snapshot.

get-vmsnapshot *  Ci mostra tutti i checkpoint di tutte le Vm.

get-vmsnapshot

get-vm “windowsxp” | get-vmsnapshot  Mostra le snapshot della macchina chiamata “WindowsXp”

get-vm “windowsxp” | Get-VMSnapshot -Name “*4/20/2014” | Remove-VMSnapshot –whatif Rimuove le snapshot con nome contenente la stringa “4/20/2014” 

Test-VHD

Con il comando test-vhd possiamo controllare lo stato dei dischi virtuali sia in formato vhd che vhdx.

Anche qui possiamo concatenare dei comandi per aumentare la funzionalità di test-vhd, ad esempio per testare tutti i vhd presenti in una cartella, utilizzeremo il cmdlet:

DIR | Test-VHD

test-vhd

 

Export-VM

Export-VM ci consente di esportare tutta la macchina virtuale(dischi,configurazioni e snapshot) in una cartella a nostra scelta.

export-vm “windowsXp” -Path E:\Backup\ –asjob

Get-VMNetworkAdapter

 

Questo comando mostra vari dettagli sulla configurazione di rete di una data virtual machine.

Get-VMNetworkAdapter -VMName charleston

Get-VMNetworkAdapter -VMName charleston | Select -expand ipaddresses

Get-VMNetworkAdapter

Share

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *