Pour utiliser ce script il sera impératif de :
<#
. AUTEUR : Antoine JOVELIN
. FONCTION : Lister les VMs avec des snapshot supérieurs à 48h et le nom du createur du snapshot
. UTILISATION :
- Lancer le script
#>
cls
# Declaration des fonctions
function vcenter-connect{
$VC = Read-Host -Prompt " Entrer le nom de vCenter "
$cred = Get-Credential
Write-Host;
Write-Host -ForegroundColor cyan "Connexion à vCenter. Merci de patienter..."
Connect-VIServer $VC -Credential $cred
Write-Host;
}
function vcenter-disconnect{
Write-Host;
Write-Host -ForegroundColor cyan "Déconnexion de vCenter..."
Disconnect-viserver -Server $Global:DefaultVIServer -Confirm:$false -Force
Write-Host;
}
# Debut du script
vcenter-connect
Write-Host;
Write-Host -fore cyan "
#######################################################################################
# Lister les VMs avec des snapshot supérieurs à 48h et le nom du createur du snapshot #
#######################################################################################"
Write-Host;
foreach ($snap in get-vm | Get-Snapshot | where {$_.created -lt (get-date).adddays(-2)}){
$snapevent = Get-VIEvent -Entity $snap.VM -Types Info -Finish $snap.Created -MaxSamples 1 | Where-Object {$_.FullFormattedMessage -imatch 'Task: Create virtual machine snapshot'}
Write-Host " Name : " $snap.VM
Write-Host " Created on : " $snap.Created.DateTime -ForegroundColor yellow
Write-Host " By " $snapevent.UserName -ForegroundColor green
Write-Host;
}
Write-Host;
vcenter-disconnect
Dans cet exemple, je liste les vm possédant des snapshots dont la date est supérieure à 48h.
Pour modifier la date de vérification, il suffit de remplacer "-2" par le nombre de jours souhaités dans(get-date).adddays(-2)}