Gestire le risorse di Batch con l'interfaccia della riga di comando di AzureManage Batch resources with Azure CLI

L'interfaccia della riga di comando di Azure 2.0 è la nuova esperienza della riga di comando di Azure per gestire le risorse di Azure.The Azure CLI 2.0 is Azure's new command-line experience for managing Azure resources. Può essere usata in macOS, Linux e Windows.It can be used on macOS, Linux, and Windows. L'interfaccia della riga di comando di Azure 2.0 è ottimizzata per la gestione e l'amministrazione delle risorse di Azure dalla riga di comando.Azure CLI 2.0 is optimized for managing and administering Azure resources from the command line. Si può usare l'interfaccia della riga di comando di Azure per gestire gli account Azure Batch e le risorse, come pool, processi e attività.You can use the Azure CLI to manage your Azure Batch accounts and to manage resources such as pools, jobs, and tasks. Con l'interfaccia della riga di comando di Azure è possibile creare script per molte delle attività eseguite con le API Batch, il portale di Azure e i cmdlet di PowerShell per Batch.With the Azure CLI, you can script many of the same tasks you carry out with the Batch APIs, Azure portal, and Batch PowerShell cmdlets.

Questo articolo offre una panoramica dell'uso dell'interfaccia della riga di comando di Azure versione 2.0 con Batch.This article provides an overview of using Azure CLI version 2.0 with Batch. Per una panoramica dell'uso dell'interfaccia della riga di comando con Azure, vedere Introduzione all'interfaccia della riga di comando di Azure 2.0.See Get started with Azure CLI 2.0 for an overview of using the CLI with Azure.

È consigliabile usare la versione più recente dell'interfaccia della riga di comando di Azure 2.0.Microsoft recommends using the latest version of the Azure CLI, version 2.0. Per altre informazioni sulla versione 2.0, vedere l'articolo relativo alla disponibilità generale dell'interfaccia della riga di comando di Azure 2.0.For more information about version 2.0, see Azure Command Line 2.0 now generally available.

Configurare l'interfaccia della riga di comando di AzureSet up the Azure CLI

Per installare l'interfaccia della riga di comando di Azure, seguire la procedura illustrata nell'articolo Installare l'interfaccia della riga di comando di Azure.To install the Azure CLI, follow the steps outlined in Install the Azure CLI.

Suggerimento

È consigliabile aggiornare frequentemente l'installazione dell'interfaccia della riga di comando di Azure per sfruttare i vantaggi degli aggiornamenti e dei miglioramenti del servizio.We recommend that you update your Azure CLI installation frequently to take advantage of service updates and enhancements.

Guida per i comandiCommand help

È possibile visualizzare il testo della Guida per ogni comando dell'interfaccia della riga di comando di Azure aggiungendo -h al comando.You can display help text for every command in the Azure CLI by appending -h to the command. Omettere qualsiasi altra opzione.Omit any other options. ad esempio:For example:

  • Per visualizzare la Guida per il comando az, immettere az -hTo get help for the az command, enter: az -h
  • Per ottenere un elenco di tutti i comandi per Batch nell'interfaccia della riga di comando, usare az batch -hTo get a list of all Batch commands in the CLI, use: az batch -h
  • Per visualizzare la Guida in merito alla creazione di un account Batch, immettere az batch account create -hTo get help on creating a Batch account, enter: az batch account create -h

In caso di dubbi, usare l'opzione della riga di comando -h per visualizzare la Guida per qualsiasi comando dell'interfaccia della riga di comando di Azure.When in doubt, use the -h command-line option to get help on any Azure CLI command.

Nota

Nelle versioni precedenti dell'interfaccia della riga di comando di Azure si usa azure anteposto al comando dell'interfaccia della riga di comando.Earlier versions of the Azure CLI used azure to preface a CLI command. Nella versione 2.0 tutti i comandi ora sono preceduti da az.In version 2.0, all commands are now prefaced with az. Assicurarsi di aggiornare gli script per l'uso della nuova sintassi con la versione 2.0.Be sure to update your scripts to use the new syntax with version 2.0.

