Exercício – Criar e implantar um modelo do Azure Resource Manager
Observação
Na primeira vez que você ativar uma área restrita e aceitar os termos, sua conta Microsoft será associada a um novo diretório do Azure chamado Área Restrita do Microsoft Learn. Você também será adicionado a uma assinatura especial chamada Assinatura do Concierge.
Neste exercício, você deve criar um modelo do Azure Resource Manager (modelo do ARM), implantá-lo no Azure e, em seguida, atualizar esse modelo do ARM para adicionar parâmetros e saídas.
Este exercício usará Ferramentas do Azure Resource Manager para Visual Studio Code. Instale essa extensão no Visual Studio Code antes de iniciar o exercício.
Criar um modelo do ARM
Abra o Visual Studio Code e crie um arquivo chamado azuredeploy.json.
A extensão do modelo do ARM do Visual Studio Code é configurada com snippets que ajudam você a desenvolver modelos. Vamos começar adicionando um modelo em branco. Na primeira linha do arquivo, insira arm.
O Visual Studio Code exibe automaticamente várias opções potenciais que começam com arm!. Selecione o modelo do ARM (Azure Resource Manager). O Visual Studio Code processa automaticamente os esquemas e as linguagens do seu modelo.
Agora, o arquivo tem esta aparência:
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": {}, "functions": [], "variables": {}, "resources": [], "outputs": {} }
Observe que esse arquivo tem todas as seções de um modelo do ARM que descrevemos na unidade anterior.
Salve as alterações no arquivo pressionando Ctrl+S.
Implantar o modelo ARM no Azure
Para implantar esse modelo no Azure, será necessário entrar em sua conta do Azure do terminal do Visual Studio Code. Verifique se você tem as ferramentas da CLI do Azure instaladas e entre com a mesma conta usada para ativar a área restrita.
Selecione Terminal > Novo Terminal para abrir uma janela do terminal.
Caso a barra de comandos da janela do terminal indique bash, você tem o shell correto para trabalhar e pode ir para a próxima seção.
Caso contrário, remova a lista suspensa e selecione Selecionar perfil padrão.
Selecione Git Bash.
Selecione Terminal > Novo Terminal para abrir uma janela do terminal do shell do Bash.
Entrar no Azure
Na janela do terminal, execute este comando para entrar no Azure.
az login
Um navegador é aberto para que você possa entrar em sua conta. Depois de entrar, uma lista das assinaturas associadas a essa conta será exibida no terminal. Se você tiver ativado a área restrita, verá uma assinatura chamada Assinatura de Concierge. Use-a durante o restante do exercício.
No shell bash, execute o comando a seguir para definir a assinatura padrão para todos os comandos da CLI do Azure executados nesta sessão.
az account set --subscription "Concierge Subscription"
Caso tenha usado mais de uma área restrita recentemente, poderá haver mais de uma Assinatura de Concierge listada. Se sim, use as duas próximas etapas para identificar e definir a assinatura padrão.
- Execute o comando a seguir para obter as IDs de assinatura do Concierge.
az account list \ --refresh \ --query "[?contains(name, 'Concierge Subscription')].id" \ --output table
- Defina a assinatura padrão executando o comando a seguir, substituindo {sua ID de assinatura} pela ID de assinatura mais recente do Concierge.
az account set --subscription {your subscription ID}
Definir o grupo de recursos padrão
Ao configurar o grupo de recursos padrão para aquele criado quando você ativou a área restrita, omita esse parâmetro dos comandos da CLI do Azure neste exercício. Para definir o grupo de recursos, execute o comando a seguir.
az configure --defaults group=<rgn>[sandbox resource group name]</rgn>
Implantar o modelo no Azure
Execute os comandos a seguir para implantar o modelo do ARM no Azure. O modelo do ARM ainda não tem nenhum recurso, portanto, você não verá nenhum recurso criado. Você deve obter uma implantação bem-sucedida.
templateFile="azuredeploy.json"
today=$(date +"%d-%b-%Y")
DeploymentName="blanktemplate-"$today
az deployment group create \
--name $DeploymentName \
--template-file $templateFile
A seção superior do código prévio define as variáveis da CLI do Azure, que incluem o caminho para o arquivo de modelo a ser implantado e o nome da implantação. A seção inferior, az deployment group create
, implanta o modelo no Azure. Observe que o nome da implantação será blanktemplate
com a data como um sufixo.
Você deverá ver Running...
no terminal.
Para implantar esse modelo no Azure, será necessário entrar em sua conta do Azure do terminal do Visual Studio Code. Certifique-se de ter instalado as Ferramentas do Azure PowerShell a partir das Extensões do Visual Studio Code e entre na mesma conta que ativou a área restrita.
Na barra de comandos, selecione Terminal > Novo Terminal para abrir uma janela do PowerShell.
Se a barra de comandos da janela do terminal mostra PowerShell, você tem o shell correto do qual trabalhar e pode ir para a próxima seção.
Caso contrário, selecione a seta para baixo e, na lista suspensa, selecione PowerShell. Se essa opção estiver ausente, selecione Selecionar Perfil Padrão.
No campo de entrada, role para baixo e selecione PowerShell.
Selecione Terminal > Novo Terminal para abrir uma janela do terminal do PowerShell.
Entrar no Azure usando o Azure PowerShell
Do terminal no Visual Studio Code, execute o comando a seguir para entrar no Azure. Um navegador será aberto para que seja possível entrar em sua conta.
Connect-AzAccount
Dica
O módulo do AZ PowerShell é o substituto do AzureRM e é a versão recomendada a ser usada para interagir com o Azure.
Entre usando a conta usada para ativar a área restrita. Depois de ter se conectado, o Visual Studio Code listará as assinaturas associadas à sua conta na janela do terminal. Se você tiver ativado a área restrita, verá um bloco de código que contém
"name": "Concierge Subscription"
. Essa é a assinatura a ser usada para o restante do exercício.
Defina a assinatura padrão para todos os comandos do PowerShell nesta sessão
Execute o comando a seguir para obter suas assinaturas e IDs. A ID da assinatura será a segunda coluna. Procure a Assinatura de Concierge e copie o valor na segunda coluna. Ela será algo parecido com cf49fbbc-217c-4eb6-9eb5-a6a6c68295a0:
Get-AzSubscription
Execute o comando a seguir, substituindo {sua ID de assinatura} pelo que você copiou na etapa anterior para alterar sua assinatura ativa para a assinatura do concierge.
$context = Get-AzSubscription -SubscriptionId {Your subscription ID} Set-AzContext $context
Execute o comando a seguir para permitir que o grupo de recursos padrão seja o grupo de recursos criado para você no ambiente de área restrita. Essa ação permitirá omitir o parâmetro do restante dos comandos do Azure PowerShell neste exercício.
Set-AzDefault -ResourceGroupName <rgn>[sandbox resource group name]</rgn>
Implantar o modelo no Azure
Implante o modelo no Azure executando os comandos a seguir. O modelo do ARM ainda não tem nenhum recurso, portanto, não será possível conferir os recursos criados.
$templateFile="azuredeploy.json"
$today=Get-Date -Format "MM-dd-yyyy"
$deploymentName="blanktemplate-"+"$today"
New-AzResourceGroupDeployment `
-Name $deploymentName `
-TemplateFile $templateFile
A seção superior do código prévio define as variáveis do Azure PowerShell, que incluem o caminho para o arquivo de implantação e o nome da implantação. Em seguida, o comando New-AzResourceGroupDeployment
implantará o modelo no Azure. Observe que o nome da implantação será blanktemplate
com a data como um sufixo.
Após implantar o modelo do ARM no Azure, acesse o portal do Azure e verifique se você está na assinatura da área restrita. Para fazer isso, selecione seu avatar no canto superior direito da página. Selecione Mudar diretório. Na lista, escolha o diretório Área restrita do Microsoft Learn.
No menu Recursos, selecione Grupos de recursos.
Selecione o grupo de recursos
[nome do grupo de recursos da área restrita] .No painel Visão geral, você verá que a implantação foi bem-sucedida.
Selecione 1 Êxito para ver os detalhes da implantação.
Selecione
blanktemplate
para ver quais recursos foram implantados. Nesse caso, ele estará vazio porque você ainda não especificou nenhum recurso no modelo.Deixe a página aberta no navegador. Você verificará as implantações novamente.
Adicionar um recurso ao modelo do ARM
Na tarefa anterior, você aprendeu a criar um modelo em branco e implantá-lo. Agora, você está pronto para implantar um recurso real. Nesta tarefa, você deve adicionar um recurso de conta do armazenamento do Azure ao modelo do ARM usando um snippet da extensão Azure Resource Manager Tools para Visual Studio Code.
No arquivo azuredeploy.json no Visual Studio Code, coloque o cursor entre os colchetes no bloco de recursos
"resources":[],
.Insira armazenamento dentro dos colchetes. Uma lista de snippets relacionados será exibida. Selecione arm-storage.
O arquivo terá a seguinte aparência:
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": {}, "functions": [], "variables": {}, "resources": [ { "type": "Microsoft.Storage/storageAccounts", "apiVersion": "2023-05-01", "name": "storageaccount1", "tags": { "displayName": "storageaccount1" }, "location": "[resourceGroup().location]", "kind": "StorageV2", "sku": { "name": "Premium_LRS" } } ], "outputs": {} }
Os valores que devem ser editados são destacados na nova seção do arquivo, e é possível navegar por eles pressionando a tecla Tab.
Observe que os atributos
tags
elocation
estão preenchidos. O atributolocation
usa uma função para definir a localização do recurso e do grupo de recursos. Você vai aprender sobre as marcas e funções no próximo módulo.Altere os valores name e displayName do recurso para algo exclusivo, como learnexercise12321. Esse nome deve ser exclusivo em todo o Azure, portanto, escolha algo exclusivo para você.
Altere o valor de name da SKU de Premium_LRS para Standard_LRS. Altere o valor de tier para Standard. Observe que o Visual Studio Code fornece as opções apropriadas para os valores de atributo no IntelliSense. Exclua o valor padrão, incluindo as aspas, e insira aspas para ver esse trabalho.
O local do recurso é definido como o local do grupo de recursos em que ele será implantado. Mantenha o valor padrão aqui.
Salve o arquivo.
Implantar o modelo ARM atualizado
Aqui, você alterará o nome da implantação para refletir melhor o que essa implantação faz.
Execute os comandos da CLI do Azure a seguir no terminal. Esse snippet é o mesmo código usado anteriormente, porém o nome da implantação será alterado.
templateFile="azuredeploy.json"
today=$(date +"%d-%b-%Y")
DeploymentName="addstorage-"$today
az deployment group create \
--name $DeploymentName \
--template-file $templateFile
Execute os comandos do Azure PowerShell a seguir no terminal. Esse snippet é o mesmo código usado anteriormente, porém o nome da implantação será alterado.
$templateFile="azuredeploy.json"
$today=Get-Date -Format "MM-dd-yyyy"
$deploymentName="addstorage-"+"$today"
New-AzResourceGroupDeployment `
-Name $deploymentName `
-TemplateFile $templateFile
Verifique sua implantação
Quando a implantação for concluída, volte para o portal do Azure no navegador. Acesse o grupo de recursos e verá que agora há Duas Implantações bem-sucedidas. Selecione esse link.
Observe que ambas as implantações estão na lista.
Selecione addstorage.
Observe que a conta de armazenamento foi implantada.