Revisão do Azure Well-Architected Framework - Azure Application Gateway v2

Este artigo fornece práticas recomendadas de arquitetura para a família de SKUs do Azure Application Gateway v2. A orientação baseia-se nos cinco pilares da excelência arquitetónica:

Supomos que você tenha um conhecimento prático do Gateway de Aplicativo do Azure e conheça bem os recursos de SKU v2. Para obter mais informações, consulte Recursos do Gateway de Aplicativo do Azure.

Pré-requisitos

Fiabilidade

Na nuvem, reconhecemos que falhas acontecem. Em vez de tentar evitar simplesmente as falhas, o objetivo é minimizar os efeitos da falha de um único componente. Use as informações a seguir para minimizar instâncias com falha.

Lista de verificação de estruturação

Ao fazer escolhas de design para o Application Gateway, revise os princípios de design de confiabilidade.

  • Implante as instâncias em uma configuração com reconhecimento de zona, quando disponível.
  • Use o Application Gateway com Web Application Firewall (WAF) em uma rede virtual para proteger o tráfego de entrada HTTP/S da Internet.
  • Em novas implantações, use o Gateway de Aplicativo do Azure v2, a menos que haja um motivo convincente para usar o Gateway de Aplicativo do Azure v1.
  • Planejar atualizações de regras
  • Usar testes de integridade para detetar indisponibilidade de back-end
  • Revisar o impacto das configurações de intervalo e limite nas sondas de integridade
  • Verificar dependências downstream por meio de pontos de extremidade de integridade

Recomendações

Explore a tabela de recomendações a seguir para otimizar a configuração do Application Gateway para confiabilidade.

Recomendação Benefício
Planejar atualizações de regras Planeje tempo suficiente para atualizações antes de acessar o Application Gateway ou fazer mais alterações. Por exemplo, remover servidores do pool de back-end pode levar algum tempo porque eles precisam drenar as conexões existentes.
Usar testes de integridade para detetar indisponibilidade de back-end Se o Application Gateway for usado para balancear a carga do tráfego de entrada em várias instâncias de back-end, recomendamos o uso de testes de integridade. Isso garantirá que o tráfego não seja roteado para back-ends que não são capazes de lidar com o tráfego.
Revisar o impacto das configurações de intervalo e limite nas sondas de integridade O teste de integridade envia solicitações para o ponto de extremidade configurado em um intervalo definido. Além disso, há um limite de solicitações com falha que será tolerado antes que o back-end seja marcado como não íntegro. Estes números apresentam um trade-off.

- Definir um intervalo maior coloca uma carga maior no seu serviço. Cada instância do Application Gateway envia suas próprias sondas de integridade, portanto, 100 instâncias a cada 30 segundos significam 100 solicitações a cada 30 segundos.
- Definir um intervalo mais baixo deixa mais tempo antes que uma interrupção seja detetada.
- Definir um limite baixo de insalubridade pode significar que falhas curtas e transitórias podem derrubar um back-end.
- Definir um limite alto pode levar mais tempo para tirar um backend da rotação.
Verificar dependências downstream por meio de pontos de extremidade de integridade Suponha que cada back-end tenha suas próprias dependências para garantir que as falhas sejam isoladas. Por exemplo, um aplicativo hospedado atrás do Application Gateway pode ter vários back-ends, cada um conectado a um banco de dados diferente (réplica). Quando essa dependência falha, o aplicativo pode estar funcionando, mas não retorna resultados válidos. Por esse motivo, o endpoint de integridade deve, idealmente, validar todas as dependências. Lembre-se de que, se cada chamada para o ponto de extremidade de integridade tiver uma chamada de dependência direta, esse banco de dados receberá 100 consultas a cada 30 segundos, em vez de 1. Para evitar isso, o ponto de extremidade de integridade deve armazenar em cache o estado das dependências por um curto período de tempo.
Ao usar o Azure Front Door e o Application Gateway para proteger HTTP/S aplicativos, use políticas WAF no Front Door e bloqueie o Application Gateway para receber tráfego somente do Azure Front Door. Determinados cenários podem forçá-lo a implementar regras especificamente no Application Gateway. Por exemplo, se forem necessárias regras ModSec CRS 2.2.9, CRS 3.0 ou CRS 3.1, estas regras só podem ser implementadas no Application Gateway. Por outro lado, a limitação de taxa e a filtragem geográfica estão disponíveis apenas no Azure Front Door, não no AppGateway.

O Azure Advisor ajuda-o a garantir e melhorar a continuidade das suas aplicações críticas para os negócios. Analise as recomendações do Azure Advisor.

