Eliminare i resource group vuoti di Azure via PowerShell

di Cristian Civera,

I resource group sono raggruppamenti logici di qualsiasi risorsa possiamo utilizzare all'interno della piattaforma Microsoft Azure. Con il passare del tempo queste risorse vengono spostate, per una migliore organizzazione, oppure eliminate perché non più necessarie. Questo è vero soprattutto per vecchie risorse che hanno assunto un resource group automatico dal nome poco intuitivo.

E' facile quindi ritrovarsi con uno o più gruppi di risorse vuoti che possiamo tranquillamente eliminare. Per questo genere di task PowerShell è perfetto, perché con poche righe ci risolve anche qualche ora di lavoro. Se accediamo a http://shell.azure.com/ possiamo accedere direttamente alla shell preconfigurata con Azure contenente tutto il necessario.

In questo script proponiamo uno snippet da lanciare che cicla su tutte le sottoscrizioni della directory corrente ed elimina tutti i resource group vuoti.

# Lista delle sottoscrizioni
$subids = (Get-AzureRMSubscription).ID

ForEach ($sub in $subids) {
  # Seleziona la sottoscrizione
  Select-AzureRmSubscription -SubscriptionId $Sub | Out-Null
  # Recupera tutte i gruppi di risorse
  $all = (Get-AzureRmResourceGroup).ResourceGroupName
  # Recupera le risorse e i rispettivi gruppi usati
  $used = (Get-AzureRMResource | Group-Object ResourceGroupName).Name
  # Trova quelli vuoti
  $empty = $all | Where-Object {$_ -notin $used}
 
  # Cancella ogni gruppo
  ForEach ($r in $empty) {
    Write-Host "Deleting '$r' Resource Group"
    Remove-AzureRmResourceGroup -Name $r
  }
}

Ecco come appare lo script sulla shell.

Se siamo sicuri di voler cancellare i gruppi senza conferma, alla riga Remove-AzureRmResourceGroup possiamo aggiungere lo switch -Force.

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi