Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este script cria uma tarefa Batch e adiciona uma sequência de tarefas à tarefa. Também demonstra como monitorizar um trabalho e as respetivas tarefas.
Se não tiver uma conta do Azure, crie uma conta gratuita antes de começar.
Pré-requisitos
Use o ambiente Bash no Azure Cloud Shell. Para mais informações, veja Get started with Azure Cloud Shell.
Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.
Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Autenticar no Azure usando a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre extensões, consulte Usar e gerenciar extensões com a CLI do Azure.
Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.
Script de exemplo
Lançar o Azure Cloud Shell
O Azure Cloud Shell é um shell interativo gratuito que pode utilizar para executar os passos neste artigo. Tem as ferramentas comuns do Azure pré-instaladas e configuradas para utilização com a sua conta.
Para abrir o Cloud Shell, basta selecionar Experimentar no canto superior direito de um bloco de código. Também pode iniciar o Cloud Shell num separador do browser separado ao aceder a https://shell.azure.com.
Quando o Cloud Shell for aberto, verifique se Bash está selecionado para o seu ambiente. As sessões subsequentes usarão a CLI do Azure em um ambiente Bash, selecione Copiar para copiar os blocos de código, cole-o no Cloud Shell e pressione Enter para executá-lo.
Iniciar sessão no Azure
Cloud Shell é autenticado automaticamente com a conta inicialmente utilizada para iniciar sessão. Use o script a seguir para entrar usando uma assinatura diferente, substituindo subscriptionId pela sua ID de assinatura do Azure.
Se não tiver uma conta do Azure, crie uma conta gratuita antes de começar.
subscription="subscriptionId" # Set Azure subscription ID here
az account set -s $subscription # ...or use 'az login'
Para obter mais informações, consulte definir assinatura ativa ou fazer login interativamente.
Criar uma conta do Batch no modo de serviço do Batch
# Run a job and tasks with Azure Batch
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
[[ "$RESOURCE_GROUP" == '' ]] && resourceGroup="msdocs-batch-rg-$randomIdentifier" || resourceGroup="${RESOURCE_GROUP}"
tag="run-job"
storageAccount="msdocsstorage$randomIdentifier"
batchAccount="msdocsbatch$randomIdentifier"
# Create a resource group.
echo "Creating $resourceGroup in "$location"..."
az group create --name $resourceGroup --location "$location" --tag $tag
# Create a general-purpose storage account in your resource group.
echo "Creating $storageAccount"
az storage account create --resource-group $resourceGroup --name $storageAccount --location "$location" --sku Standard_LRS
# Create a Batch account.
echo "Creating $batchAccount"
az batch account create --name $batchAccount --storage-account $storageAccount --resource-group $resourceGroup --location "$location"
# Authenticate against the account directly for further CLI interaction.
az batch account login --name $batchAccount --resource-group $resourceGroup --shared-key-auth
# Create a new Linux pool with a virtual machine configuration.
az batch pool create --id mypool --vm-size Standard_A1 --target-dedicated 2 --image canonical:ubuntuserver:18_04-lts-gen2 --node-agent-sku-id "batch.node.ubuntu 18.04"
# Create a new job to encapsulate the tasks that are added.
az batch job create --id myjob --pool-id mypool
# Add tasks to the job. Here the task is a basic shell command.
az batch task create --job-id myjob --task-id task1 --command-line "/bin/bash -c 'printenv AZ_BATCH_TASK_WORKING_DIR'"
Para adicionar muitas tarefas de uma só vez
Para adicionar muitas tarefas de uma só vez, especifique as tarefas em um arquivo JSON e passe-as para o comando. Para obter o formato, consulte https://github.com/Azure/azure-docs-cli-python-samples/blob/master/batch/run-job/tasks.json. Forneça o caminho absoluto para o arquivo JSON. Para obter um exemplo de arquivo JSON, consulte https://github.com/Azure-Samples/azure-cli-samples/blob/master/batch/run-job/tasks.json.
az batch task create \
--job-id myjob \
--json-file tasks.json
Para atualizar o trabalho
Atualize o trabalho para que ele seja automaticamente marcado como concluído assim que todas as tarefas forem concluídas.
az batch job set \
--job-id myjob \
--on-all-tasks-complete terminatejob
Para monitorar o status do trabalho
az batch job show --job-id myjob
Para monitorar o status de uma tarefa
az batch task show \
--job-id myjob \
--task-id task1
Limpar recursos
Use o comando a seguir para remover o grupo de recursos e todos os recursos associados a ele usando o comando az group delete - a menos que você tenha uma necessidade contínua desses recursos. Alguns desses recursos podem demorar um pouco para criar, bem como para excluir.
az group delete --name $resourceGroup
Referência de exemplo
Este script utiliza os seguintes comandos. Cada comando na tabela liga à documentação específica do comando.
| Comando | Notas |
|---|---|
| az group create (comando para criar um grupo no Azure CLI) | Cria um grupo de recursos no qual todos os recursos são armazenados. |
| az batch account create (comando para criar uma conta batch no Azure) | Cria a conta de Batch. |
| Para aceder à conta de batch, utilize o comando az batch account login. | Autentica junto à conta do Batch especificada para permitir interações adicionais com a CLI. |
| az batch pool criar | Cria um conjunto de nós de computação. |
| az batch job create (criar tarefa em lote) | Cria uma tarefa do Batch. |
| az batch task create - comando para criar uma tarefa em lote no Azure. | Adiciona uma tarefa ao trabalho do Batch especificado. |
| Conjunto de tarefas em lote AZ | Atualiza as propriedades de um trabalho do Batch. |
| AZ Batch Job Show | Obtém os detalhes de um trabalho do Batch especificado. |
| show de tarefas em lote az | Obtém os detalhes de uma tarefa do trabalho Batch especificado. |
| az group delete - comando para eliminar um grupo. | Elimina um grupo de recursos, incluindo todos os recursos aninhados. |
Próximos passos
Para obter mais informações sobre a CLI do Azure, veja Documentação da CLI do Azure.