Segurança

A segurança é um dos aspetos mais importantes de qualquer arquitetura. O Application Gateway fornece recursos para empregar o princípio do menor privilégio e a defesa em defesa. Recomendamos que você revise os princípios de design de segurança.

Lista de verificação de estruturação

  • Configurar uma política TLS para segurança aprimorada
  • Usar o AppGateway para terminação TLS
  • Usar o Azure Key Vault para armazenar certificados TLS
  • Ao criptografar novamente o tráfego de back-end, verifique se o certificado do servidor de back-end contém as Autoridades de Certificação (CAs) raiz e intermediária
  • Usar um servidor DNS apropriado para recursos do pool de back-end
  • Cumprir todas as restrições NSG para o Application Gateway
  • Abster-se de usar UDRs na sub-rede do Application Gateway
  • Esteja ciente das alterações de capacidade do Application Gateway ao habilitar o WAF

Recomendações

Explore a tabela de recomendações a seguir para otimizar a configuração do Application Gateway para Segurança.

Recomendação Benefício
Configurar uma política TLS para segurança aprimorada Configure uma política TLS para segurança extra. Certifique-se de estar sempre usando a versão mais recente da política TLS disponível. Isso impõe TLS 1.2 e cifras mais fortes.
Usar o AppGateway para terminação TLS Há vantagens de usar o Application Gateway para terminação TLS:

- O desempenho melhora porque as solicitações que vão para backends diferentes têm que se autenticar novamente em cada backend.
- Melhor utilização de servidores back-end porque eles não precisam executar processamento TLS
- Roteamento inteligente acessando o conteúdo da solicitação.
- Gerenciamento de certificado mais fácil porque o certificado só precisa ser instalado no Application Gateway.
Usar o Azure Key Vault para armazenar certificados TLS O Application Gateway pode ser integrado ao Key Vault. Isso proporciona maior segurança, separação mais fácil de funções e responsabilidades, suporte para certificados gerenciados e um processo mais fácil de renovação e rotação de certificados.
Ao criptografar novamente o tráfego de back-end, verifique se o certificado do servidor de back-end contém as Autoridades de Certificação (CAs) raiz e intermediária Um certificado TLS do servidor back-end deve ser emitido por uma autoridade de certificação conhecida. Se o certificado não foi emitido por uma CA confiável, o Gateway de Aplicativo verifica se o certificado foi emitido por uma CA confiável, e assim por diante, até que um certificado de CA confiável seja encontrado. Só então uma conexão segura é estabelecida. Caso contrário, o Application Gateway marcará o back-end como não íntegro.
Usar um servidor DNS apropriado para recursos do pool de back-end Quando o pool de back-end contém um FQDN resolúvel, a resolução DNS é baseada em uma zona DNS privada ou servidor DNS personalizado (se configurado na rede virtual) ou usa o DNS padrão fornecido pelo Azure.
Cumprir todas as restrições NSG para o Application Gateway Os NSGs são suportados na sub-rede do Application Gateway, mas há algumas restrições. Por exemplo, algumas comunicações com determinadas faixas de portas são proibidas. Certifique-se de que compreende as implicações dessas restrições. Para obter detalhes, veja Network security groups (Grupos de segurança de rede).
Abster-se de usar UDRs na sub-rede do gateway de aplicativo Usar rotas definidas pelo usuário (UDR) na sub-rede do Application Gateway pode causar alguns problemas. O estado de saúde no back-end pode ser desconhecido. Os logs e métricas do Application Gateway podem não ser gerados. Recomendamos que você não use UDRs na sub-rede do Application Gateway para que possa exibir a integridade do back-end, os logs e as métricas. Se suas organizações precisarem usar UDR na sub-rede do Application Gateway, certifique-se de revisar os cenários suportados. Para obter mais informações, consulte Rotas definidas pelo usuário suportadas.
Esteja ciente das alterações de capacidade do Application Gateway ao habilitar o WAF Quando o WAF está habilitado, cada solicitação deve ser armazenada em buffer pelo Application Gateway até chegar totalmente, verifica se a solicitação corresponde a qualquer violação de regra em seu conjunto de regras principal e, em seguida, encaminha o pacote para as instâncias de back-end. Quando há grandes carregamentos de arquivos (30MB + de tamanho), isso pode resultar em uma latência significativa. Como os requisitos de capacidade do Application Gateway são diferentes com o WAF, não recomendamos habilitar o WAF no Application Gateway sem testes e validação adequados.

Para mais sugestões, consulte Princípios do pilar de segurança.

