Exercício – Definir recursos em um modelo Bicep

Concluído

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.

Para seu site de lançamento de brinquedos, você decide primeiro criar uma prova de conceito elaborando um modelo Bicep básico. Neste exercício, você criará uma conta de armazenamento, um Plano do Serviço de Aplicativo do Azure e um aplicativo. Posteriormente, modificará o modelo para torná-lo mais reutilizável.

Durante o processo, você vai:

  • Criar um modelo que define um único recurso de conta de armazenamento que inclui valores embutidos em código.
  • Provisionar sua infraestrutura e verificar o resultado.
  • Adicionar um Plano do Serviço de Aplicativo e um aplicativo ao modelo.
  • Provisionar a infraestrutura novamente para ver os novos recursos.

Este exercício usa a extensão Bicep para Visual Studio Code. É necessário que você instale essa extensão no Visual Studio Code.

Criar um modelo Bicep que contém uma conta de armazenamento

  1. Abra o Visual Studio Code.

  2. Crie um arquivo chamado main.bicep.

  3. Salve o arquivo vazio para que Visual Studio Code carregue as ferramentas Bicep.

    Você pode selecionar Arquivo>Salvar Como ou Ctrl+S no Windows (⌘+S no macOS). Lembre-se de onde você salvou o arquivo. Por exemplo, você pode criar uma pasta de modelos para salvar o arquivo.

  4. Adicione o código do Bicep a seguir ao arquivo. Você implantará o modelo em breve. É uma boa ideia digitar o código por conta própria em vez de copiar e colar, para que você possa ver como o conjunto de ferramentas ajuda a escrever arquivos Bicep.

    resource storageAccount 'Microsoft.Storage/storageAccounts@2023-05-01' = {
      name: 'toylaunchstorage'
      location: 'eastus'
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
      properties: {
        accessTier: 'Hot'
      }
    }
    

    Dica

    O Bicep tem restrições em relação a onde você coloca quebras de linha, portanto, não as coloque em lugares diferentes dos listados aqui.

    Observe que o Visual Studio Code sugere automaticamente os nomes das propriedades conforme você digita. A extensão Bicep para Visual Studio Code entende os recursos que você está definindo em seu modelo e lista as propriedades e os valores disponíveis que você pode usar.

  5. Atualize o nome da conta de armazenamento de toylaunchstorage para algo que provavelmente será exclusivo, pois cada conta de armazenamento precisa de um nome exclusivo. Verifique se o nome tem de 3 a 24 caracteres e inclui apenas letras minúsculas e números.

    Importante

    Não ignore esta etapa. Se você fizer isso, o arquivo Bicep não será implantado com êxito.

  6. Salve as alterações no arquivo.

Implantar o modelo Bicep 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 a CLI do Azure instalada e lembre-se de entrar com a mesma conta que usou para ativar a área restrita.

  1. No menu Terminal, selecione Novo Terminal. A janela do terminal geralmente é aberta na metade inferior da tela.

  2. Se o shell mostrado no lado direito da janela do terminal for o bash, o shell correto será aberto e você poderá passar para a próxima seção.

    Captura de tela da janela do terminal do Visual Studio Code com a opção bash mostrada.

  3. Se um shell diferente de bash for exibido, selecione a seta suspensa do shell e selecione Azure Cloud Shell (Bash).

    Captura de tela da janela do terminal do Visual Studio Code, com o menu suspenso do shell do terminal mostrado e o Padrão Git Bash selecionado.

  4. Na lista de shells de terminal, selecione bash.

    Captura de tela da janela do terminal do Visual Studio Code com o terminal do bash selecionado.

  5. No terminal, vá até o diretório no qual você salvou o modelo. Por exemplo, se você salvou o modelo na pasta modelos, use este comando:

    cd templates
    

Instalar o Bicep

Veja se você tem a versão mais recente do Bicep executando o seguinte comando:

az bicep install && az bicep upgrade

Entrar no Azure

  1. No terminal do Visual Studio Code, entre no Azure executando o seguinte comando:

    az login
    
  2. No navegador que é aberto, entre em sua conta do Azure.

    O terminal do Visual Studio Code exibe uma lista das assinaturas associadas a essa conta.

  3. Defina a assinatura padrão para todos os comandos da CLI do Azure que você executar nesta sessão.

    az account set --subscription "Concierge Subscription"
    

    Observação

    Se você usou mais de uma área restrita recentemente, o terminal poderá exibir mais de uma instância da Assinatura do Concierge. Nesse caso, use as duas próximas etapas para definir uma delas como a assinatura padrão. Se o comando anterior tiver sido bem-sucedido e apenas uma Assinatura do Concierge estiver listada, ignore as duas próximas etapas.

  4. Obtenha as IDs da Assinatura do Concierge.

     az account list \
       --refresh \
       --query "[?contains(name, 'Concierge Subscription')].id" \
       --output table
    
  5. Defina a assinatura padrão usando a ID da assinatura. Substitua {sua ID da assinatura} pela ID da Assinatura de Concierge mais recente.

    az account set --subscription {your subscription ID}
    