Per informazioni dettagliate sui comandi dell'interfaccia della riga di comando di Azure per Batch, vedere la documentazione di riferimento dell'interfaccia della riga di comando di Azure.Additionally, refer to the Azure CLI reference documentation for details about Azure CLI commands for Batch.

Accesso e autenticazioneLog in and authenticate

Per usare l'interfaccia della riga di comando di Azure con Batch, è necessario accedere ed eseguire l'autenticazione.To use the Azure CLI with Batch, you need to log in and authenticate. La procedura prevede due semplici passaggi:There are two simple steps to follow:

  1. Accedere ad Azure.Log into Azure. L'accesso ad Azure permette di accedere ai comandi di Azure Resource Manager, tra cui i comandi del servizio di gestione Batch.Logging into Azure gives you access to Azure Resource Manager commands, including Batch Management service commands.
  2. Accedere all'account Batch.Log into your Batch account. L'accesso all'account Batch permette di accedere ai comandi del servizio Batch.Logging into your Batch account gives you access to Batch service commands.

Accedere ad AzureLog in to Azure

Per accedere ad Azure è possibile procedere in diversi modi, descritti nel dettaglio nell'articolo Accedere con l'interfaccia della riga di comando di Azure 2.0:There are a few different ways to log into Azure, described in detail in Log in with Azure CLI 2.0:

  1. Accedere modo interattivo.Log in interactively. Accedere in modo interattivo quando si eseguono comandi dell'interfaccia della riga di comando di Azure direttamente dalla riga di comando.Log in interactively when you are running Azure CLI commands yourself from the command line.
  2. Accedere con un'entità servizio.Log in with a service principal. Accedere con un'entità servizio quando si eseguono comandi dell'interfaccia della riga di comando di Azure da uno script o un'applicazione.Log in with a service principal when you are running Azure CLI commands from a script or an application.

Ai fini di questo articolo, viene illustrato come accedere ad Azure in modo interattivo.For the purposes of this article, we show how to log into Azure interactively. Digitare az login nella riga di comando:Type az login on the command line:

# Log in to Azure and authenticate interactively.
az login

Il comando az login restituisce un token che può essere usato per eseguire l'autenticazione, come illustrato di seguito.The az login command returns a token that you can use to authenticate, as shown here. Seguire le istruzioni fornite per aprire una pagina Web e inviare il token ad Azure:Follow the instructions provided to open a web page and submit the token to Azure:

Accedere ad Azure

Gli esempi riportati nella sezione Script della shell di esempio mostrano anche come avviare la sessione dell'interfaccia della riga di comando di Azure eseguendo l'accesso ad Azure in modo interattivo.The examples listed in the Sample shell scripts section also show how to start your Azure CLI session by logging into Azure interactively. Dopo aver eseguito l'accesso, è possibile chiamare i comandi per usare le risorse di gestione Batch, inclusi i pacchetti di applicazioni, le chiavi, le quote e gli account Batch.Once you have logged in, you can call commands to work with Batch Management resources, including Batch accounts, keys, application packages, and quotas.

Accedere all'account BatchLog in to your Batch account

Per usare l'interfaccia della riga di comando di Azure per gestire le risorse di Batch, come pool, processi e attività, è necessario accedere all'account Batch ed eseguire l'autenticazione.To use the Azure CLI to manage Batch resources, such as pools, jobs, and tasks, you need to log into your Batch account and authenticate. Per accedere al servizio Batch, usare il comando az batch account login.To log in to the Batch service, use the az batch account login command.

