Usar um Ambiente do Serviço de Aplicativo

O Ambiente do Serviço de Aplicativo é uma implantação de locatário único do Serviço de Aplicativo do Azure. Você o usa com uma rede virtual do Azure, sendo o único usuário desse sistema. Os aplicativos implantados estão sujeitos aos recursos de rede que são aplicados à sub-rede. Não há recursos adicionais que precisem ser habilitados em seus aplicativos para se sujeitarem a esses recursos de rede.

Observação

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

Criar um aplicativo

Para criar um aplicativo em seu Ambiente do Serviço de Aplicativo, use o mesmo processo usado ao criar o aplicativo normalmente, mas com algumas pequenas diferenças. Quando você cria um novo plano do Serviço de Aplicativos:

  • Em vez de escolher uma localização geográfica na qual implantar o aplicativo, escolha um Ambiente do Serviço de Aplicativo como sua localização.
  • Todos os Planos do Serviço de Aplicativo criados em um Ambiente do Serviço de Aplicativo só podem estar em um tipo de preço v2 isolado.

Caso ainda não tenha um, crie um Ambiente do Serviço de Aplicativo.

Para criar um aplicativo em um Ambiente do Serviço de Aplicativo:

  1. Selecione Criar um recurso>Web + Mobile>Aplicativo da Web.
  2. Selecione uma assinatura.
  3. Insira um nome para um novo grupo de recursos ou selecione Usar existente e escolha um na lista suspensa.
  4. Insira um nome do aplicativo. Caso já tenha selecionado um Plano do Serviço de Aplicativo em um Ambiente do Serviço de Aplicativo, o nome de domínio do aplicativo refletirá o nome de domínio do Ambiente do Serviço de Aplicativo.
  5. Para Publicação, Pilha de runtime e Sistema operacional, faça suas seleções conforme apropriado.
  6. Para Região, selecione um Ambiente do Serviço de Aplicativo v3 pré-existente. Se você quiser criar um novo Ambiente do Serviço de Aplicativo, selecione uma região. Screenshot that shows how to create an app in an App Service Environment.
  7. Selecione um Plano de Serviço de Aplicativo ou crie um. Caso esteja criando um novo plano, selecione o tamanho desejado para o Plano do Serviço de Aplicativo. A única SKU que você pode selecionar para seu aplicativo é um SKU de preço Isolado v2. Criar um novo Plano do Serviço de Aplicativo normalmente leva menos de 20 minutos. Screenshot that shows pricing tiers and their features and hardware.
  8. Se você optar por criar um novo Ambiente do Serviço de Aplicativo como parte da criação do novo plano do Serviço de Aplicativo, preencha o nome e o tipo de IP virtual.
  9. Selecione Avançar: Monitoramento. Caso deseje habilitar o Application Insights no seu aplicativo, isso pode ser feito aqui durante o fluxo de criação.
  10. Selecione Avançar: marcações e adicione as marcas desejadas ao aplicativo.
  11. Selecione Examinar + criar. Garanta que as informações estejam corretas e selecione Criar.

Os aplicativos Windows e Linux podem estar no mesmo Ambiente do Serviço de Aplicativo, mas não podem estar no mesmo Plano do Serviço de Aplicativo.

Como funciona a escala

Cada aplicativo do Serviço de Aplicativo é executado em um plano do Serviço de Aplicativo. Os Ambientes do Serviço de Aplicativo contêm os planos do Serviço de Aplicativo; que por sua vez contêm os aplicativos. Ao dimensionar um aplicativo, você também dimensionará o Plano do Serviço de Aplicativo e todos os aplicativos nesse mesmo plano.

Quando você dimensiona um Plano do Serviço de Aplicativo, a infraestrutura necessária é adicionada automaticamente. Tenha em mente que haverá um atraso de tempo nas operações de escala conforme a infraestrutura é adicionada. Por exemplo, quando for dimensionar um Plano do Serviço de Aplicativo e houver outra operação de escala com mesmo sistema operacional e tamanho em execução, pode gerar um atraso de alguns minutos para iniciar a escala solicitada.

Uma operação de escala em um tamanho e em um sistema operacional não afetará a escala das outras combinações de tamanho e sistema operacional. Por exemplo, caso esteja dimensionando um Plano do Serviço de Aplicativo do Windows I2v2, uma operação de escala para um Plano do Serviço de Aplicativo do Windows I3v2 será iniciada imediatamente. Geralmente, a colocação em escala leva menos de 15 minutos.

Em um Serviço de Aplicativo multilocatário, a colocação em escala é imediata porque um pool de recursos compartilhados está imediatamente disponível para dar suporte. O Ambiente do Serviço de Aplicativo é um serviço de locatário único, portanto, não há um buffer compartilhado, e os recursos são alocados com base na necessidade.