Definir o grupo de recursos padrão

Ao usar a CLI do Azure, você pode definir o grupo de recursos padrão e omitir o parâmetro do restante dos comandos da CLI do Azure neste exercício. Defina como padrão o grupo de recursos criado para você no ambiente de área restrita.

az configure --defaults group="<rgn>[sandbox resource group name]</rgn>"

Implantar o modelo no Azure

Execute o comando a seguir no terminal do Visual Studio Code para implantar o modelo do Bicep no Azure. Esse comando pode levar um minuto ou dois para ser concluído e você verá uma implantação bem-sucedida. Se aparecer um aviso indicando que a localização está embutida em código, ignore-o. Você corrigirá isso mais tarde neste módulo. É seguro continuar e a implantação terá êxito.

az deployment group create --template-file main.bicep

Você verá Running... no terminal.

Para implantar esse modelo no Azure, entre na sua conta do Azure por meio do terminal do Visual Studio Code. Verifique se você instalou o Azure PowerShell e entre na mesma conta que ativou a área restrita.

  1. No menu Terminal, selecione Novo Terminal. A janela do terminal geralmente é aberta na metade inferior da tela.

  2. Se o shell mostrado no lado direito da janela do terminal for o powershell ou o pwsh, o shell correto será aberto e você poderá passar para a próxima seção.

    Captura de tela da janela do terminal do Visual Studio Code, com a opção pwsh exibida na lista suspensa do shell.

  3. Se aparecer um shell diferente do powershell ou pwsh, selecione a seta da lista de seleção do shell e escolha PowerShell.

    Captura de tela da janela do terminal do Visual Studio Code, com a lista suspensa do shell do terminal exibida e o PowerShell selecionado.

  4. Na lista de shells de terminal, selecione powershell ou pwsh.

    Captura de tela da janela do terminal do Visual Studio Code com o terminal do PowerShell selecionado.

  5. No terminal, vá até o diretório no qual você salvou o modelo. Por exemplo, se você salvou o modelo na pasta modelos, use este comando:

    Set-Location -Path templates
    

Instalar a CLI do Bicep

Para usar o Bicep no Azure PowerShell, instale a CLI do Bicep.

Entrar no Azure usando o Azure PowerShell

  1. No terminal do Visual Studio Code, execute o seguinte comando:

    Connect-AzAccount
    

    Um navegador será aberto para que seja possível entrar na sua conta do Azure.

  2. Após entrar no Azure, o terminal exibirá uma lista das assinaturas associadas a essa conta.

    Se você ativou a área restrita, será exibida uma assinatura chamada Assinatura do Concierge. Use-a no restante do exercício.

  3. Defina a assinatura padrão para todos os comandos do Azure PowerShell que você executar nesta sessão.

    $context = Get-AzSubscription -SubscriptionName 'Concierge Subscription'
    Set-AzContext $context
    

    Observação

    Se você usou mais de uma área restrita recentemente, o terminal poderá exibir mais de uma instância da Assinatura do Concierge. Nesse caso, use as duas próximas etapas para definir uma delas como a assinatura padrão. Se o comando anterior tiver sido bem-sucedido e apenas uma Assinatura do Concierge estiver listada, ignore as duas próximas etapas.

  4. Obtenha a ID da assinatura. Executar o comando a seguir lista as suas assinaturas e as respectivas IDs. Procure Concierge Subscription e copie a ID da segunda coluna. É algo semelhante a cf49fbbc-217c-4eb6-9eb5-a6a6c68295a0.

    Get-AzSubscription
    
  5. Altere a sua assinatura ativa para Assinatura de Concierge. Lembre-se de substituir {Sua ID da assinatura} por aquela que você copiou.

    $context = Get-AzSubscription -SubscriptionId {Your subscription ID}
    Set-AzContext $context
    

Definir o grupo de recursos padrão

Você pode definir o grupo de recursos padrão e omitir o parâmetro do restante dos comandos do Azure PowerShell neste exercício. Defina esse padrão como o grupo de recursos criado para você no ambiente de área restrita.

Set-AzDefault -ResourceGroupName <rgn>[sandbox resource group name]</rgn>

Implantar o modelo no Azure

