Usare l'interfaccia della riga di comando di Azure per gestire risorse e gruppi di risorse

Questo articolo illustra come gestire le soluzioni con l'interfaccia della riga di comando di Azure e Azure Resource Manager. Se non si ha familiarità con Resource Manager, vedere Panoramica di Azure Resource Manager. Questo argomento è incentrato sulle attività di gestione. Si apprenderà come:

  1. Creare un gruppo di risorse
  2. Aggiungere una risorsa al gruppo di risorse
  3. Aggiungere un tag alla risorsa
  4. Eseguire query sulle risorse in base ai nomi o ai valori dei tag
  5. Applicare e rimuovere un blocco sulla risorsa
  6. Eliminare un gruppo di risorse

Questo articolo non illustra come distribuire un modello di Resource Manager nella sottoscrizione. Per informazioni specifiche, vedere Distribuire le risorse con i modelli di Azure Resource Manager e l'interfaccia della riga di comando di Azure.

Avviare Azure Cloud Shell

Azure Cloud Shell è una shell Bash gratuita che può essere eseguita direttamente nel portale di Azure. Include l'interfaccia della riga di comando di Azure preinstallata e configurata per l'uso con l'account. Fare clic sul pulsante Cloud Shell nel menu nel riquadro in alto a destra nel portale di Azure.

Cloud Shell

Il pulsante avvia una shell interattiva che è possibile usare per eseguire i passaggi di questo argomento:

Screenshot che mostra la finestra di Cloud Shell nel portale

Per installare e usare l'interfaccia della riga di comando in locale, vedere Installare l'interfaccia della riga di comando di Azure 2.0.

Impostare la sottoscrizione

Se si hanno più sottoscrizioni, è possibile passare a un'altra sottoscrizione. Per prima cosa, visualizzare tutte le sottoscrizioni dell'account.

az account list

Viene restituito un elenco di tutte le sottoscrizioni abilitate e disabilitate.

[
  {
    "cloudName": "AzureCloud",
    "id": "<guid>",
    "isDefault": true,
    "name": "Example Subscription One",
    "registeredProviders": [],
    "state": "Enabled",
    "tenantId": "<guid>",
    "user": {
      "name": "example@contoso.org",
      "type": "user"
    }
  },
  ...
]

Si noti che una sottoscrizione è contrassegnata come predefinita. Questa sottoscrizione è il contesto corrente per le operazioni. Per passare a un'altra sottoscrizione, specificarne il nome con il cmdlet az account set.

az account set -s "Example Subscription Two"

Per visualizzare il contesto della sottoscrizione corrente, usare az account show senza alcun parametro:

az account show

Creare un gruppo di risorse

Prima di distribuire risorse nella sottoscrizione, è necessario creare un gruppo di risorse che conterrà le risorse.

Per creare un gruppo di risorse, usare il comando az group create. Il comando usa il parametro name per specificare un nome per il gruppo di risorse e il parametro location per specificarne la posizione.

az group create --name TestRG1 --location "South Central US"

L'output presenta il formato seguente:

{
  "id": "/subscriptions/<subscription-id>/resourceGroups/TestRG1",
  "location": "southcentralus",
  "managedBy": null,
  "name": "TestRG1",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null
}

Se è necessario recuperare il gruppo di risorse in un secondo momento, usare il comando seguente:

az group show --name TestRG1

Per ottenere tutti i gruppi di risorse nella sottoscrizione, usare:

az group list

Aggiungere risorse a un gruppo di risorse

Per aggiungere una risorsa al gruppo di risorse, è possibile usare il comando az resource create oppure un comando specifico del tipo di risorsa che viene creato, ad esempio az storage account create. Usare un comando specifico di un tipo di risorsa può risultare più semplice perché può includere i parametri per le proprietà necessarie per la nuova risorsa. Per usare az resource create, è necessario conoscere tutte le proprietà da impostare senza che vengano richieste.

Aggiungere una risorsa tramite gli script, tuttavia, potrebbe causare confusione in futuro perché la nuova risorsa non è inclusa in un modello di Azure Resource Manager. I modelli consentono di distribuire la soluzione in modo affidabile e ripetutamente.

Il comando seguente consente di creare un account di archiviazione. Anziché usare il nome indicato nell'esempio, specificare un nome univoco per l'account di archiviazione. Il nome deve essere di lunghezza compresa tra 3 e 24 caratteri e contenere solo numeri e lettere minuscole. Se si usa il nome indicato nell'esempio, verrà visualizzato un errore perché tale nome è già in uso.