Acesso ao aplicativo

Em um Ambiente do Serviço de Aplicativo com um VIP (IP virtual), o sufixo de domínio usado para a criação do aplicativo é .<asename>.appserviceenvironment.net. Se o Ambiente do Serviço de Aplicativo for chamado my-ase e você hospedar um aplicativo chamado contoso, você o acessa nas seguintes URLs:

  • contoso.my-ase.appserviceenvironment.net
  • contoso.scm.my-ase.appserviceenvironment.net

Os aplicativos hospedados em um Ambiente do Serviço de Aplicativo que usa um VIP interno só estarão acessíveis se você estiver na mesma rede virtual ou conectado a essa rede virtual. De modo semelhante, a publicação só será possível se você estiver na mesma rede virtual ou se estiver conectado a essa rede virtual.

Em um Ambiente do Serviço de Aplicativo com um VIP externo, o sufixo do domínio usado para a criação do aplicativo é .<asename>.p.azurewebsites.net. Se o Ambiente do Serviço de Aplicativo for chamado my-ase e você hospedar um aplicativo chamado contoso, você o acessa nas seguintes URLs:

  • contoso.my-ase.p.azurewebsites.net
  • contoso.scm.my-ase.p.azurewebsites.net

A URL scm é usada para acessar o console do Kudu ou para publicar seu aplicativo usando a implantação da Web. Para obter mais informações, confira Console do Kudu para o Serviço de Aplicativo do Azure. O console do Kudu fornece uma interface do usuário da Web para depuração, upload de arquivos e edição de arquivos.

Configuração de DNS

Se seu Ambiente do Serviço de Aplicativo for feito com um VIP externo, os aplicativos serão colocados automaticamente no DNS público. Se seu Ambiente do Serviço de Aplicativo for feito com um VIP interno, talvez seja necessário configurar o DNS para ele.

Se optou por ter zonas privadas do DNS do Azure configuradas automaticamente, o DNS será configurado na rede virtual do Ambiente do Serviço de Aplicativo. Caso tenha selecionado para configurar o DNS manualmente, você precisará usar seu próprio servidor DNS ou configurar zonas privadas do DNS do Azure.

Para encontrar o endereço de entrada, selecione Endereços IP no portal do Ambiente do Serviço de Aplicativo.

Screenshot that shows how to find the inbound address.

Se quiser usar seu próprio servidor DNS, adicione os registros a seguir:

  1. Crie uma zona para <App Service Environment-name>.appserviceenvironment.net.
  2. Crie um registro A na zona indicada com * para o endereço IP de entrada usado pelo Ambiente do Serviço de Aplicativo.
  3. Crie um registro A na zona indicada com @ para o endereço IP de entrada usado pelo Ambiente do Serviço de Aplicativo.
  4. Crie uma zona em <App Service Environment-name>.appserviceenvironment.net chamada scm.
  5. Crie um registro A na zona scm indicada com * para o endereço de entrada usado pelo Ambiente do Serviço de Aplicativo.

Para configurar o DNS em zonas privadas do DNS do Azure:

  1. Crie uma zona privada de DNS do Azure chamada <App Service Environment-name>.appserviceenvironment.net.
  2. Crie um registro A na zona indicada com * para o endereço IP de entrada.
  3. Crie um registro A na zona indicada com @ para o endereço IP de entrada.
  4. Crie um registro A nessa zona indicada com *.scm para o endereço IP de entrada.

As configurações de DNS para o sufixo de domínio padrão do seu Ambiente do Serviço de Aplicativo não restringem os aplicativos a serem acessíveis apenas por esses nomes. É possível definir um nome de domínio personalizado sem nenhuma validação em seus aplicativos em um Ambiente do Serviço de Aplicativo. Caso queira criar uma zona chamada contoso.net, você poderá fazer isso e apontá-la para o endereço IP de entrada. O nome de domínio personalizado funciona para solicitações de aplicativo e, se o certificado de sufixo de domínio personalizado incluir um SAN curinga para scm, o nome de domínio personalizado também funcionará para o site scm e você poderá criar um registro *.scm e apontá-lo para o endereço IP de entrada.

Publicando

É possível publicar usando qualquer um dos seguintes métodos:

  • Implantação da Web
  • CI (Integração contínua)
  • Arrastar e soltar no console do Kudu
  • Um IDE (ambiente de desenvolvimento integrado), como o Visual Studio, Eclipse ou IntelliJ IDEA

Com um Ambiente do Serviço de Aplicativo de VIP interno, os pontos de extremidade de publicação só estão disponíveis por meio do endereço de entrada. Caso não tenha acesso à rede para o endereço de entrada, não poderá publicar nenhum aplicativo nesse Ambiente do Serviço de Aplicativo. Os IDEs também precisam ter acesso à rede para o endereço de entrada no Ambiente do Serviço de Aplicativo para publicar diretamente nele.