O Azure Advisor ajuda-o a garantir e melhorar a continuidade das suas aplicações críticas para os negócios. Analise as recomendações do Azure Advisor.

Definições de política

Todas as definições de política internas relacionadas à Rede do Azure estão listadas em Políticas internas - Rede.

Otimização de custos

A otimização de custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Recomendamos que você revise os princípios do projeto de otimização de custos.

Lista de verificação de estruturação

  • Familiarize-se com os preços do Application Gateway
  • Rever recursos subutilizados
  • Parar instâncias do Application Gateway que não estão em uso
  • Ter uma política de expansão e expansão
  • Analise as métricas de consumo em diferentes parâmetros

Recomendações

Explore a tabela de recomendações a seguir para otimizar a configuração do Application Gateway para otimização de custos.

Recomendação Benefício
Familiarize-se com os preços do Application Gateway Para obter informações sobre preços do Gateway de Aplicativo, consulte Noções básicas sobre preços para o Gateway de Aplicativo do Azure e o Firewall de Aplicativo Web. Você também pode aproveitar a calculadora de preços.

Garantir que as opções sejam adequadamente dimensionadas para atender à demanda de capacidade e oferecer o desempenho esperado sem desperdiçar recursos.
Rever recursos subutilizados Identifique e exclua instâncias do Application Gateway com pools de back-end vazios para evitar custos desnecessários.
Parar instâncias do Application Gateway quando não estiverem em uso Você não será cobrado quando o Application Gateway estiver no estado interrompido. A execução contínua de instâncias do Application Gateway pode incorrer em custos estranhos. Avalie padrões de uso e interrompa instâncias quando não precisar delas. Por exemplo, espera-se que o uso após o horário comercial em ambientes de desenvolvimento/teste seja baixo.

Consulte estes artigos para obter informações sobre como parar e iniciar instâncias.
- Stop-AzApplicationGateway
- Start-AzApplicationGateway
Ter uma política de expansão e expansão Uma política de expansão garante que haverá instâncias suficientes para lidar com o tráfego de entrada e picos. Além disso, tenha uma política de escalabilidade que garanta que o número de instâncias seja reduzido quando a demanda cair. Considere a escolha do tamanho da instância. O tamanho pode afetar significativamente o custo. Algumas considerações são descritas em Estimar a contagem de instâncias do Application Gateway.

Para obter mais informações, consulte O que é o Azure Application Gateway v2?
Analise as métricas de consumo em diferentes parâmetros Você é cobrado com base em instâncias limitadas do Application Gateway com base nas métricas rastreadas pelo Azure. Avalie as várias métricas e unidades de capacidade e determine os fatores de custo. Para obter mais informações, consulte Microsoft Cost Management and Billing.

As métricas a seguir são fundamentais para o Application Gateway. Essas informações podem ser usadas para validar se a contagem de instâncias provisionadas corresponde à quantidade de tráfego de entrada.

- Unidades de Capacidade Faturada Estimada
- Unidades de Capacidade Fixa Faturável
- Unidades de Capacidade Atual

Para obter mais informações, consulte Métricas do Application Gateway.

Certifique-se de que tem em conta os custos de largura de banda.

Para obter mais sugestões, consulte Princípios do pilar de otimização de custos.

O Azure Advisor ajuda-o a garantir e melhorar a continuidade das suas aplicações críticas para os negócios. Analise as recomendações do Azure Advisor.

Excelência operacional

O monitoramento e o diagnóstico são cruciais para garantir a excelência operacional do seu Application Gateway e dos aplicativos Web ou back-ends por trás do gateway. Você pode não apenas medir estatísticas de desempenho, mas também usar métricas para solucionar e corrigir problemas rapidamente. Recomendamos que você revise os princípios de design de Excelência Operacional.

Lista de verificação de estruturação

  • Monitorar métricas de capacidade
  • Habilitar diagnósticos no Application Gateway e no Web Application Firewall (WAF)
  • Usar o Azure Monitor Network Insights
  • Corresponder as configurações de tempo limite com o aplicativo de back-end
  • Monitorar problemas de configuração do Cofre de Chaves usando o Azure Advisor
  • Configurar e monitorar limitações de porta SNAT
  • Considere as limitações da porta SNAT em seu projeto

Recomendações

Explore a tabela de recomendações a seguir para otimizar a configuração do Application Gateway para excelência operacional.

Recomendação Benefício
Monitorar métricas de capacidade Use essas métricas como indicadores de utilização da capacidade provisionada do Application Gateway. É altamente recomendável configurar alertas sobre a capacidade. Para obter detalhes, consulte Suporte de alto tráfego do Application Gateway.
Troubleshoot using metrics (Resolver problemas na utilização de métricas) Há outras métricas que podem indicar problemas no Application Gateway ou no back-end. Recomendamos avaliar os seguintes alertas:

