Criar um Ambiente do Serviço de Aplicativo usando um modelo do Azure Resource Manager

O Ambiente do Serviço de Aplicativo pode ser criado usando um modelo do Azure Resource Manager, permitindo que você faça uma implantação repetível.

Observação

Este artigo aborda o Ambiente do Serviço de Aplicativo v3, que é usado com Planos do Serviço de Aplicativo v2 isolado.

Visão geral

O Ambiente do Serviço de Aplicativo do Azure pode ser criado com um ponto de extremidade acessível pela Internet ou um ponto de extremidade em um endereço interno em uma Rede Virtual do Azure. Quando criado com um ponto de extremidade interno, esse ponto de extremidade é fornecido por um componente do Azure chamado ILB (balanceador de carga interno). O Ambiente do Serviço de Aplicativo em um endereço IP interno é chamado de um ASE ILB. O Ambiente do Serviço de Aplicativo com um ponto de extremidade público é chamado de um ASE externo.

Um ASE pode ser criado usando o portal do Azure ou um modelo do Azure Resource Manager. Este artigo explica as etapas e a sintaxe que você precisa para criar um ASE Externo ou um ASE ILB com modelos do Resource Manager. Saiba como criar um Ambiente do Serviço de Aplicativo no portal do Azure.

Ao criar um Ambiente do Serviço de Aplicativo no portal do Azure, você pode criar sua rede virtual ao mesmo tempo ou escolher uma rede virtual pré-existente na qual implantar.

Ao criar um Ambiente do Serviço de Aplicativo com base em um modelo, você precisa começar com:

  • Uma Rede Virtual do Azure.
  • Uma sub-rede nessa rede virtual. Recomendamos um tamanho de sub-rede de /24 com 256 endereços para acomodar necessidades futuras de crescimento e dimensionamento. Após o Ambiente do Serviço de Aplicativo ser criado, você não poderá alterar o tamanho.
  • O local no qual você deseja implantar.

Configurando o Ambiente do Serviço de Aplicativo

O modelo do Resource Manager básico que cria um Ambiente do Serviço de Aplicativo se parece com este:

{
    "type": "Microsoft.Web/hostingEnvironments",
    "apiVersion": "2022-03-01",
    "name": "[parameters('aseName')]",
    "location": "[resourceGroup().location]",
    "kind": "ASEV3",
    "properties": {
        "internalLoadBalancingMode": "Web, Publishing",
        "virtualNetwork": {
            "id": "[parameters('subnetResourceId')]"
        },
        "networkingConfiguration": { },
        "customDnsSuffixConfiguration": { }
    },
    "identity": {
        "type": "SystemAssigned"
    }
}

Além das propriedades principais, há outras opções de configuração que você pode usar para configurar o Ambiente do Serviço de Aplicativo.

  • nome: Obrigatórios. Esse parâmetro define um nome exclusivo do Ambiente do Serviço de Aplicativo. O nome não deve ter mais de 36 caracteres.
  • virtualNetwork -> id: obrigatório. Especifica a ID do recurso da sub-rede. A sub-rede precisa estar vazia e ser delegada para Microsoft.Web/hostingEnvironments
  • internalLoadBalancingMode: obrigatório. Na maioria dos casos, defina essa propriedade como "Web, Publishing", o que significa que o tráfego HTTP/HTTPS e o tráfego FTP estão em um VIP interno (balanceador de carga interno). Se essa propriedade for definida como "None", todo o tráfego permanecerá no VIP público (balanceador de carga externo).
  • zoneRedundant: opcional. Define com true/false se o Ambiente do Serviço de Aplicativo será implantado em AZs (Zonas de Disponibilidade). Confira Regiões e zonas de disponibilidade para obter mais informações.
  • dedicatedHostCount: opcional. Na maioria dos casos, defina essa propriedade como 0 ou deixe de fora. Você poderá defini-la como 2 se quiser implantar seu Ambiente do Serviço de Aplicativo com isolamento de hardware físico em hosts dedicados.
  • upgradePreference: opcional. Define se a atualização é iniciada automaticamente ou se uma janela de 15 dias para iniciar a implantação é fornecida. Os valores válidos são "None", "Early", "Late", "Manual". Mais informações sobre a preferência de atualização.
  • clusterSettings: opcional. Para obter mais informações, confira configurações de cluster.
  • networkingConfiguration -> allowNewPrivateEndpointConnections: opcional. Para obter mais informações, confira configuração de rede.
  • networkingConfiguration -> remoteDebugEnabled: opcional. Para obter mais informações, confira configuração de rede.
  • networkingConfiguration -> ftpEnabled: opcional. Para obter mais informações, confira configuração de rede.
  • networkingConfiguration -> inboundIpAddressOverride: opcional. Permite que você crie um Ambiente do Serviço de Aplicativo com seu endereço IP público do Azure (especifique a ID do recurso) ou defina um IP estático para implantações de ILB. Essa configuração não pode ser alterada após o Ambiente do Serviço de Aplicativo ser criado.
  • customDnsSuffixConfiguration: opcional. Permite que você especifique um sufixo de domínio personalizado para o Ambiente do Serviço de Aplicativo. Requer um certificado válido de um Key Vault e acesso usando uma Identidade Gerenciada. Para obter mais informações sobre parâmetros específicos, consulte configuração do sufixo de domínio personalizado.

Observação

As propriedades dnsSuffix, multiSize, frontEndScaleFactor, userWhitelistedIpRangese ipSslAddressCount não têm suporte ao criar o Ambiente do Serviço de Aplicativo v3.

Implantando o Ambiente do Serviço de Aplicativo

Depois de criar o modelo do ARM, por exemplo, chamado azuredeploy.json e, opcionalmente, um arquivo de parâmetros, por exemplo, chamado azuredeploy.parameters.json, você pode criar o Ambiente do Serviço de Aplicativo usando o snippet de código da CLI do Azure. Altere os caminhos do arquivo para corresponder aos locais do modelo Resource Manager no seu computador. Lembre-se de fornecer seu valor para o nome do grupo de recursos:

templatePath="PATH/azuredeploy.json"
parameterPath="PATH/azuredeploy.parameters.json"

az deployment group create --resource-group "YOUR-RG-NAME-HERE" --template-file $templatePath --parameters $parameterPath

A criação do Ambiente do Serviço de Aplicativo geralmente leva cerca de uma hora, mas se for um Ambiente do Serviço de Aplicativo com redundância de zona ou se estivermos enfrentando uma demanda inesperada em uma região, o processo de criação pode levar várias horas para ser concluído.

Próximas etapas