O que é o Application Gateway for Containers?
O Application Gateway for Containers é um produto de balanceamento de carga e gerenciamento de tráfego dinâmico da camada de aplicativo (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:
- Recurso Application Gateway for Containers
- 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:
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 personalizadas e padrão
- Suporte a certificados ECDSA e RSA
- gRPC
- 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 frontend, back-end ou end-to-end
- Suporte a eventos enviados pelo servidor (SSE)
- 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, recurso de associação e recurso Frontend são assumidos via portal do Azure, CLI, PowerShell, Terraform, etc. e referenciados na configuração no 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 Controlador ALB 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.