O que é o Application Gateway for Containers?

O Application Gateway for Containers é um novo produto de balanceamento de carga e gerenciamento dinâmico de tráfego de aplicativos (camada 7) para cargas de trabalho executadas em um cluster Kubernetes. Ele estende o portfólio de Balanceamento de Carga de Aplicativo do Azure e é uma nova oferta sob a família de produtos Application Gateway.

O Application Gateway for Containers é a evolução do Application Gateway Ingress Controller (AGIC), um aplicativo Kubernetes que permite que os clientes do Serviço Kubernetes do Azure (AKS) usem o balanceador de carga de aplicativo nativo do Application Gateway do Azure. Em sua forma atual, a AGIC monitora um subconjunto de Recursos do Kubernetes em busca de alterações e as aplica ao Gateway de Aplicativo, utilizando o Azure Resource Manager (ARM).

Como é que isto funciona?

O Application Gateway for Containers é composto por três componentes:

  • Gateway de Aplicação para Contentores
  • Frontends
  • Associações

As seguintes dependências também são referenciadas em uma implantação do Application Gateway for Containers:

  • Endereço IP privado
  • Delegação de Sub-rede
  • Identidade gerenciada atribuída pelo usuário

A arquitetura do Application Gateway for Containers é resumida na figura a seguir:

Diagrama que mostra o tráfego da Internet entrando no Application Gateway for Containers e sendo enviado para pods de back-end no AKS.

Para obter detalhes sobre como o Application Gateway for Containers aceita solicitações de entrada e as roteia para um destino de back-end, consulte Componentes do Application Gateway for Containers.

Funcionalidades e benefícios

O Application Gateway for Containers oferece alguns recursos totalmente novos no lançamento, como:

  • Divisão de tráfego / Round robin ponderado
  • Autenticação mútua para o destino de back-end
  • Suporte do Kubernetes para API de Ingresso e Gateway
  • Estratégias de implantação flexíveis
  • Maior desempenho, oferecendo atualizações quase em tempo real para adicionar ou mover pods, rotas e sondas

O Application Gateway for Containers oferece uma entrada elástica e escalável para clusters AKS e compreende um novo plano de dados, bem como um plano de controle com um novo conjunto de APIs ARM, diferente do Application Gateway existente. Essas APIs são diferentes da implementação atual do Application Gateway. O Application Gateway for Containers está fora do plano de dados do cluster AKS e é responsável pela entrada. O serviço é gerenciado por um componente de controlador ALB que é executado dentro do cluster AKS e adere às APIs do Kubernetes Gateway.

Recursos de balanceamento de carga

O Application Gateway for Containers oferece suporte aos seguintes recursos para gerenciamento de tráfego:

  • Repetições automáticas
  • Dimensionamento automático
  • Resiliência da zona de disponibilidade
  • Sondas de integridade padrão e personalizadas
  • Reescrita do cabeçalho
  • HTTP/2
  • Gerenciamento de tráfego HTTPS:
    • Terminação de SSL
    • SSL de ponta a ponta
  • Suporte à API de Ingresso e Gateway
  • Reencaminhamento de pedidos HTTP/HTTPS de camada 7 com base no prefixo/correspondência exata em:
    • Hostname (Nome do anfitrião)
    • Caminho
    • Cabeçalho
    • Cadeias de consulta
    • Métodos
    • Portos (80/443)
  • Autenticação mútua (mTLS) para destino de back-end
  • Divisão de tráfego / round robin ponderado
  • Políticas TLS
  • Redirecionamento de URL
  • Reescrever URL

Estratégias de implementação

Existem duas estratégias de implementação para a gestão do Gateway de Aplicação para Contentores:

  • Traga sua própria implantação (BYO): nesta estratégia de implantação, a implantação e o ciclo de vida do recurso Application Gateway for Containers, associação e recurso Frontend são assumidos por meio do portal do Azure, CLI, PowerShell, Terraform, etc. e referenciados na configuração dentro do Kubernetes.
    • Na API do Gateway: sempre que você deseja criar um novo recurso de Gateway no Kubernetes, um recurso de Front-end deve ser provisionado no Azure antes e referenciado pelo recurso de Gateway. A exclusão do recurso Frontend é responsável pelo administrador do Azure e não é excluída quando o recurso Gateway no Kubernetes é excluído.
  • Gerenciado pelo Controlador ALB: Nesta estratégia de implantação, o Controlador ALB implantado no Kubernetes é responsável pelo ciclo de vida do recurso Application Gateway for Containers e seus subrecursos. O ALB Controller cria o recurso Application Gateway for Containers quando um recurso personalizado ApplicationLoadBalancer é definido no cluster e seu ciclo de vida é baseado no ciclo de vida do recurso personalizado.
    • Na API do Gateway: Sempre que um recurso do Gateway é criado fazendo referência ao recurso ApplicationLoadBalancer, o Controlador ALB provisiona um novo recurso Frontend e gerencia seu ciclo de vida com base no ciclo de vida do recurso do Gateway.

Regiões suportadas

Atualmente, o Application Gateway for Containers é oferecido nas seguintes regiões:

  • Leste da Austrália
  • Canadá Central
  • Índia Central
  • E.U.A. Central
  • Ásia Leste
  • E.U.A. Leste
  • E.U.A. Leste 2
  • França Central
  • Alemanha Centro-Oeste
  • Coreia do Sul Central
  • E.U.A. Centro-Norte
  • Europa do Norte
  • Leste da Noruega
  • E.U.A. Centro-Sul
  • Sudeste Asiático
  • Norte da Suíça
  • Norte dos E.A.U.
  • Sul do Reino Unido
  • E.U.A. Oeste
  • Europa Ocidental

Implementação da API de Gateway

ALB Controller implementa a versão v1 da API do gateway.

Recurso da API do gateway Suporte Comentários
GatewayClass Sim
Gateway Sim Suporte para protocolo HTTP e HTTPS no ouvinte. As únicas portas permitidas no ouvinte são 80 e 443.
HTTPRoute Sim
ReferenceGrant Sim Atualmente suporta a versão v1alpha1 desta API

Implementação da API de Ingresso

ALB Controller implementa suporte para Ingress.

Ingress API Resource Suporte Comentários
Entrada Sim Suporte para protocolo HTTP e HTTPS no ouvinte.

Comunicar problemas e fornecer feedback

Para obter comentários, publique uma nova ideia em feedback.azure.com Para problemas, levante uma solicitação de suporte por meio do portal do Azure em seu recurso Application Gateway for Containers.

Preços e SLA

Para obter informações sobre preços do Application Gateway for Containers, consulte Preços do Application Gateway.

Para obter informações sobre o SLA do Application Gateway for Containers, consulte Service Level Agreements (SLA) for Online Services.

Novidades

Para saber o que há de novo no Application Gateway for Containers, consulte Atualizações do Azure.

Próximos passos