Per l'autenticazione con l'account Batch è possibile procedere in due modi:You have two options for authenticating against your Batch account:

  • Tramite l'autenticazione con Azure Active Directory (Azure AD).By using Azure Active Directory (Azure AD) authentication.

    L'autenticazione con Azure AD è l'opzione predefinita quando si usa l'interfaccia della riga di comando di Azure con Batch ed è consigliata per la maggior parte degli scenari.Authenticating with Azure AD is the default when you use the Azure CLI with Batch, and recommended for most scenarios.

    Quando si accede ad Azure in modo interattivo, come descritto nella sezione precedente, le credenziali vengono memorizzate nella cache per accedere tramite l'interfaccia della riga di comando di Azure al proprio account Batch usando le stesse credenziali.When you log in to Azure interactively, as described in the previous section, your credentials are cached, so the Azure CLI can log you in to your Batch account using those same credentials. Se si accede ad Azure usando un'entità servizio, tali credenziali vengono usate anche per accedere all'account Batch.If you log in to Azure using a service principal, those credentials are also used to log in to your Batch account.

    Uno dei vantaggi di Azure AD è che offre il controllo degli accessi in base al ruolo.An advantage of Azure AD is that it offers role-based access control (RBAC). Con il controllo degli accessi in base al ruolo, l'accesso dell'utente dipende dal ruolo assegnato anziché dal fatto che abbia o meno le chiavi dell'account.With RBAC, a user's access depends on their assigned role, rather than whether or not they possess the account keys. Anziché gestire le chiavi dell'account, è possibile gestire i ruoli del controllo degli accessi in base al ruolo e lasciare la gestione dell'accesso e dell'autenticazione ad Azure AD.Instead of managing account keys, you can manage RBAC roles, and let Azure AD handle access and authentication.

    Per accedere all'account Batch con Azure AD, chiamare il comando az batch account login:To log in to your Batch account using Azure AD, call the az batch account login command:

    az batch account login -g myresource group -n mybatchaccount
    
  • Tramite l'autenticazione con chiave condivisa.By using Shared Key authentication.

    L'autenticazione con chiave condivisa usa le chiavi di accesso dell'account per autenticare i comandi dell'interfaccia della riga di comando di Azure per il servizio Batch.Shared Key authentication uses your account access keys to authenticate Azure CLI commands for the Batch service.

    Se si creano script dell'interfaccia della riga di comando di Azure per automatizzare la chiamata di comandi di Batch, è possibile usare l'autenticazione con chiave condivisa o un'entità servizio di Azure AD.If you are creating Azure CLI scripts to automate calling Batch commands, you can use either Shared Key authentication, or an Azure AD service principal. In alcuni scenari potrebbe essere più semplice usare l'autenticazione con chiave condivisa anziché creare un'entità servizio.In some scenarios, using Shared Key authentication may be simpler than creating a service principal.

    Per accedere usando l'autenticazione con chiave condivisa, includere l'opzione --shared-key-auth nella riga di comando:To log in using Shared Key authentication, include the --shared-key-auth option on the command line:

    az batch account login -g myresourcegroup -n mybatchaccount --shared-key-auth
    

Gli esempi riportati nella sezione Script della shell di esempio mostrano come accedere all'account Batch con l'interfaccia della riga di comando di Azure usando sia Azure AD che la chiave condivisa.The examples listed in the Sample shell scripts section show how to log into your Batch account with the Azure CLI using both Azure AD and Shared Key.

Usare il trasferimento di file e i modelli dell'interfaccia della riga di comando di Azure Batch (anteprima)Use Azure Batch CLI Templates and File Transfer (Preview)

