¿Qué es el controlador de entrada de Application Gateway?
El controlador de entrada de Application Gateway (AGIC) es una aplicación de Kubernetes, lo que hace posible que los clientes de Azure Kubernetes Service (AKS) aprovechen la tecnología nativa de Azure Application Gateway: el equilibrador de carga L7 para exponer software en la nube a Internet. AGIC supervisa el clúster de Kubernetes en el que se hospeda y actualiza continuamente una instancia de Application Gateway para que los servicios seleccionados se expongan a Internet.
El controlador de entrada se ejecuta en su propio pod en la instancia de AKS del cliente. AGIC supervisa un subconjunto de recursos de Kubernetes para los cambios. El estado del clúster de AKS se traduce a una configuración específica de Application Gateway y se aplica a Azure Resource Manager (ARM).
Sugerencia
Consulte también ¿Qué es la Puerta de enlace de aplicaciones para contenedores?
Ventajas del controlador de entrada de Application Gateway
AGIC ayuda a eliminar la necesidad de tener otra dirección IP pública o equilibrador de carga frente al clúster de AKS y evita varios saltos en la ruta de datos antes de que las solicitudes lleguen al clúster de AKS. Application Gateway se comunica con los pods mediante su dirección IP privada directamente y no necesita los servicios de NodePort o KubeProxy. Esta capacidad también aporta un mejor rendimiento a las implementaciones.
El controlador de entrada es compatible exclusivamente con las SKU de Standard_v2 y WAF_v2, que también habilitan ventajas de escalado automático. Application Gateway puede reaccionar en respuesta a un aumento o una disminución de la carga y la escala de tráfico según corresponda, sin consumir ningún recurso del clúster de AKS.
El uso de Application Gateway, además de AGIC, también ayuda a proteger el clúster de AKS al proporcionar la funcionalidad de la directiva TLS y firewall de aplicaciones web (WAF).
AGIC se configura a través del recurso de entrada de Kubernetes, junto con los servicios, las implementaciones y los pods. Proporciona muchas características mediante el equilibrador de carga L7 de Application Gateway nativo de Azure. Por mencionar algunas:
- Enrutamiento de direcciones URL
- Afinidad basada en cookies
- Finalización de TLS
- TLS de un extremo a otro
- Soporte para sitios web públicos, privados e híbridos
- Firewall de aplicaciones web integrado
Diferencias entre la implementación de Helm y el complemento de AKS
Hay dos maneras de implementar AGIC para el clúster de AKS. La primera manera es mediante Helm; la segunda es mediante AKS como un complemento. La principal ventaja de implementar AGIC como un complemento de AKS es que es más sencillo que la implementación mediante Helm. En el caso de una nueva instalación, puede implementar una nueva instancia de Application Gateway y un nuevo clúster de AKS con AGIC habilitado como un complemento en una línea en la CLI de Azure. El complemento es también un servicio totalmente administrado, que ofrece ventajas adicionales, como actualizaciones automáticas y mayor compatibilidad. Las dos formas de implementar AGIC (Helm y el complemento de AKS) son totalmente compatibles con Microsoft. Además, el complemento permite una mejor integración con AKS como un complemento de primera clase.
El complemento de AGIC se implementa como un pod en el clúster de AKS del cliente; sin embargo, hay algunas diferencias entre la versión de la implementación de Helm y la versión del complemento de AGIC. A continuación se muestra una lista de las diferencias entre las dos versiones:
- Los valores de implementación de Helm no se pueden modificar en el complemento de AKS:
verbosityLevel
se establece en 5 de forma predeterminada;usePrivateIp
se establece en False de forma predeterminada (esta configuración se puede invalidar con la anotación use-private-ip);shared
no se admite en el complementoreconcilePeriodSeconds
no se admite en el complementoarmAuth.type
no se admite en el complemento
- AGIC implementado mediante Helm admite ProhibitedTargets, lo que significa que AGIC puede configurar la instancia de Application Gateway específicamente para los clústeres de AKS sin que afecte a otros back-ends existentes. El complemento de AGIC no es compatible actualmente con esta capacidad.
- Dado que el complemento de AGIC es un servicio administrado, los clientes se actualizan automáticamente a la versión más reciente del complemento de AGIC, a diferencia de AGIC implementado mediante Helm, donde el cliente debe actualizar AGIC manualmente.
Nota:
Los clientes solo pueden implementar un complemento de AGIC por clúster de AKS y cada complemento de AGIC actualmente solo puede tener como destino una instancia de Application Gateway. En el caso de implementaciones que necesiten más de un AGIC por clúster o varios AGIC destinados a una instancia de Application Gateway, siga usando AGIC implementado mediante Helm.
Pasos siguientes
- Implementación del complemento Greenfield de AKS: instrucciones sobre cómo instalar el complemento de AGIC, AKS y Application Gateway en una infraestructura de pizarra en blanco.
- Implementación del complemento Brownfield de AKS: instalación del complemento de AGIC en un clúster de AKS con una instancia de Application Gateway existente.
- Implementación de Helm Greenfield: instalación de AGIC mediante Helm, un nuevo clúster de AKS y una nueva instancia de Application Gateway en una infraestructura de pizarra en blanco.
- Implementación de Helm Brownfield: implementación de AGIC mediante Helm en un clúster de AKS y una instancia de Application Gateway existentes.