Tutorial: Utilizar o modelo exportado do portal do Azure

Nesta série de tutoriais, vai criar um modelo para implementar uma conta de armazenamento do Azure. Nos dois tutoriais seguintes, vai adicionar um plano de Serviço de Aplicações e um site. Em vez de criar modelos do zero, vai aprender a exportar modelos do portal do Azure e a utilizar modelos de exemplo a partir dos Modelos de Início Rápido do Azure. Pode personalizar esses modelos para utilização. Este tutorial centra-se na exportação de modelos e na personalização do resultado do modelo. Esta instrução demora 14 minutos a ser concluída.

Pré-requisitos

Recomendamos que conclua o tutorial sobre saídas, mas não é necessário.

Precisa de ter o Visual Studio Code com a extensão Resource Manager Tools e Azure PowerShell ou a Interface de Command-Line do Azure (CLI). Para obter mais informações, veja ferramentas de modelo.

Rever modelo

No final do tutorial anterior, o modelo tinha o seguinte ficheiro JSON:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storagePrefix": {
      "type": "string",
      "minLength": 3,
      "maxLength": 11
    },
    "storageSKU": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_RAGRS",
        "Standard_ZRS",
        "Premium_LRS",
        "Premium_ZRS",
        "Standard_GZRS",
        "Standard_RAGZRS"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    }
  },
  "variables": {
    "uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2021-09-01",
      "name": "[variables('uniqueStorageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    }
  ],
  "outputs": {
    "storageEndpoint": {
      "type": "object",
      "value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
    }
  }
}

Este modelo funciona bem para implementar contas de armazenamento, mas poderá querer adicionar mais recursos ao mesmo. Pode exportar um modelo de um recurso existente para obter rapidamente o JSON desse recurso.

Criar plano do App Service

  1. Inicie sessão no portal do Azure.

  2. Selecione Criar um recurso.

  3. Em Serviços de pesquisa e Marketplace, introduza Serviço de Aplicações Plano e, em seguida, selecione Serviço de Aplicações Plano.

  4. Selecione Criar.

  5. Na página Criar Serviço de Aplicações Plano, introduza o seguinte:

    • Subscrição: selecione a sua subscrição do Azure no menu pendente.
    • Grupo de Recursos: selecione Criar novo e, em seguida, especifique um nome. Forneça um nome de grupo de recursos diferente do que tem utilizado nesta série de tutoriais.
    • Nome: introduza um nome para o Plano de Serviço de Aplicações.
    • Sistema Operativo: selecione Linux.
    • Região: selecione uma localização do Azure no menu pendente, como E.U.A. Central.
    • Escalão de Preço: para poupar custos, selecione Alterar tamanho para alterar o SKU e o tamanho para primeiro Básico (B1), em Dev/Test para cargas de trabalho menos exigentes.

    Captura de ecrã a mostrar a página Criar Serviço de Aplicações Plano no portal do Azure.

  6. Selecione Rever e criar.

  7. Selecione Criar. A criação do recurso demora alguns momentos.

Exportar modelo

  1. Selecione Ir para recurso.

    Captura de ecrã a mostrar o botão Ir para recurso no portal do Azure.

  2. No menu esquerdo, em Automatização, selecione Exportar modelo.

    Captura de ecrã a mostrar a opção Exportar modelo no portal do Azure.

    A funcionalidade exportar modelo utiliza o estado atual de um recurso e gera um modelo para o implementar. Exportar um modelo pode ser uma forma útil de obter rapidamente o JSON de que precisa para implementar um recurso.

  3. Observe a Microsoft.Web/serverfarms definição e a definição do parâmetro no modelo exportado. Não precisa de copiar estas secções. Só pode utilizar este modelo exportado como um exemplo de como pretende adicionar este recurso ao seu modelo.

    Captura de ecrã a mostrar o código JSON do modelo exportado no portal do Azure.

Importante