È possibile usare l'interfaccia della riga di comando di Azure per eseguire processi di Batch end-to-end senza scrivere codice.You can use the Azure CLI to run Batch jobs end-to-end without writing code. I file di modello del servizio Batch supportano la creazione di pool, processi e attività con l'interfaccia della riga di comando di Azure.Batch template files support creating pools, jobs, and tasks with the Azure CLI. È anche possibile usare l'interfaccia della riga di comando di Azure per caricare file di input dei processi nell'account di archiviazione di Azure associato all'account Batch e quindi scaricare file di output dei processi da tale interfaccia.You can also use the Azure CLI to upload job input files to the Azure Storage account associated with the Batch account, and download job output files from it. Per altre informazioni, vedere Usare il trasferimento di file e i modelli dell'interfaccia della riga di comando di Azure Batch (anteprima).For more information, see Use Azure Batch CLI Templates and File Transfer (Preview).

Script della shell di esempioSample shell scripts

Gli script di esempio riportati nella tabella seguente mostrano come usare i comandi dell'interfaccia della riga di comando di Azure con il servizio Batch e il servizio di gestione Batch per eseguire attività comuni.The sample scripts listed in the following table show how to use Azure CLI commands with the Batch service and Batch Management service to accomplish common tasks. Questi script di esempio illustrano molti dei comandi disponibili nell'interfaccia della riga di comando di Azure per Batch.These sample scripts cover many of the commands available in the Azure CLI for Batch.

ScriptScript NoteNotes
Creare un account BatchCreate a Batch account Crea un account Batch e lo associa a un account di archiviazione.Creates a Batch account and associates it with a storage account.
Aggiungere un'applicazioneAdd an application Aggiunge un'applicazione e carica i file binari nel pacchetto.Adds an application and uploads packaged binaries.
Gestire i pool di BatchManage Batch pools Illustra la creazione, il ridimensionamento e la gestione dei pool.Demonstrates creating, resizing, and managing pools.
Eseguire un processo e le attività con BatchRun a job and tasks with Batch Illustra l'esecuzione di un processo e l'aggiunta di attività.Demonstrates running a job and adding tasks.

File JSON per la creazione di risorseJSON files for resource creation

Quando si creano risorse di Batch come pool e processi, è possibile specificare un file JSON contenente la configurazione della nuova risorsa anziché passarne i parametri come opzioni della riga di comando.When you create Batch resources like pools and jobs, you can specify a JSON file containing the new resource's configuration instead of passing its parameters as command-line options. ad esempio:For example:

az batch pool create my_batch_pool.json

Anche se è possibile creare la maggior parte delle risorse Batch usando solo opzioni della riga di comando, per alcune funzionalità è necessario specificare un file in formato JSON contenente i dettagli delle risorse.While you can create most Batch resources using only command-line options, some features require that you specify a JSON-formatted file containing the resource details. È necessario usare un file JSON, ad esempio, se si vogliono specificare file di risorse per un'attività di avvio.For example, you must use a JSON file if you want to specify resource files for a start task.

Per la sintassi JSON necessaria per creare una risorsa, vedere la documentazione di riferimento sull'API REST di Batch.To see the JSON syntax required to create a resource, refer to the Batch REST API reference documentation. Ogni argomento "Aggiungi tipo di risorsa" nelle informazioni di riferimento sull'API REST contiene script JSON di esempio per la creazione di tale risorsa.Each "Add resource type" topic in the REST API reference contains sample JSON scripts for creating that resource. È possibile usare gli script JSON di esempio come modelli per i file JSON da usare con l'interfaccia della riga di comando di Azure.You can use those sample JSON scripts as templates for JSON files to use with the Azure CLI. Per la sintassi JSON necessaria per la creazione di pool, vedere Add a pool to an account (Aggiungere un pool a un account).For example, to see the JSON syntax for pool creation, refer to Add a pool to an account.

Per uno script di esempio che specifica un file JSON, vedere Eseguire processi in Azure Batch con l'interfaccia della riga di comando di Azure.For a sample script that specifies a JSON file, see Run a job and tasks with Batch.

Nota

Se si specifica un file JSON durante la creazione di una risorsa, gli altri parametri specificati nella riga di comando per la risorsa vengono ignorati.If you specify a JSON file when you create a resource, any other parameters that you specify on the command line for that resource are ignored.

