Usare l'interfaccia della riga di comando di Azure per gestire risorse e gruppi di risorseUse the Azure CLI to manage Azure resources and resource groups

Questo articolo illustra come gestire le soluzioni con l'interfaccia della riga di comando di Azure e Azure Resource Manager.In this article, you learn how to manage your solutions with Azure CLI and Azure Resource Manager. Se non si ha familiarità con Resource Manager, vedere Panoramica di Azure Resource Manager.If you are not familiar with Resource Manager, see Resource Manager Overview. Questo articolo è incentrato sulle attività di gestione.This article focuses on management tasks. Si apprenderà come:You will:

  1. Creare un gruppo di risorseCreate a resource group
  2. Aggiungere una risorsa al gruppo di risorseAdd a resource to the resource group
  3. Aggiungere un tag alla risorsaAdd a tag to the resource
  4. Eseguire query sulle risorse in base ai nomi o ai valori dei tagQuery resources based on names or tag values
  5. Applicare e rimuovere un blocco sulla risorsaApply and remove a lock on the resource
  6. Eliminare un gruppo di risorseDelete a resource group

Questo articolo non illustra come distribuire un modello di Resource Manager nella sottoscrizione.This article does not show how to deploy a Resource Manager template to your subscription. Per informazioni specifiche, vedere Distribuire le risorse con i modelli di Azure Resource Manager e l'interfaccia della riga di comando di Azure.For that information, see Deploy resources with Resource Manager templates and Azure CLI.

Aprire Azure Cloud ShellOpen Azure Cloud Shell

Azure Cloud Shell è una shell interattiva gratuita che può essere usata per eseguire la procedura di questo articolo.Azure Cloud Shell is a free, interactive shell that you can use to run the steps in this article. Gli strumenti comuni di Azure sono preinstallati e configurati in Cloud Shell per l'uso con l'account.Common Azure tools are preinstalled and configured in Cloud Shell for you to use with your account. È sufficiente selezionare il pulsante Copia per copiare il codice, incollarlo in Cloud Shell e quindi premere INVIO per eseguirlo.Just select the Copy button to copy the code, paste it in Cloud Shell, and then press Enter to run it. Esistono alcuni modi per aprire Cloud Shell:There are a few ways to open Cloud Shell:

Selezionare Prova nell'angolo superiore destro di un blocco di codice.Select Try It in the upper-right corner of a code block. Cloud Shell in questo articolo
Aprire Cloud Shell nel browser.Open Cloud Shell in your browser. https://shell.azure.com/bash
Selezionare il pulsante Cloud Shell nel menu nell'angolo superiore destro del portale di Azure.Select the Cloud Shell button on the menu in the upper-right corner of the Azure portal. 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.To install and use the CLI locally, see Install Azure CLI.

Impostare la sottoscrizioneSet subscription

Se si hanno più sottoscrizioni, è possibile passare a un'altra sottoscrizione.If you have more than one subscription, you can switch to a different subscription. Per prima cosa, visualizzare tutte le sottoscrizioni dell'account.First, let's see all the subscriptions for your account.

az account list

Viene restituito un elenco di tutte le sottoscrizioni abilitate e disabilitate.It returns a list of your enabled and disabled subscriptions.

