2017-06-26 1 views
-2

Comment supprimer des instantanés Azure Managed Disk de plus de 7 jours à l'aide de Powershell?Comment supprimer des instantanés Azure Managed Disk de plus de sept jours à l'aide de Powershell?

Nous prenons des instantanés automatisés quotidiens des disques gérés. Les instantanés sont nommés comme suit: ['AppDisk_snapshot_AM' + "_" + (Get-Date -Format "aaaa-MM-jj")]

Les snaphoshots sont stockés dans "/ abonnements/[ID d'abonnement]/resourceGroups/[ Nom du groupe de ressources] /providers/Microsoft.Compute/snapshots "

Je voudrais savoir comment puis-je supprimer ces instantanés de plus de 7 jours et conserver les plus récents. Je vous remercie.

+1

qu'avez-vous essayé, ce qui ne fonctionne pas? – 4c74356b41

+0

Essayé ceci: $ resourcegroupname = 'Resource_Group' $ snapshotname -comme 'AppDisk_ *' $ SubscriptionNames = Get-AzureRmSnapshot -ResourceGroupName $ resourcegroupname -SnapshotName $ snapshotname foreach (de snapshotname de $ dans snapshotname de $) { Remove-AzureRmSnapshot -ResourceGroupName $ resourcegroupname -SnapshotName $ snapshotname -Force Where-Object {$ _ TimeCreated -LT (Get-date) .AddDays (-7).}} – Gabi

+0

Et tentative: Remove-AzureRmResource -ResourceType «/abonnements/subscription_ID/resourceGroups/Resource_Group/providers/Microsoft.Compute/snapshots "| Where-Object {$ _. Creationtime -lt (Obtenir-Date) .AddDays (-7)} – Gabi

Répondre

0

Selon votre description, nous pouvons utiliser ce script pour le faire:

$rg = 'vm' 
$snapshotnames = (Get-AzureRmSnapshot -ResourceGroupName $rg).name 

foreach($snapname in $snapshotnames) 
{ 
    Get-AzureRmSnapshot -ResourceGroupName $rg -SnapshotName $snapname |?{$_.id -like '*AppDisk*'} | ?{($_.TimeCreated).ToString('yyyyMMdd') -lt ([datetime]::Today.AddDays(-7).tostring('yyyyMMdd'))} | remove-azurermsnapshot -force 

}