- Contagem de hospedeiros insalubres
- Estado de Resposta (dimensão 4xx e 5xx)
- Status de resposta de back-end (dimensão 4xx e 5xx)
- Tempo de resposta do último byte de back-end
- Tempo Total do Application Gateway

Para obter mais informações, consulte Métricas para o Application Gateway.
Habilitar diagnósticos no Application Gateway e no Web Application Firewall (WAF) Os logs de diagnóstico permitem visualizar logs de firewall, logs de desempenho e logs de acesso. Use esses logs para gerenciar e solucionar problemas com instâncias do Application Gateway. Para obter mais informações, veja Estado de funcionamento e registos de diagnósticos do back-end do Gateway de Aplicação.
Usar o Azure Monitor Network Insights O Azure Monitor Network Insights fornece uma visão abrangente da integridade e das métricas para recursos de rede, incluindo o Gateway de Aplicativo. Para obter detalhes adicionais e recursos com suporte para o Gateway de Aplicativo, consulte Azure Monitor Network insights.
Corresponder as configurações de tempo limite com o aplicativo de back-end Certifique-se de ter configurado as configurações de IdleTimeout para corresponder às características de ouvinte e tráfego do aplicativo de back-end. O valor padrão é definido como quatro minutos e pode ser configurado para um máximo de 30. Para obter mais informações, consulte Redefinição de TCP do balanceador de carga e tempo limite de inatividade.

Para obter considerações sobre a carga de trabalho, consulte Monitorando a integridade do aplicativo para obter confiabilidade.
Monitorar problemas de configuração do Cofre de Chaves usando o Azure Advisor O Application Gateway verifica a versão renovada do certificado no Cofre da Chave vinculado a cada intervalo de 4 horas. Se ele estiver inacessível devido a qualquer configuração incorreta do Cofre de Chaves, ele registrará esse erro e enviará uma recomendação correspondente do Advisor. Você deve configurar os alertas do Advisor para se manter atualizado e corrigir esses problemas imediatamente para evitar quaisquer problemas relacionados ao plano de controle ou dados. Para obter mais informações, consulte Investigando e resolvendo erros do cofre de chaves. Para definir um alerta para esse caso específico, use o Tipo de Recomendação como Resolver o problema do Cofre da Chave do Azure para seu Gateway de Aplicativo.
Considere as limitações da porta SNAT em seu projeto As limitações de porta SNAT são importantes para conexões de back-end no Application Gateway. Há fatores separados que afetam como o Application Gateway atinge o limite de porta SNAT. Por exemplo, se o back-end for um endereço IP público, ele exigirá sua própria porta SNAT. Para evitar limitações de porta SNAT, você pode aumentar o número de instâncias por Application Gateway, dimensionar os back-ends para ter mais endereços IP ou mover seus back-ends para a mesma rede virtual e usar endereços IP privados para os back-ends.

As solicitações por segundo (RPS) no Application Gateway serão afetadas se o limite de porta SNAT for atingido. Por exemplo, se um Application Gateway atingir o limite de porta SNAT, ele não poderá abrir uma nova conexão com o back-end e a solicitação falhará.

Para mais sugestões, consulte Princípios do pilar de excelência operacional.

O Azure Advisor ajuda-o a garantir e melhorar a continuidade das suas aplicações críticas para os negócios. Analise as recomendações do Azure Advisor.

Eficiência de desempenho

Eficiência de desempenho é a capacidade da sua carga de trabalho para dimensionar para satisfazer as exigências que os utilizadores lhe colocam de forma eficiente. Recomendamos que você revise os princípios de eficiência de desempenho.

Lista de verificação de estruturação

  • Estimar a contagem de instâncias do Application Gateway
  • Definir a contagem máxima de instâncias
  • Definir a contagem mínima de instâncias
  • Definir o tamanho da sub-rede do Application Gateway
  • Aproveite os recursos do Application Gateway V2 para obter benefícios de dimensionamento automático e desempenho

Recomendações

Explore a tabela de recomendações a seguir para otimizar a configuração do Application Gateway para eficiência de desempenho.

Recomendação Benefício
Estimar a contagem de instâncias do Application Gateway O Application Gateway v2 é dimensionado com base em muitos aspetos, como CPU, taxa de transferência de rede, conexões atuais e muito mais. Para determinar a contagem aproximada de instâncias, considere estas métricas:

