One host, many isolated VMs — Hyper-V is how Windows Server runs the data center.
When you enable Hyper-V on Windows, the entire OS becomes a virtual machine running on the hypervisor!
| Feature | Generation 1 | Generation 2 |
|---|---|---|
| Firmware | BIOS (Legacy) | UEFI |
| Boot Disk | IDE controller | SCSI controller |
| Secure Boot | No | Yes |
| PXE Boot | Legacy adapter only | Standard adapter |
| DVD Boot | IDE CD-ROM | SCSI |
| Hot Add Memory | No | Yes |
| Guest OS | Older Windows, Linux | Windows 8+, Modern Linux |
Only use Gen 1 when running legacy operating systems (Windows 7, Server 2008) or older 32-bit Linux distributions.
| Type | VMs ↔ VMs | VMs ↔ Host | VMs ↔ Network |
|---|---|---|---|
| External | ✓ | ✓ | ✓ |
| Internal | ✓ | ✓ | ✗ |
| Private | ✓ | ✗ | ✗ |
Create an External switch to give VMs access to the physical network through a host NIC.
Internal keeps VMs on the host network only; Private isolates VMs even from the host. Use these for test labs and malware analysis.
Checkpoints = point-in-time VM state you can revert to. Two types: Standard (memory + disk, for dev/test) vs Production (VSS-based, application-consistent, default in Windows Server).
Creating checkpoints is easy. Restoring them is the moment that matters. Restore-VMCheckpoint rolls a VM back to a saved state, and the cmdlets that follow handle cleanup so checkpoints don't accumulate.
Roll back to a previous checkpoint to undo changes that caused problems.
List every VM on this host, then create a new Gen 2 VM with a dynamically-expanding VHDX. Output table shown in the right-panel demo.
Power, tuning, and networking — full lifecycle in one chain. Add -Force on Stop-VM for immediate power-off. Right panel shows the full cmdlet flow.
| Task | Cmdlet |
|---|---|
| List VMs | Get-VM |
| Create VM | New-VM -Name X -Generation 2 |
| Start/Stop | Start-VM / Stop-VM |
| Checkpoint | Checkpoint-VM -SnapshotName X |
| Switches | Get-VMSwitch / New-VMSwitch |