Normalmente, o modelo exportado é mais verboso do que seria de querer ao criar um modelo. O objeto SKU, por exemplo, no modelo exportado tem cinco propriedades. Este modelo funciona, mas pode utilizar apenas a name propriedade . Pode começar com o modelo exportado e, em seguida, modificá-lo conforme pretender que se ajuste aos seus requisitos.

Rever modelo existente

O modelo exportado dá-lhe a maior parte do JSON de que precisa, mas tem de personalizá-lo para o seu modelo. Preste especial atenção às diferenças entre parâmetros e variáveis entre o modelo e o modelo exportado. Obviamente, o processo de exportação não conhece os parâmetros e variáveis que já definiu no seu modelo.

O exemplo seguinte realça as adições ao seu modelo. Contém o código exportado e algumas alterações. Primeiro, altera o nome do parâmetro para corresponder à convenção de nomenclatura. Em segundo lugar, utiliza o parâmetro de localização para a localização do plano do serviço de aplicações. Em terceiro lugar, remove algumas das propriedades em que o valor predefinido é bom.

Copie todo o ficheiro e substitua o modelo pelo respetivo conteúdo.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storagePrefix": {
      "type": "string",
      "minLength": 3,
      "maxLength": 11
    },
    "storageSKU": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_RAGRS",
        "Standard_ZRS",
        "Premium_LRS",
        "Premium_ZRS",
        "Standard_GZRS",
        "Standard_RAGZRS"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    },
    "appServicePlanName": {
      "type": "string",
      "defaultValue": "exampleplan"
    }
  },
  "variables": {
    "uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2021-09-01",
      "name": "[variables('uniqueStorageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    },
    {
      "type": "Microsoft.Web/serverfarms",
      "apiVersion": "2021-03-01",
      "name": "[parameters('appServicePlanName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "B1",
        "tier": "Basic",
        "size": "B1",
        "family": "B",
        "capacity": 1
      },
      "kind": "linux",
      "properties": {
        "perSiteScaling": false,
        "reserved": true,
        "targetWorkerCount": 0,
        "targetWorkerSizeId": 0
      }
    }
  ],
  "outputs": {
    "storageEndpoint": {
      "type": "object",
      "value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
    }
  }
}

Implementar o modelo

Utilize a CLI do Azure ou Azure PowerShell para implementar um modelo.

Se ainda não criou o grupo de recursos, veja Criar grupo de recursos. O exemplo pressupõe que definiu a templateFile variável para o caminho para o ficheiro de modelo, conforme mostrado no primeiro tutorial.

New-AzResourceGroupDeployment `
  -Name addappserviceplan `
  -ResourceGroupName myResourceGroup `
  -TemplateFile $templateFile `
  -storagePrefix "store" `
  -storageSKU Standard_LRS

Nota

Se a implementação falhar, utilize o verbose comutador para obter informações sobre os recursos que está a criar. Utilize o debug comutador para obter mais informações sobre a depuração.

Verificar a implementação

Pode verificar a implementação ao explorar o grupo de recursos a partir do portal do Azure.

  1. Inicie sessão no portal do Azure.
  2. No menu esquerdo, selecione Grupos de recursos.
  3. Selecione o grupo de recursos no qual implementou.
  4. O grupo de recursos contém uma conta de armazenamento e um Plano de Serviço de Aplicações.

Limpar os recursos

Se estiver a avançar para o próximo tutorial, não precisa de eliminar o grupo de recursos.

Se estiver a parar agora, poderá querer eliminar o grupo de recursos.

  1. Na portal do Azure, selecione Grupos de recursos no menu esquerdo.
  2. Escreva o nome do grupo de recursos no campo de texto Filtrar por qualquer campo...
  3. Selecione a caixa junto a myResourceGroup e selecione myResourceGroup ou o nome do grupo de recursos.
  4. Selecione Eliminar grupo de recursos no menu superior.

Passos seguintes

Aprendeu a exportar um modelo a partir do portal do Azure e a utilizar o modelo exportado para o desenvolvimento do modelo. Também pode utilizar os Modelos de Início Rápido do Azure para simplificar o desenvolvimento de modelos.