Implante o modelo no Azure usando o comando do Azure PowerShell a seguir no terminal. Esse comando pode levar um minuto ou dois para ser concluído e você verá uma implantação bem-sucedida. Se aparecer um aviso indicando que a localização está embutida em código, ignore-o. Você corrigirá isso mais tarde neste módulo. É seguro continuar e a implantação terá êxito.

New-AzResourceGroupDeployment -TemplateFile main.bicep

Verificar a implantação

Na primeira vez que você implantar um modelo Bicep, convém usar o portal do Azure para verificar se a implantação foi concluída com êxito e inspecionar os resultados.

  1. Vá para o portal do Azure e verifique se você está na assinatura da área restrita:

    1. Selecione seu avatar no canto superior direito da página.
    2. Selecione Mudar diretório. Na lista, escolha o diretório Área restrita do Microsoft Learn.
  2. No painel do lado esquerdo, selecione Grupos de recursos.

  3. Selecione [nome do grupo de recursos de área restrita].

  4. Na Visão Geral, você pode ver que a implantação foi bem-sucedida. Talvez seja necessário expandir a área Essentials para ver a implantação.

    Captura de tela da interface do portal do Azure para a visão geral do grupo de recursos com a seção de implantações mostrando uma implantação bem-sucedida.

  5. Selecione 1 Êxito para ver os detalhes da implantação.

    Captura de tela da interface do portal do Azure para as implantações com a implantação em questão listada e um status de êxito.

  6. Selecione a implantação chamada principal para ver quais recursos foram implantados e selecione Detalhes da implantação para expandi-la. Nesse caso, há uma conta de armazenamento com o nome que você especificou.

    Captura de tela da interface do portal do Azure para a implantação específica, com um recurso de conta de armazenamento listado.

  7. Deixe a página aberta no navegador. Você verificará as implantações novamente mais tarde.

Você também pode verificar a implantação na linha de comando. Para fazer isso, execute o seguinte comando da CLI do Azure:

az deployment group list --output table

Você também pode verificar a implantação na linha de comando. Para fazer isso, execute o seguinte comando do Azure PowerShell:

Get-AzResourceGroupDeployment -ResourceGroupName <rgn>[sandbox resource group name]</rgn> | Format-Table

Adicionar um Plano do Serviço de Aplicativo e um aplicativo ao modelo Bicep

Na tarefa anterior, você aprendeu como criar um modelo que contém um único recurso e implementá-lo. Agora você está pronto para implantar mais recursos, incluindo uma dependência. Nesta tarefa, você adicionará um Plano do Serviço de Aplicativo e um aplicativo ao modelo Bicep.

  1. No arquivo main.bicep no Visual Studio Code, adicione o seguinte código ao final do arquivo:

    resource appServicePlan 'Microsoft.Web/serverfarms@2023-12-01' = {
      name: 'toy-product-launch-plan-starter'
      location: 'eastus'
      sku: {
        name: 'F1'
      }
    }
    
    resource appServiceApp 'Microsoft.Web/sites@2023-12-01' = {
      name: 'toy-product-launch-1'
      location: 'eastus'
      properties: {
        serverFarmId: appServicePlan.id
        httpsOnly: true
      }
    }
    
  2. Atualize o nome do aplicativo do Serviço de Aplicativo de toy-product-launch-1 para algo que provavelmente seja exclusivo. Verifique se o nome tem de 2 a 60 caracteres com letras maiúsculas e minúsculas, números e hifens e não inicia ou termina com um hífen.

  3. Salve as alterações no arquivo.

Implantar o modelo Bicep atualizado

Execute o comando da CLI do Azure a seguir no terminal. Você pode ignorar os avisos sobre o local embutido em código. Você corrigirá o local em breve.

az deployment group create --template-file main.bicep

Execute o comando do Azure PowerShell a seguir no terminal. Você pode ignorar as mensagens de aviso sobre o local embutido em código. Você corrigirá o local em breve.

New-AzResourceGroupDeployment -TemplateFile main.bicep

Verifique sua implantação

  1. Retorne ao portal do Azure e acesse seu grupo de recursos. Você ainda verá uma implantação bem-sucedida, porque a implantação usou o mesmo nome da primeira implantação.

  2. Selecione o link 1 com êxito.

  3. Selecione a implantação chamada principal e escolha Detalhes da implantação para expandir a lista de recursos implantados.

    Captura de tela que mostra a interface do portal do Azure para a implantação específica, com a conta de armazenamento e os recursos do Serviço de Aplicativo listados.

  4. Observe que o aplicativo e o Plano do Serviço de Aplicativo foram implantados.