Sem alterações adicionais, os sistemas de CI baseados na internet, como GitHub e Azure DevOps, não funcionam com um Ambiente do Serviço de Aplicativo VIP interno. O ponto de extremidade de publicação não pode ser acessado pela Internet. É possível habilitar a publicação em um Ambiente do Serviço de Aplicativo de VIP interno do Azure DevOps instalando um agente de liberação auto-hospedado na rede virtual.

Armazenamento

Você tem 1 TB de armazenamento para todos os aplicativos em seu Ambiente do Serviço de Aplicativo. Um Plano do Serviço de Aplicativo na SKU de preço isolado tem um limite de 250 GB. Em um Ambiente do Serviço de Aplicativo, são adicionados 250 GB de armazenamento por Plano do Serviço de Aplicativo até o limite de 1 TB. Você pode ter mais do que quatro Planos do Serviço de Aplicativo, mas não é feito nenhum armazenamento além do limite de 1 TB.

Monitoramento

A infraestrutura de plataforma no Ambiente do Serviço de Aplicativo v3 está sendo monitorada e gerenciada pela Microsoft e é dimensionada conforme necessário. Como cliente, você deve apenas monitorar os planos do Serviço de Aplicativo e os aplicativos individuais em execução e executar as ações apropriadas. Você verá algumas métricas visíveis para sua Ambiente do Serviço de Aplicativo, mas elas são usadas apenas para versões mais antigas e não omitirão nenhum valor para essa versão. Se você estiver usando a v1 ou a v2 do Ambiente do Serviço de Aplicativo, consulte esta seção para obter orientação sobre monitoramento e escala.

Registro em log

É possível integrar com o Azure Monitor para enviar logs para o Armazenamento do Azure, Hubs de Eventos do Azure ou Logs do Azure Monitor. A tabela a seguir mostra as situações e mensagens que você pode registrar:

Situação Mensagem
A sub-rede do Ambiente do Serviço de Aplicativo está quase sem espaço. O Ambiente do Serviço de Aplicativo especificado está em uma sub-rede que está quase sem espaço. Há {0} endereços restantes. Depois que esses endereços forem esgotados, o Ambiente do Serviço de Aplicativo não poderá ser dimensionado.
O Ambiente do Serviço de Aplicativo está se aproximando do limite total de instâncias. O Ambiente do Serviço de Aplicativo especificado está se aproximando do limite total de instâncias do Ambiente do Serviço de Aplicativo. Atualmente, ele contém instâncias do Plano do Serviço de Aplicativo {0} de um máximo de 200 instâncias.
O Ambiente do Serviço de Aplicativo está suspenso. O Ambiente do Serviço de Aplicativo especificado está suspenso. A suspensão do Ambiente do Serviço de Aplicativo pode ocorrer devido a uma deficiência de conta ou uma configuração inválida da rede virtual. Resolva a causa raiz e retome o Ambiente do Serviço de Aplicativo para continuar atendendo ao tráfego.
A atualização do Ambiente do Serviço de Aplicativo foi iniciada. Uma atualização de plataforma do Ambiente do Serviço de Aplicativo foi iniciada. Atrasos nas operações de dimensionamento são esperados.
A atualização do Ambiente do Serviço de Aplicativo foi concluída. A atualização de plataforma do Ambiente do Serviço de Aplicativo foi concluída.
A criação do Plano do Serviço de Aplicativo foi iniciada. Uma criação do Plano do Serviço de Aplicativo ({0}) foi iniciada. Estado desejado: função de trabalho {1} I{2}v2.
As operações de escala foram concluídas. Uma criação do Plano do Serviço de Aplicativo ({0}) foi concluída. Estado atual: função de trabalho {1} I{2}v2.
As operações de escala falharam. Uma criação do Plano do Serviço de Aplicativo ({0}) falhou. Isso pode ocorrer devido à operação do Ambiente do Serviço de Aplicativo no número máximo de instâncias ou ao esgotamento de endereços de sub-rede.
Operações de escala foram iniciadas. Um Plano do Serviço de Aplicativo ({0}) começou a ser colocado em escala. Estado atual: {1} I(2)v2. Estado desejado: função de trabalho {3} I{4}v2.
As operações de escala foram concluídas. Um Plano do Serviço de Aplicativo ({0}) terminou de ser colocado em escala. Estado atual: função de trabalho {1} I{2}v2.
As operações de escala foram interrompidas. Um plano do Serviço de Aplicativo ({0}) foi interrompido durante a escala. Estado anterior desejado: função de trabalho {1} I{2}v2. Estado novo desejado: função de trabalho {3} I{4}v2.
As operações de escala falharam. Um Plano do Serviço de Aplicativo ({0}) falhou ao ser escalado. Estado atual: função de trabalho {1} I{2}v2.