[
  {
    "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.Notice that one subscription is marked as the default. Questa sottoscrizione è il contesto corrente per le operazioni.This subscription is your current context for operations. Per passare a un'altra sottoscrizione, specificarne il nome con il cmdlet az account set.To switch to a different subscription, provide the subscription name with the az account set command.

az account set -s "Example Subscription Two"

Per visualizzare il contesto della sottoscrizione corrente, usare az account show senza alcun parametro:To show the current subscription context, use az account show without a parameter:

az account show

Creare un gruppo di risorseCreate a resource group

Prima di distribuire risorse nella sottoscrizione, è necessario creare un gruppo di risorse che conterrà le risorse.Before deploying any resources to your subscription, you must create a resource group that will contain the resources.

Per creare un gruppo di risorse, usare il comando az group create.To create a resource group, use the az group create command. Il comando usa il parametro name per specificare un nome per il gruppo di risorse e il parametro location per specificarne la posizione.The command uses the name parameter to specify a name for the resource group and the location parameter to specify its location.

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

L'output presenta il formato seguente:The output is in the following format:

{
  "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:If you need to retrieve the resource group later, use the following command:

az group show --name TestRG1

Per ottenere tutti i gruppi di risorse nella sottoscrizione, usare:To get all the resource groups in your subscription, use:

az group list

Aggiungere risorse a un gruppo di risorseAdd resources to a resource group

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.To add a resource to the resource group, you can use the az resource create command or a command that is specific to the type of resource you are creating (like 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.You might find it easier to use a command that is specific to a resource type because it includes parameters for the properties that are needed for the new resource. Per usare az resource create, è necessario conoscere tutte le proprietà da impostare senza che vengano richieste.To use az resource create, you must know all the properties to set without being prompted for them.

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.However, adding a resource through script might cause future confusion because the new resource does not exist in a Resource Manager template. I modelli consentono di distribuire la soluzione in modo affidabile e ripetutamente.Templates enable you to reliably and repeatedly deploy your solution.

Il comando seguente consente di creare un account di archiviazione.The following command creates a storage account. Anziché usare il nome indicato nell'esempio, specificare un nome univoco per l'account di archiviazione.Instead of using the name shown in the example, provide a unique name for the storage account. Il nome deve essere di lunghezza compresa tra 3 e 24 caratteri e contenere solo numeri e lettere minuscole.The name must be between 3 and 24 characters in length, and use only numbers and lower-case letters. Se si usa il nome indicato nell'esempio, verrà visualizzato un errore perché tale nome è già in uso.If you use the name shown in the example, you receive an error because that name is already in use.

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:If you need to retrieve this resource later, use the following command:

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

Aggiungere un tagAdd a tag

I tag consentono di organizzare le risorse in base a diverse proprietà.Tags enable you to organize your resources according to different properties. È ad esempio possibile che diverse risorse in diversi gruppi di risorse appartengano allo stesso reparto.For example, you may have several resources in different resource groups that belong to the same department. È possibile applicare un tag e un valore di reparto a tali risorse per contrassegnarle come appartenenti alla stessa categoriaYou can apply a department tag and value to those resources to mark them as belonging to the same category. oppure indicare se una risorsa viene usata in un ambiente di produzione o di testing.Or, you can mark whether a resource is used in a production or test environment. In questo articolo si applicano tag a una sola risorsa, ma nell'ambiente in uso è probabilmente opportuno applicare tag a tutte le risorse.In this article, you apply tags to only one resource, but in your environment it most likely makes sense to apply tags to all your resources.

Il comando seguente applica due tag all'account di archiviazione:The following command applies two tags to your storage account:

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.Tags are updated as a single object. Per aggiungere un tag a una risorsa che già include tag, per prima cosa recuperare i tag esistenti.To add a tag to a resource that already includes tags, first retrieve the existing tags. Aggiungere il nuovo tag all'oggetto contenente i tag esistenti e riapplicare tutti i tag alla risorsa.Add the new tag to the object that contains the existing tags, and reapply all the tags to the resource.

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 risorseSearch for resources

Per recuperare le risorse in base a diverse condizioni di ricerca, usare il comando az resource list.Use the az resource list command to retrieve resources for different search conditions.

  • Per ottenere una risorsa in base al nome, specificare il parametro name:To get a resource by name, provide the name parameter:

    az resource list -n myuniquestorage
    
  • Per ottenere tutte le risorse in un gruppo di risorse, specificare il parametro resource-group:To get all the resources in a resource group, provide the resource-group parameter:

    az resource list --resource-group TestRG1
    
  • Per ottenere tutte le risorse con un nome e un valore di tag, specificare il parametro tag:To get all the resources with a tag name and value, provide the tag parameter:

    az resource list --tag Dept=IT
    
  • Per ottenere tutte le risorse con un determinato tipo di risorsa, specificare il parametro resource-type:To all the resources with a particular resource type, provide the resource-type parameter:

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

Ottenere l'ID risorsaGet resource ID

Molti comandi accettano un ID di risorsa come parametro.Many commands take a resource ID as a parameter. Per ottenere l'ID per una risorsa e per archiviarlo in una variabile usare:To get the ID for a resource and store in a variable, use:

webappID=$(az resource show -g exampleGroup -n exampleSite --resource-type "Microsoft.Web/sites" --query id --output tsv)

Bloccare una risorsaLock a resource

Quando è necessario assicurarsi che una risorsa strategica non venga eliminata o modificata accidentalmente, applicare un blocco alla risorsa.When you need to make sure a critical resource is not accidentally deleted or modified, apply a lock to the resource. È possibile specificare CanNotDelete o ReadOnly.You can specify either a CanNotDelete or ReadOnly.

Per creare o eliminare i blocchi di gestione, è necessario avere accesso alle azioni Microsoft.Authorization/* o Microsoft.Authorization/locks/*.To create or delete management locks, you must have access to Microsoft.Authorization/* or Microsoft.Authorization/locks/* actions. Fra i ruoli predefiniti, solo a Proprietario e Amministratore Accesso utenti sono concesse tali azioni.Of the built-in roles, only Owner and User Access Administrator are granted those actions.

Per applicare un blocco, usare il comando seguente:To apply a lock, use the following command:

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.The locked resource in the preceding example cannot be deleted until the lock is removed. Per rimuovere un blocco, usare:To remove a lock, use:

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.For more information about setting locks, see Lock resources with Azure Resource Manager.

Rimuovere risorse o un gruppo di risorseRemove resources or resource group

È possibile rimuovere una risorsa o un gruppo di risorse.You can remove a resource or resource group. Quando si rimuove un gruppo di risorse, si rimuovono anche tutte le risorse in esso contenute.When you remove a resource group, you also remove all the resources within that resource group.

  • Per eliminare una risorsa del gruppo di risorse, usare il comando delete per il tipo di risorsa che si sta eliminando.To delete a resource from the resource group, use the delete command for the resource type you are deleting. Questo comando elimina la risorsa, ma non il gruppo di risorse.The command deletes the resource, but does not delete the resource group.

    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.To delete a resource group and all its resources, use the az group delete command.

    az group delete -n TestRG1
    

Per entrambi i comandi viene richiesto di confermare che si vuole rimuovere la risorsa o il gruppo di risorse.For both commands, you are asked to confirm that you wish to remove the resource or resource group.

Passaggi successiviNext steps