az storage account create -n myuniquestorage -g TestRG1 -l westus --sku Standard_LRS

Se è necessario recuperare la risorsa in un secondo momento, usare il comando seguente:

az storage account show --name myuniquestorage --resource-group TestRG1

Aggiungere un tag

I tag consentono di organizzare le risorse in base a diverse proprietà. È ad esempio possibile che diverse risorse in diversi gruppi di risorse appartengano allo stesso reparto. È possibile applicare un tag e un valore di reparto a tali risorse per contrassegnarle come appartenenti alla stessa categoria oppure indicare se una risorsa viene usata in un ambiente di produzione o di testing. In questo argomento si applicano tag a una sola risorsa, ma nell'ambiente in uso è probabilmente opportuno applicare tag a tutte le risorse.

Il comando seguente applica due tag all'account di archiviazione:

az resource tag --tags Dept=IT Environment=Test -g TestRG1 -n myuniquestorage --resource-type "Microsoft.Storage/storageAccounts"

I tag vengono aggiornati come un singolo oggetto. Per aggiungere un tag a una risorsa che già include tag, per prima cosa recuperare i tag esistenti. Aggiungere il nuovo tag all'oggetto contenente i tag esistenti e riapplicare tutti i tag alla risorsa.

jsonrtag=$(az resource show -g TestRG1 -n myuniquestorage --resource-type "Microsoft.Storage/storageAccounts" --query tags)
rt=$(echo $jsonrtag | tr -d '"{},' | sed 's/: /=/g')
az resource tag --tags $rt Project=Redesign -g TestRG1 -n myuniquestorage --resource-type "Microsoft.Storage/storageAccounts"

Cercare le risorse

Per recuperare le risorse in base a diverse condizioni di ricerca, usare il comando az resource list.

  • Per ottenere una risorsa in base al nome, specificare il parametro name:

    az resource list -n myuniquestorage
    
  • Per ottenere tutte le risorse in un gruppo di risorse, specificare il parametro resource-group:

    az resource list --resource-group TestRG1
    
  • Per ottenere tutte le risorse con un nome e un valore di tag, specificare il parametro tag:

    az resource list --tag Dept=IT
    
  • Per ottenere tutte le risorse con un determinato tipo di risorsa, specificare il parametro resource-type:

    az resource list --resource-type "Microsoft.Storage/storageAccounts"
    

Bloccare una risorsa

Quando è necessario assicurarsi che una risorsa strategica non venga eliminata o modificata accidentalmente, applicare un blocco alla risorsa. È possibile specificare CanNotDelete o ReadOnly.

Per creare o eliminare i blocchi di gestione, è necessario avere accesso alle azioni Microsoft.Authorization/* o Microsoft.Authorization/locks/*. Fra i ruoli predefiniti, solo a Proprietario e Amministratore Accesso utenti sono concesse tali azioni.

Per applicare un blocco, usare il comando seguente:

az lock create --lock-type CanNotDelete --resource-name myuniquestorage --resource-group TestRG1 --resource-type Microsoft.Storage/storageAccounts --name storagelock

La risorsa bloccata nell'esempio precedente non potrà essere eliminata finché non verrà rimosso il blocco. Per rimuovere un blocco, usare:

az lock delete --name storagelock --resource-group TestRG1 --resource-type Microsoft.Storage/storageAccounts --resource-name myuniquestorage

Per altre informazioni sull'impostazione di blocchi, vedere l'articolo su come bloccare le risorse con Azure Resource Manager.

Rimuovere risorse o un gruppo di risorse

È possibile rimuovere una risorsa o un gruppo di risorse. Quando si rimuove un gruppo di risorse, si rimuovono anche tutte le risorse in esso contenute.

  • Per eliminare una risorsa del gruppo di risorse, usare il comando delete per il tipo di risorsa che si sta eliminando. Questo comando elimina la risorsa, ma non il gruppo di risorse.

    az storage account delete -n myuniquestorage -g TestRG1
    
  • Per eliminare un gruppo di risorse e tutte le relative risorse, usare il comando az group delete.

    az group delete -n TestRG1
    

Per entrambi i comandi viene richiesto di confermare che si vuole rimuovere la risorsa o il gruppo di risorse.

Passaggi successivi