Para habilitar o registro em log, siga estas etapas:

  1. No portal, acesse Configurações de diagnóstico.
  2. Selecione Adicionar configuração de diagnóstico.
  3. Forneça um nome para a integração de log.
  4. Selecione e configure os destinos de log desejados.
  5. Selecione AppServiceEnvironmentPlatformLogs. Screenshot that shows how to enable logging.

Se você se integrar ao Logs do Azure Monitor, poderá ver os logs selecionando Logs no portal do Ambiente do Serviço de Aplicativo e criando uma consulta em AppServiceEnvironmentPlatformLogs. Os logs só são emitidos quando o Ambiente do Serviço de Aplicativo tem um evento que dispara os logs. Se o Ambiente do Serviço de Aplicativo não tiver um evento desses, não haverá nenhum log. Para ver um exemplo de logs rapidamente, execute uma operação de escala com um Plano do Serviço de Aplicativo. Em seguida, você pode fazer uma consulta em AppServiceEnvironmentPlatformLogs para ver esses logs.

Criar um alerta

Para criar um alerta sobre seus logs, siga as instruções fornecidas em Criar, exibir e gerenciar alertas de log usando o Azure Monitor. Em resumo:

  1. Abra a página Alertas no portal do Ambiente do Serviço de Aplicativo.
  2. Selecione Nova regra de alerta.
  3. Em Recurso, selecione o workspace dos Logs do Azure Monitor.
  4. Defina sua condição com uma pesquisa de log personalizada para usar uma consulta. Por exemplo, você pode definir o seguinte: AppServiceEnvironmentPlatformLogs | em que ResultDescription contém iniciou a colocação em escala. Defina o limite conforme apropriado.
  5. Adicionar ou criar um grupo de ações (opcional). O grupo de ações é onde você define a resposta para o alerta, como enviar um email ou uma mensagem de SMS.
  6. Nomeie o alerta e salve-o.

Criptografia interna

Não é possível ver os componentes internos ou a comunicação dentro do sistema do Ambiente do Serviço de Aplicativo. Para habilitar uma taxa de transferência mais alta, a criptografia não está habilitada por padrão entre os componentes internos. O sistema é seguro porque o tráfego não pode ser monitorado nem acessado. Caso não tenha um requisito de conformidade para a criptografia completa do caminho de dados, você poderá habilitar isso. Abra a Configuração, conforme mostrado na captura de tela a seguir.

Screenshot that shows how to enable internal encryption.

Essa opção criptografa o tráfego de rede interno e também o arquivo de página e os discos de trabalho. Tenha em mente que essa opção pode afetar o desempenho do sistema. Seu Ambiente do Serviço de Aplicativo estará em um estado instável até que a alteração seja totalmente propagada. A propagação completa da alteração pode levar algumas horas para ser concluída, dependendo de quantas instâncias você tem.

Evite habilitar essa opção enquanto estiver usando o Ambiente do Serviço de Aplicativo. Caso precise fazer isso, tente desviar o tráfego para um backup até que a operação seja concluída.

Preferência de atualização

Caso tenha vários Ambiente do Serviço de Aplicativo, talvez prefira que alguns deles sejam atualizados antes de outros. É possível habilitar esse comportamento por meio do portal do Ambiente do Serviço de Aplicativo. Em Configuração, você tem a opção de definir Atualizar preferência. Os valores possíveis são:

  • Nenhum:o Azure é atualizado em um lote não específico. Esse valor é o padrão.
  • Antecipado: atualize na primeira metade das atualizações do Serviço de Aplicativo.
  • Tardio: atualize na segunda metade das atualizações do Serviço de Aplicativo.
  • Manual: obtenha uma janela de 15 dias para implantar a atualização manualmente.

Selecione o valor que você deseja, depois selecione Salvar.

Screenshot that shows the App Service Environment configuration portal.

Esse recurso faz mais sentido quando há vários Ambientes do Serviço de Aplicativo e você pode se beneficiar do sequenciamento das atualizações. Por exemplo, você pode definir o desenvolvimento e o teste dos Ambientes do Serviço de Aplicativo como antecipados e os Ambientes do Serviço de Aplicativo de produção como atrasados.

Excluir ambiente do Serviço de Aplicativo

Para excluir:

  1. Na parte superior do painel Ambiente do Serviço de Aplicativo, selecione Excluir.
  2. Insira o nome do Ambiente do Serviço de Aplicativo para confirmar que deseja excluí-lo. Ao excluir um Ambiente do Serviço de Aplicativo, você também exclui todo o conteúdo presente nele. Screenshot that shows how to delete.
  3. Selecione OK.