O que é o Gateway de Aplicativos para contêineres?

O Gateway de Aplicativo para Contêineres é um serviço gerenciado de balanceamento de carga e de entrada da camada de aplicação (camada 7) para cargas de trabalho do Kubernetes. Ele roteia o tráfego de inferência HTTP, HTTPS, gRPC e IA para aplicativos em AKS (Serviço de Kubernetes do Azure) enquanto Azure opera o plano de dados subjacente fora do cluster.

Você configura o Application Gateway for Containers a partir do Kubernetes usando recursos compatíveis de Ingress e da Gateway API. Esse modelo de configuração permite que as equipes de plataforma forneçam uma camada de entrada gerenciada por Azure compartilhada, enquanto as equipes de aplicativos usam recursos nativos do Kubernetes para descrever como seus serviços recebem tráfego.

Para cargas de trabalho de IA, o gateway de inferência do Application Gateway for Containers oferece suporte a servidores de modelos auto-hospedados que precisam de roteamento com reconhecimento do modelo e seleção de endpoint no momento da solicitação. Para mais informações, consulte o Gateway de Aplicativo para Contêineres – Gateway de Inferência.

O Gateway de Aplicativo para Contêineres é uma oferta separada do Gateway de Aplicativo criada para o Kubernetes desde o início, com um plano de controle dedicado e um plano de dados moldado por aprendizados a partir do Controlador de Entrada do Gateway de Aplicativo (AGIC). O Controlador ALB é executado no cluster e converte a configuração do Kubernetes na configuração do Gateway de Aplicativo para Contêineres no Azure.

Resumo do produto

Em linhas gerais, o Gateway de Aplicativos para Contêineres fornece:

  • Configuração nativa do Kubernetes: use recursos de API de Entrada e Gateway para definir como as solicitações chegam aos serviços em seu cluster.
  • Plano de dados de ingresso gerenciado pelo Azure: Mantenha o tráfego de ingresso fora do cluster do AKS enquanto o Azure opera o plano de dados que processa as solicitações dos clientes.
  • Plataforma de entrada compartilhada: separe a infraestrutura de entrada de propriedade da plataforma da configuração de roteamento de propriedade do aplicativo.
  • Adoção incremental: Use recursos de Ingress ou da Gateway API para que as cargas de trabalho possam migrar para o Application Gateway for Containers ao longo do tempo.
  • Suporte à inferência de IA: Roteamento do tráfego de inferência para servidores auto-hospedados de modelos, com roteamento com reconhecimento do modelo e seleção de endpoint no momento da solicitação, configurados por meio da Extensão de Inferência da API do Gateway.
  • Controles de entrega de aplicativos: use os roteiros da camada 7, a divisão de tráfego, as investigações de integridade, novas tentativas, TLS, autenticação mútua e políticas de Firewall de Aplicativo Web (WAF).

Como ele funciona?

O Gateway de Aplicativo para Contêineres separa a configuração do Kubernetes do processamento de tráfego do Azure. O Controlador ALB observa os recursos do Kubernetes, como Entrada, Gateway, HTTPRoute e ApplicationLoadBalancer, e aplica a configuração desejada ao Gateway de Aplicativo para Contêineres no Azure.

Uma implantação do Gateway de Aplicativo para Contêineres é composta por quatro componentes:

  • Recurso do Gateway de Aplicativos para contêineres
  • Front-ends
  • Associações
  • Políticas de Segurança

As implantações também fazem referência às seguintes dependências:

  • Delegação de sub-rede
  • Identidade gerenciada atribuída ao usuário

A arquitetura de Gateway de Aplicativos para contêineres é resumida na figura a seguir:

Diagrama representando o tráfego da Internet entrando no Gateway de Aplicativos para contêineres e sendo enviado para pods de backend no AKS.

Para obter detalhes sobre como o Gateway de Aplicativos para contêineres aceita solicitações de entrada e as encaminha para um destino de back-end, consulte Componentes do Gateway de Aplicativos para contêineres.

Recursos de gerenciamento de tráfego compatíveis