Unidades de computação atuais — Indica a utilização da CPU. 1 A instância do Application Gateway tem aproximadamente 10 unidades de computação.
Taxa de transferência — A instância do Application Gateway pode servir ~500 Mbps de taxa de transferência. Estes dados dependem do tipo de carga útil.

Considere essa equação ao calcular contagens de instâncias.
Contagem aproximada de instâncias

Depois de estimar a contagem de instâncias, compare esse valor com a contagem máxima de instâncias. Isso indicará o quão perto você está da capacidade máxima disponível.
Definir a contagem mínima de instâncias Para a SKU do Application Gateway v2, o dimensionamento automático leva algum tempo (aproximadamente seis a sete minutos) antes que o conjunto adicional de instâncias esteja pronto para atender ao tráfego. Durante esse tempo, se houver picos curtos no tráfego, espere latência transitória ou perda de tráfego.

Recomendamos que você defina sua contagem mínima de instâncias para um nível ideal. Depois de estimar a contagem média de instâncias e determinar as tendências de dimensionamento automático do Application Gateway, defina a contagem mínima de instâncias com base nos padrões do aplicativo. Para obter informações, consulte Suporte de alto tráfego do Application Gateway.

Verifique as Unidades de Computação Atuais do último mês. Essa métrica representa a utilização da CPU do gateway. Para definir a contagem mínima de instâncias, divida o pico de uso por 10. Por exemplo, se a média de Unidades de Computação Atuais no mês passado for 50, defina a contagem mínima de instâncias como cinco.
Definir a contagem máxima de instâncias Recomendamos 125 como a contagem máxima de instâncias de escala automática. Verifique se a sub-rede que tem o Application Gateway tem endereços IP disponíveis suficientes para dar suporte ao conjunto de instâncias de expansão.

Definir a contagem máxima de instâncias como 125 não tem implicações de custo porque você é cobrado apenas pela capacidade consumida.
Definir o tamanho da sub-rede do Application Gateway O Application Gateway precisa de uma sub-rede dedicada dentro de uma rede virtual. A sub-rede pode ter várias instâncias do recurso do Application Gateway implantado. Você também pode implantar outros recursos do Application Gateway nessa SKU de sub-rede, v1 ou v2.

Aqui estão algumas considerações para definir o tamanho da sub-rede:

- O Application Gateway usa um endereço IP privado por instância e outro endereço IP privado se um IP front-end privado estiver configurado.
- O Azure reserva cinco endereços IP em cada sub-rede para uso interno.
- O Application Gateway (Standard ou WAF SKU) pode suportar até 32 instâncias. Tomando 32 endereços IP de instância + 1 IP front-end privado + 5 Azure reservado, recomenda-se um tamanho mínimo de sub-rede /26. Como o Standard_v2 ou WAF_v2 SKU pode suportar até 125 instâncias, usando o mesmo cálculo, recomenda-se um tamanho de sub-rede /24.
- Se você quiser implantar recursos adicionais do Application Gateway na mesma sub-rede, considere os endereços IP adicionais que serão necessários para sua contagem máxima de instâncias para ambos, Standard e Standard v2.
Aproveite os recursos para dimensionamento automático e benefícios de desempenho O SKU v2 oferece dimensionamento automático para garantir que seu Application Gateway possa ser dimensionado à medida que o tráfego aumenta. Quando comparado ao SKU v1, o v2 tem recursos que melhoram o desempenho da carga de trabalho. Por exemplo, melhor desempenho de descarregamento de TLS, tempos de implantação e atualização mais rápidos, redundância de zona e muito mais. Para obter mais informações sobre recursos de dimensionamento automático, consulte Dimensionamento do Application Gateway v2 e WAF v2.

Se você estiver executando o gateway de aplicativo SKU v1, considere migrar para o gateway de aplicativo v2 SKU. Para obter mais informações, consulte Migrar o Gateway de Aplicativo do Azure e o Firewall de Aplicativo Web da v1 para a v2.

O Azure Advisor ajuda-o a garantir e melhorar a continuidade das suas aplicações críticas para os negócios. Analise as recomendações do Azure Advisor.

Recomendações do Assistente do Azure

O Azure Advisor é um consultor de nuvem personalizado que ajuda você a seguir as práticas recomendadas para otimizar suas implantações do Azure. Aqui estão algumas recomendações que podem ajudá-lo a melhorar a confiabilidade, a segurança, a relação custo-benefício, o desempenho e a excelência operacional do seu Application Gateway.

Fiabilidade

Recursos adicionais

Orientação do Centro de Arquitetura do Azure

Próximos passos