Maak snapshots met powershell

Om snapshots te maken voordat er bv. een update plaatsvindt, kunnen we dit eenvoudig met powershell doen vanaf het werkstation. Remote Management dient hiervoor geconfigureerd te zijn, zie hier… We gaan eerst de credentials opgeven voor de server om daarmee een remote sessie op te zetten:

$cred = Get-Credential
$svr = "HYPER-V01"
Enter-PSSession -ComputerName $svr -Credential $cred

Als eerste maken we een lijst met de twee VM’s waarvan we een snapshot willen gaan maken:

$servers = "APP01","FILE01"

Deze kunnen we vervolgens gebruiken om de snapshots te maken. Snapshots maken we met het commando Checkpoint-VM.

$servers | Get-VM | Checkpoint-VM –SnapshotName "Prior to update NOK-123"

Ter controle vragen we de snapshots van de servers op met Get-VMSnapshot:

$servers | Get-VM | Get-VMSnapshot

check03Deze snapshots gaan we nu veilig stellen door ze te exporteren naar een andere locatie. Op de SAN01 hebben we een snapshots-folder hiervoor ingericht en daar gaan we de snapshots naartoe exporteren met ExportVMSnapshot.

$BackupFolder = "\\SAN01\Share\Snapshots"
$servers | Get-VM | Get-VMSnapshot | Export-VMSnapshot -Path $BackupFolder

Ter controle

Get-ChildItem $BackupFolder

check04