Il corso PowerShell per l’amministrazione e l’automazione di Hyper-V fornisce le competenze necessarie per gestire infrastrutture di virtualizzazione Microsoft mediante comandi, script e procedure automatizzate.
L’amministrazione grafica tramite Hyper-V Manager è adeguata per attività occasionali o per ambienti di dimensioni contenute. Quando il numero degli host e delle macchine virtuali aumenta, diventa invece necessario utilizzare strumenti che permettano di applicare configurazioni standard, eseguire operazioni massive, produrre report e ridurre il rischio di errori manuali.
Il corso approfondisce il modulo PowerShell di Hyper-V e mostra come automatizzare il ciclo di vita delle macchine virtuali: creazione, configurazione, avvio, arresto, migrazione, esportazione, gestione dei dischi, configurazione della rete, checkpoint, replica e controllo dello stato dell’infrastruttura.
I partecipanti realizzano script riutilizzabili per il provisioning delle macchine virtuali, la verifica delle configurazioni, il monitoraggio degli host e la gestione operativa di ambienti Hyper-V basati su Windows Server 2025.
Microsoft mette a disposizione un modulo PowerShell specifico per Hyper-V, comprendente i cmdlet necessari per amministrare host, macchine virtuali, dischi, adattatori di rete, switch virtuali, checkpoint, replica e altre componenti della piattaforma.
Il corso è rivolto a:
- amministratori di sistema;
- sistemisti Windows Server;
- amministratori di infrastrutture Hyper-V;
- tecnici responsabili di ambienti virtualizzati;
- personale addetto al monitoraggio e alla manutenzione dei server;
- professionisti DevOps e Infrastructure Engineer;
- tecnici che devono automatizzare attività ripetitive su host e macchine virtuali;
- amministratori che gestiscono infrastrutture Hyper-V multiple o distribuite.
Al termine del percorso i partecipanti saranno in grado di:
- utilizzare il modulo PowerShell di Hyper-V;
- individuare e consultare i cmdlet disponibili;
- interrogare host e macchine virtuali;
- creare e configurare macchine virtuali tramite script;
- automatizzare l’assegnazione di memoria, processori, storage e rete;
- creare e gestire dischi virtuali VHD e VHDX;
- configurare switch e adattatori di rete virtuali;
- eseguire operazioni su gruppi di macchine virtuali;
- gestire checkpoint, esportazioni e importazioni;
- automatizzare Live Migration e Storage Migration;
- configurare e controllare Hyper-V Replica;
- amministrare host Hyper-V remoti;
- raccogliere informazioni e produrre report sull’infrastruttura;
- costruire script robusti con controlli, log e gestione degli errori;
- sviluppare procedure standardizzate per il provisioning e la manutenzione;
- utilizzare PowerShell per attività di troubleshooting.
1. PowerShell nell’amministrazione di Hyper-V
- Ruolo dell’automazione nelle infrastrutture virtualizzate
- Gestione grafica e gestione tramite riga di comando
- Installazione del ruolo Hyper-V tramite PowerShell
- Installazione degli strumenti di amministrazione
- Il modulo PowerShell Hyper-V
- Importazione e verifica del modulo
- Ricerca dei cmdlet disponibili
- Utilizzo di
Get-Command e Get-Help
- Aggiornamento della documentazione locale
- Sintassi, parametri e parameter set
- Oggetti restituiti dai cmdlet Hyper-V
- Pipeline e selezione delle proprietà
- Amministrazione locale e amministrazione remota
Il ruolo Hyper-V può essere installato in Windows Server anche mediante Install-WindowsFeature, includendo gli strumenti di gestione e l’eventuale riavvio dell’host.
2. Inventario degli host e delle macchine virtuali
- Utilizzo di
Get-VM
- Ricerca delle macchine virtuali per nome, stato o host
- Proprietà degli oggetti VirtualMachine
- Stato operativo delle VM
- Versione della configurazione
- Generazione delle macchine virtuali
- Memoria assegnata e memoria utilizzata
- Numero di processori virtuali
- Uptime e stato dei servizi
- Utilizzo di
Measure-Object, Where-Object e Sort-Object
- Selezione e formattazione dei risultati
- Creazione di inventari automatici
- Esportazione dei dati in CSV, JSON e HTML
- Raccolta delle informazioni da più host
3. Creazione automatizzata delle macchine virtuali
- Progettazione di una procedura di provisioning
- Utilizzo di
New-VM
- Creazione di VM di prima e seconda generazione
- Definizione del percorso di configurazione
- Assegnazione della memoria iniziale
- Collegamento allo switch virtuale
- Creazione e collegamento del disco virtuale
- Configurazione dei processori virtuali
- Impostazione dell’ordine di avvio
- Collegamento di immagini ISO
- Secure Boot
- Avvio e arresto delle macchine virtuali
- Riavvio controllato delle VM
- Eliminazione e ricreazione di una macchina virtuale
- Utilizzo di file CSV come origine del provisioning
- Creazione massiva di macchine virtuali
- Controllo preventivo dei nomi e delle risorse disponibili
Microsoft documenta la creazione, l’avvio e la gestione delle macchine virtuali Hyper-V attraverso PowerShell e il cmdlet New-VM.
4. Configurazione delle risorse delle VM
- Utilizzo di
Set-VM
- Configurazione della memoria statica
- Dynamic Memory
- Memoria minima, iniziale e massima
- Configurazione dei processori virtuali
- Compatibilità del processore
- NUMA e impostazioni avanzate
- Automatic Start Action
- Automatic Stop Action
- Priorità di avvio
- Configurazione dei servizi di integrazione
- Sincronizzazione temporale
- Heartbeat
- Guest Service Interface
- Modifica massiva delle configurazioni
- Confronto tra configurazione attesa e configurazione effettiva
5. Automazione dello storage virtuale
- Architettura dei file VHD e VHDX
- Creazione di dischi virtuali con
New-VHD
- Dischi a espansione dinamica
- Dischi a dimensione fissa
- Differencing disk
- Parent disk
- Collegamento e scollegamento dei dischi
- Utilizzo di
Add-VMHardDiskDrive
- Modifica dei percorsi dei file
- Espansione di un disco virtuale
- Conversione tra formati
- Compattazione dei VHDX
- Montaggio e analisi dei dischi
- Individuazione dei dischi non collegati
- Controllo dello spazio utilizzato
- Automazione della manutenzione dei file VHDX
- Verifica dei percorsi e delle autorizzazioni
6. Networking Hyper-V con PowerShell
- Inventario degli adattatori di rete fisici
- Inventario degli switch virtuali
- Utilizzo di
Get-VMSwitch
- Creazione di switch esterni, interni e privati
- Utilizzo di
New-VMSwitch
- Collegamento delle VM agli switch
- Creazione e rimozione degli adattatori virtuali
- Utilizzo di
Get-VMNetworkAdapter
- Configurazione delle VLAN
- Trunk mode
- MAC address statici e dinamici
- Bandwidth management
- DHCP Guard
- Router Guard
- Port Mirroring
- Protezione dagli spoofing
- Configurazioni massive degli adattatori
- Verifica automatizzata della configurazione di rete
I cmdlet Hyper-V permettono di interrogare e configurare switch virtuali e adattatori di rete locali o presenti su host remoti, anche attraverso sessioni CIM.
7. Gestione operativa delle macchine virtuali
- Utilizzo di
Start-VM, Stop-VM, Restart-VM e Suspend-VM
- Arresto ordinato e arresto forzato
- Salvataggio dello stato
- Gestione di gruppi di VM
- Sequenze di avvio e arresto
- Controllo dello stato prima dell’esecuzione
- Utilizzo di
-WhatIf e -Confirm
- Esecuzione delle operazioni come job
- Attesa del completamento delle operazioni
- Timeout e gestione delle operazioni bloccate
- Automazione delle finestre di manutenzione
- Avvio e arresto di ambienti di laboratorio
- Procedure di shutdown di un host
8. Checkpoint, esportazione e importazione
- Tipologie di checkpoint
- Standard Checkpoint e Production Checkpoint
- Configurazione del tipo di checkpoint
- Creazione con
Checkpoint-VM
- Inventario con
Get-VMSnapshot
- Ripristino di un checkpoint
- Rimozione e consolidamento
- Convenzioni di denominazione
- Controllo dell’età dei checkpoint
- Individuazione dei checkpoint dimenticati
- Esportazione delle macchine virtuali
- Importazione, copia e registrazione
- Gestione degli identificativi delle VM
- Automazione delle procedure di laboratorio
- Rischi operativi e utilizzo corretto dei checkpoint
I Production Checkpoint utilizzano VSS nei sistemi Windows o il freeze del file system nelle VM Linux per produrre uno stato coerente dei dati, senza salvare la memoria della macchina virtuale.
9. Migrazione e gestione remota
- Amministrazione di host remoti
- Parametro
-ComputerName
- PowerShell Remoting
- Sessioni CIM
- Credenziali e delega
- Esecuzione di comandi su più host
- Live Migration tramite PowerShell
- Storage Migration
- Migrazione combinata di configurazione e storage
- Verifica dei prerequisiti
- Controllo dello stato della migrazione
- Gestione degli errori
- Pianificazione delle attività di manutenzione
- Trasferimento delle VM prima dell’arresto di un host
10. Hyper-V Replica e disaster recovery
- Architettura di Hyper-V Replica
- Configurazione dell’host Replica
- Abilitazione della replica sulle VM
- Impostazione della frequenza di replica
- Replica iniziale
- Avvio con
Start-VMInitialReplication
- Controllo dello stato con
Get-VMReplication
- Verifica dello stato di salute
- Planned Failover
- Test Failover
- Unplanned Failover
- Utilizzo di
Start-VMFailover
- Reverse Replication
- Automazione dei test periodici di disaster recovery
- Produzione di report sullo stato della replica
PowerShell consente di avviare la replica iniziale, controllarne lo stato ed eseguire failover pianificati, non pianificati o di test.
11. Reporting, monitoraggio e troubleshooting
- Costruzione di report sull’infrastruttura
- Stato delle macchine virtuali
- Utilizzo della memoria
- Configurazione dei processori
- Dimensione e posizione dei dischi
- Configurazione degli adattatori
- Stato dei checkpoint
- Stato della replica
- Rilevazione delle configurazioni non conformi
- Individuazione delle VM spente o inutilizzate
- Controllo delle risorse assegnate
- Esportazione dei risultati
- Generazione di report HTML
- Consultazione degli eventi Hyper-V
- Analisi degli errori restituiti dai cmdlet
- Raccolta delle informazioni diagnostiche
- Verifica delle autorizzazioni
- Troubleshooting di storage, rete e configurazione
- Creazione di script diagnostici
12. Progettazione di script affidabili
- Parametri e validazione degli input
- Funzioni avanzate
- Pipeline input
- Controlli preliminari
- Gestione delle eccezioni con
try, catch e finally
- Utilizzo di
-ErrorAction
- Logging delle operazioni
- Transcript
- Verbose e Debug output
- Restituzione di oggetti strutturati
- Separazione tra configurazione e codice
- Utilizzo di file CSV, JSON e XML
- Credenziali e dati sensibili
- Principio del minimo privilegio
- Firma degli script
- Execution Policy
- Modularizzazione del codice
- Comment-based help
- Versionamento degli script
- Idempotenza delle procedure
- Test e manutenzione del codice
Il corso adotta un’impostazione prevalentemente pratica.
Ogni argomento viene sviluppato attraverso:
- dimostrazioni guidate;
- esercitazioni su host Hyper-V;
- analisi degli oggetti restituiti dai cmdlet;
- scrittura progressiva di script;
- automazione di operazioni singole e massive;
- simulazione di procedure amministrative reali;
- attività di troubleshooting;
- sviluppo di una libreria di script riutilizzabili.
Le esercitazioni possono essere adattate alla configurazione e agli standard dell’organizzazione committente.
- Il corso si svolgerà in modalità online live streaming, con il docente che terrà le lezioni in diretta.
- I partecipanti dovranno avere a disposizione un Personal Computer e preferibilmente un secondo schermo.
- Saranno forniti labs online che vengono messi a disposizione anche dopo la fine del corso per 3 mesi.
- Al termine del corso, coloro che avranno partecipato ad almeno l'80% delle lezioni riceveranno un attestato di frequenza.
Per partecipare efficacemente è consigliabile possedere:
- conoscenza operativa di Windows Server;
- conoscenza dell’architettura e dell’amministrazione di Hyper-V;
- capacità di creare e configurare una macchina virtuale;
- conoscenza di base di networking e storage;
- conoscenza intermedia di PowerShell;
- familiarità con pipeline, variabili, cicli, condizioni e funzioni.
Il corso non introduce PowerShell partendo dalle basi. I partecipanti devono già conoscere la sintassi fondamentale del linguaggio e l’utilizzo della console.