Query efficienti per le risorse BatchEfficient queries for Batch resources

Ogni tipo di risorsa di Batch supporta un comando list che esegue query sull'account Batch ed elenca le risorse di tale tipo.Each Batch resource type supports a list command that queries your Batch account and lists resources of that type. È ad esempio possibile elencare i pool dell'account e le attività di un processo:For example, you can list the pools in your account and the tasks in a job:

az batch pool list
az batch task list --job-id job001

Quando si esegue una query sul servizio Batch con un'operazione list, è possibile specificare una clausola OData per limitare la quantità di dati restituiti.When you query the Batch service with a list operation, you can specify an OData clause to limit the amount of data returned. Dato che tutte le operazioni di filtro vengono eseguite sul lato server, vengono restituiti solo i dati richiesti.Because all filtering occurs server-side, only the data you request crosses the wire. Queste clausole consentono di risparmiare larghezza di banda (e quindi tempo) quando si eseguono operazioni di tipo elenco.Use these clauses to save bandwidth (and therefore time) when you perform list operations.

La tabella seguente illustra le clausole OData supportate dal servizio Batch:The following table describes the OData clauses supported by the Batch service:

ClausolaClause DescrizioneDescription
--select-clause [select-clause] Restituisce un subset di proprietà per ogni entità.Returns a subset of properties for each entity.
--filter-clause [filter-clause] Restituisce solo le entità che corrispondono all'espressione OData specificata.Returns only entities that match the specified OData expression.
--expand-clause [expand-clause] Ottiene le informazioni sull'entità in una singola chiamata REST sottostante.Obtains the entity information in a single underlying REST call. La clausola expand supporta attualmente solo la proprietà stats.The expand clause currently supports only the stats property.

Per uno script di esempio che illustra come usare la clausola OData, vedere Eseguire processi in Azure Batch con l'interfaccia della riga di comando di Azure.For a sample script that shows how to use an OData clause, see Run a job and tasks with Batch.

Per altre informazioni sull'esecuzione di query di elenco efficienti con clausole OData, vedere Creare query per elencare le risorse di Batch in modo efficiente.For more information on performing efficient list queries with OData clauses, see Query the Azure Batch service efficiently.

Suggerimenti per la risoluzione dei problemiTroubleshooting tips

I suggerimenti riportati di seguito possono contribuire alla risoluzione di problemi dell'interfaccia della riga di comando di Azure:The following tips may help when you are troubleshooting Azure CLI issues:

  • Usare -h per visualizzare il testo della Guida per qualsiasi comando dell'interfaccia della riga di comando.Use -h to get help text for any CLI command
  • Usare -v e -vv per visualizzare l'output del comando verbose.Use -v and -vv to display verbose command output. Quando il flag -vv è incluso, l'interfaccia della riga di comando di Azure visualizza le richieste REST e le risposte effettive.When the -vv flag is included, the Azure CLI displays the actual REST requests and responses. Queste opzioni sono utili per visualizzare l'output completo degli errori.These switches are handy for displaying full error output.
  • È possibile visualizzare l'output del comando in formato JSON con l'opzione --json.You can view command output as JSON with the --json option. Ad esempio, az batch pool show pool001 --json visualizza le proprietà di pool001 in formato JSON.For example, az batch pool show pool001 --json displays pool001's properties in JSON format. È quindi possibile copiare e modificare tale output per l'uso in un --json-file (vedere File JSON più indietro in questo articolo).You can then copy and modify this output to use in a --json-file (see JSON files earlier in this article).
  • Il forum di Batch è monitorato dai membri del team di Batch.The Batch forum is monitored by Batch team members. Se si riscontrano problemi o si vuole assistenza per un'operazione specifica, è possibile pubblicare le proprie domande nel forum.You can post your questions there if you run into issues or would like help with a specific operation.

Passaggi successiviNext steps