O Gateway de Aplicativos para contêineres dá suporte aos seguintes recursos para gerenciamento de tráfego:

  • Funcionalidades do gateway de IA
    • Suporte à Extensão de Inferência da API do Gateway
    • Roteiros com reconhecimento de modelo com um roteador baseado em corpo gerenciado (BBR)
    • Roteiros baseados na carga para as réplicas de modelo com menor carga, para reduzir a latência, utilizando um Seletor de Ponto de Extremidade (EPP)
    • Inferência segura com Firewall de Aplicativo Web (WAF)
  • Complemento gerenciado do AKS
  • Novas tentativas automáticas
  • Dimensionamento automático
  • Resiliência da zona de disponibilidade
  • Investigações de integridade personalizadas e padrão
  • Suporte a certificados ECDSA e RSA
  • Estratégias flexíveis de balanceamento de carga
    • Solicitação mínima
    • Roteiros com reconhecimento de carga
    • Anel Hash
    • Fase de grupos contra todos
    • Round Robin ponderado
  • gRPC
  • Reescreve cabeçalho
  • HTTP/2
  • Gerenciamento de tráfego HTTPS:
    • Terminação SSL
    • SSL de ponta a ponta
  • Suporte à API de entrada e Gateway
  • Encaminhamento de solicitação HTTP/HTTPS da Camada 7 com base no prefixo/correspondência exata em:
    • Nome do host
    • Caminho
    • Cabeçalho
    • Cadeia de consulta
    • Métodos
    • Portas (80/443)
  • Autenticação mútua (mTLS) para frontend, backend ou ponta a ponta
  • Suporte ao evento enviado pelo servidor (SSE)
  • Políticas de TLS
  • Redirecionamento de URL
  • reescrita de URL
  • Firewall do aplicativo Web (WAF)
  • Suporte para WebSocket

Estratégias de implantação

Há duas estratégias de implantação para o gerenciamento do Gateway de Aplicativos para contêineres:

  • Traga sua própria (BYO) implantação: você gerencia a implantação e o ciclo de vida do recurso de Gateway de Aplicativo para Contêineres, recurso de Associação e recurso de Front-end por meio do portal do Azure, CLI do Azure, Azure PowerShell ou Terraform. Você faz referência a esses recursos na configuração no Kubernetes.
    • Na API do Gateway: Sempre que você cria um novo recurso de Gateway no Kubernetes, primeiro provisiona um recurso de Front-end no Azure e faz referência a ele a partir do recurso de Gateway. O administrador do Azure gerencia a exclusão do recurso front-end. O recurso front-end não é excluído quando o recurso gateway no Kubernetes é excluído.
  • Gerenciado pelo Controlador ALB: O Controlador ALB implantado no Kubernetes é responsável pelo ciclo de vida do recurso gateway de aplicativo para contêineres e seus sub-recursos. O Controlador ALB cria o recurso Gateway de Aplicativo para Contêineres quando um recurso personalizado do ApplicationLoadBalancer é definido no cluster. Seu ciclo de vida é baseado no ciclo de vida do recurso personalizado.
    • Na API do Gateway: Sempre que você cria um recurso de Gateway referenciando o recurso ApplicationLoadBalancer, o Controlador ALB provisiona um novo recurso front-end e gerencia seu ciclo de vida com base no ciclo de vida do recurso do Gateway.

Regiões com suporte

O Gateway de Aplicativo para Contêineres está disponível atualmente nas seguintes regiões:

  • Leste da Austrália
  • Sul do Brasil
  • Canadá Central
  • Índia Central
  • EUA Central
  • Ásia Oriental
  • Leste dos EUA
  • Leste dos EUA 2
  • França Central
  • Centro-oeste da Alemanha
  • Coreia Central
  • Centro-Norte dos EUA
  • Europa Setentrional
  • Leste da Noruega
  • Centro-Sul dos EUA
  • Sudeste Asiático
  • Suécia Central
  • Norte da Suíça
  • Norte dos EAU
  • Sul do Reino Unido
  • Oeste dos EUA
  • Oeste dos EUA 2
  • Oeste dos EUA 3
  • Oeste da Europa

Suporte à API do Gateway

O Controlador ALB implementa a versão v1.5 da API do Gateway.

Recurso de API de Gateway Suporte Comentários
GatewayClass Sim
Gateway Sim Suporte para protocolo HTTP e HTTPS no ouvinte. As únicas portas permitidas no ouvinte são a 80 e 443.
HTTPRoute Sim
GRPCRoute Sim
ReferenceGrant Sim Atualmente, há suporte à versão v1alpha1 dessa API
InferencePool Sim
InferenceObjective Sim Atualmente implementa a versão v1alpha1 desta API

Suporte à API de Entrada

O ALB Controller implementa suporte para Entrada.

Recurso de API de entrada Suporte Comentários
Entrada Sim Suporte para protocolo HTTP e HTTPS no ouvinte.

Relatar problemas e enviar comentários

Para obter comentários, poste uma nova ideia no feedback.azure.com. Em caso de problemas, abra uma solicitação de suporte através do portal do Azure no recurso de Gateway de Aplicativo para Contêineres.

Preço e SLA

Para obter informações sobre preços do Gateway de Aplicativo para Contêineres, consulte a página de preços do Gateway de Aplicativo.

Para obter informações sobre SLA do Gateway de Aplicativos para Contêineres, consulte Contratos de Nível de Serviço (SLA) para Serviços Online.

Novidades

Para conhecer as novidades do Gateway de Aplicativos para contêineres, confira Atualizações do Azure.

Próximas etapas