Merhaba, daha önceki yazılarımızda VMware PowerCLI Nedir? Nasıl Kurulur? Ne İşe Yarar? , Powershell ile Snapshot Alma / Snapshot Silme konularına değinmiştik. Bu yazımızda PowerCLI modülünü kullanarak vCenter ortamımızda bulunan Snapshotların raporunu oluşturacağız.
Bunun için, aşağıda bulunan scripti bir metin belgesinde kendi ortamınıza göre düzenledikten .ps1 uzantısı ile kayıt edin.
- vCenter_IP adresiniz: vCenter ortamınıza ait FQDN / IP bilgisini girin.
- vCenter Snapshot raporunun hangi dizinde oluşturulacağını belirleyin. Varsayılan konum; D:\Test dir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# vCenter Server'a bağlanın Connect-VIServer <vCenter_IP adresiniz> # Tüm VM'leri al $VMs = Get-VM # Snapshot bilgilerini tutmak için boş dizi oluşturun $SnapshotInfo = @() # Her VM'de döngü oluşturun ve snapshot bilgilerini alın foreach ($VM in $VMs) { $Snapshots = Get-Snapshot -VM $VM # Her snapshot boyunca döngü yapın ve bilgileri çıktıya ekleyin foreach ($Snapshot in $Snapshots) { $SnapshotInfo += [PSCustomObject]@{ VMName = $VM.Name SnapshotName = $Snapshot.Name Oluşturulma = $Snapshot.Created Açıklama = $Snapshot.Description BoyutGB = [math]::Round(($Snapshot.SizeGB),2) } } } # HTML çıktısı oluşturma $HTML = @" <html> <head> <title>Snapshots Raporu</title> <style> body {background-color: #D3D3D3;} table {border: 3px solid black; border-collapse: collapse; font-size: 14px; font-family: Arial, sans-serif; background-color: #3B3B3B; color: white; max-width: 800px;} th, td {border: 2px solid black; padding: 10px; text-align: left; width: auto;} th {background-color: #2F4F4F; font-weight: bold;} </style> </head> <body> "@ $HTML += $SnapshotInfo | ConvertTo-Html -Fragment -Property VMName, SnapshotName, Oluşturulma, Açıklama, BoyutGB $HTML += @" </body> </html> "@ # HTML Çıktısı $FilePath = "D:\Test\SnapshotInfo.html" $HTML | Out-File -FilePath $FilePath # Onay Mesajı Write-Host "Snapshots Raporu Oluşturuluyor" Write-Host "Snapshots raporların $FilePath klasörüne kaydedildi." # vCenter Server ile bağlantıyı kes Disconnect-VIServer -Confirm:$false |
Gerekli alanları ortamınıza göre doldurduktan sonra, scripti “Run as administrator” olarak çalıştırın.
Rapor oluşturma scriptini çalıştırdıktan sonra, aşağıdaki gibi “Snapshots raporların D:\Test\SnapshotInfo.html klasörüne kaydedildi.” bilgisini göreceksiniz.

Belirttiğiniz dizine girip, oluşan “SnapshotInfo.html” dosyasını açtığınızda vCenter ortamınızda bulunan tüm VM Snapshotlarını VM İsim, Snapshot İsim, Oluşturulma Tarihi, Açıklama ve boyutlarını görebiliyor olacaksınız.

vCenter ortamlarında snapshotların sürekli kontrol edilmesi gerekir. Bu scripti görev planlayıcısı ile her gün belirlenen saatte çalıştırabilirsiniz ve snapshot raporunu mail ile sistem yöneticileri ile paylaşabilirsiniz.
- VMSA-2025-0010: VMware ESXi ve vCenter Server’da Tespit Edilen Güvenlik Açıkları
- “CVE-2025-22249: VMware Aria Automation’daki XSS Açığı VMSA-2025-0008
- VMware Tools CVE-2025-22247 Açığı: Sanal Makinelerde Dosya Manipülasyonu Riski VMSA-2025-0007
- VMware vCenter Build Numbers ve Versions 8 & 7 & 6
- VMSA-2025-0006 VMware Aria Operations’ta Yerel Ayrıcalık Yükseltme Açığı (CVE-2025-22231) ve Çözüm Yolları