Сидел я тут как-то с одной задачкой сбора всех снепшотов ВМок с конкретных датасторов на vSphere
Собрал довольно нехитрый ps скритец, который под капотом юзает модуль VMware PowerCLI.
Вот его часть:
$datastore = Read-Host `n"Enter datastore (Example: DATASTORE-01)"
Get-Datastore -Name $datastore | Get-VM | Get-Snapshot |
Select VM,
Name,
@{Name="Creator"; Expression = { ($_.Description | Select-String -Pattern "SnapshotCreator: (.*)").Matches[0].Groups[1].Value -replace "XXXX" }},
@{Name="Size_snapshot (GB)";Expression={"{0:N2}" -f ($_.SizeGB)}},
Created,
@{Name="Days Old";Expression={(New-TimeSpan -End (Get-Date) -Start $_.Created).Days }},
@{Name="Datastore";Expression={Get-Datastore -Id($_.vm).datastoreidlist}} | Sort-Object -Property SizeGB -Descending | Export-Excel -Path "C:\tmp\Snapshots_$($datastore).xlsx" -TableName "Snapshots" -TableStyle "Medium27" -AutoSize
И заметил такую странную вещь... значения в столбце SizeGB иногда довольно сильно разнятся с тем, что я вижу в UI vSphere, а иногда и совсем это значение равняется - 0
Начал копать... и как выяснилось Get-Snapshot и веб морда сферы ссылаются на разные значения.
Одно возвращает явный размер VMDK файлов которые лежат внутри датастора, а другой размер так называемых delta дисков.
🌟 вот даже маленький топик на эту тему 🌟
Вот такие пироги... 🙃
