Redes de contenedores de Windows con Azure Kubernetes Service
Azure Kubernetes Service (AKS) administra su entorno hospedado de Kubernetes y facilita la implementación y administración de aplicaciones en contenedores en Azure. Un entorno de AKS tiene características como actualizaciones automatizadas, recuperación automática y escalado rápido. Puede administrar los nodos del agente en el clúster y pagar solo por las máquinas virtuales en las que se ejecuten los nodos.
Estas son algunas de las muchas ventajas de usar AKS para las redes de contenedores de Windows:
- AKS implementa el formato de archivo de imagen de Docker. Puede usar cualquier entorno de desarrollo para crear una carga de trabajo, empaquetarla como contenedor e implementar este contenedor como pod de Kubernetes.
- AKS funciona con herramientas de desarrollo y administración populares, como Helm, Draft y la extensión de Kubernetes para Visual Studio Code y Herramientas de Kubernetes de Visual Studio.
- AKS admite la integración con Azure DevOps Projects para simplificar la configuración de una canalización de DevOps para la aplicación.
Contenedores de AKS y Windows
En un único host o entorno de desarrollo, el entorno de ejecución de administración de contenedores estándar se enfoca en la administración de contenedores individuales. A veces, debe escalar la configuración y crear varios contenedores que trabajen juntos. El escalado de varios contenedores es más difícil en términos de administración de contenedores. Se debe controlar el equilibrio de carga, la seguridad, la conectividad de red y la implementación. Para facilitar este proceso, es habitual usar una plataforma de administración de contenedores como Kubernetes.
AKS es una plataforma de orquestación de contenedores que simplifica el desarrollo, la implementación y la administración de las aplicaciones contenedorizadas. Puede usar AKS para administrar el entorno de Kubernetes hospedado en Azure. AKS simplifica el proceso de instalación y se encarga de la mayoría de las tareas de administración de clústeres subyacentes. AKS forma parte de Azure y se puede integrar con otros servicios de Azure para extender el producto o intercambiar datos con otros servicios.
Importante
Para implementar contenedores de Windows Server en AKS, la configuración debe cumplir los siguientes requisitos:
- Uso del complemento de red de Azure CNI para el clúster de Kubernetes.
- Uso de Windows Server 2019 o posterior para los nodos de Windows. Las versiones anteriores de Windows Server no admiten redes de superposición, que Azure CNI requiere.
- Uso de Kubernetes versión 1.14 o posterior. Las versiones anteriores de Kubernetes no admiten nodos o pods de Windows.
AKS y redes
En AKS, puede implementar un clúster de contenedores de Windows que use redes de Azure Container Networking Interface (Azure CNI). En este modelo, los pods reciben conectividad de red virtual completa: pod a pod y pod a máquina virtual, en la misma red virtual o en una red virtual del mismo nivel. Se puede acceder a los pods a través de su dirección IP privada en las redes conectadas.
Azure CNI admite grupos de nodos de Windows. Los clústeres se pueden implementar en redes virtuales nuevas o existentes. El acceso local se admite mediante VPN o Azure Express Route. Puede exponer los servicios de Kubernetes mediante un servicio de equilibrador de carga, Azure Application Gateway o un controlador de entrada.
Control de tráfico con directivas de red
El procedimiento recomendado para contenedores de Windows con AKS es usar directivas de red para permitir o denegar el tráfico a los pods. De forma predeterminada, se permite todo el tráfico entre los pods dentro de un clúster. Para mejorar la seguridad, defina reglas que limiten la comunicación del pod.
La directiva de red es una característica de Kubernetes disponible en AKS que permite controlar el flujo de tráfico entre pods. Según la configuración se permite o deniega el tráfico al pod, como, por ejemplo, etiquetas asignadas, espacio de nombres o puerto de tráfico. Las directivas de red son una manera nativa de nube para controlar el flujo de tráfico de los pods. Como los pods se crean dinámicamente en un clúster de AKS, se pueden aplicar automáticamente las directivas de red necesarias.
Consideraciones sobre AKS
AKS admite una configuración de red virtual, en la que necesita una comunicación de red de pod a pod o acceso a redes locales desde el clúster de Windows. Se puede implementar un clúster de AKS de Windows en una red virtual existente con facilidad.
Estas son algunas características de AKS que se deben tener en cuenta al planear las redes de contenedores de Windows:
Característica | Consideración | Solución |
---|---|---|
Compatibilidad con imágenes de Docker | Uso de imágenes de Docker para los contenedores | De manera predeterminada, AKS es compatible con el formato de imagen del archivo de Docker. |
Compatibilidad con redes virtuales | Compatibilidad de ccomunicación de red de pod a pod o acceso a redes locales desde el clúster de AKS | Un clúster de AKS se puede implementar en una red virtual existente con facilidad. |
Compatibilidad con la entrada con el enrutamiento de aplicación HTTP | Permita que las aplicaciones implementadas estén disponibles públicamente | El complemento de enrutamiento de aplicación HTTP facilita el acceso a las aplicaciones implementadas del clúster de AKS. |
Escalado automático de pods y nodos de clústeres | Escale o reduzca la escala verticalmente un entorno de contenedorización grande | AKS admite el escalado sencillo para los clústeres y proporciona dos opciones de escalado automático de clústeres para entornos grandes. - El escalador automático horizontal supervisa la demanda de recursos de pods y aumenta los pods para que se ajusten a la demanda. - El escalador automático de clúster identifica los pods que no se pueden programar debido a restricciones de los nodos. Escala automáticamente los nodos de clúster para implementar pods programados. |
Registro y supervisión integrados | Supervisión de contenedores, pods y clústeres | AKS incluye Azure Monitor para que los contenedores proporcionen visibilidad de rendimiento del clúster. Con una instalación personalizada de Kubernetes, use Azure Monitor o instale y configure Azure Log Analytics o Azure Application Insights. |
Alta disponibilidad | Garantice la alta disponibilidad y tolerancia a errores | AKS le ayuda a lograr una alta disponibilidad y tolerancia a errores para los clústeres de Windows mediante la distribución de los nodos entre zonas de disponibilidad y regiones. |
Integración de seguridad | Protección de los clústeres y aplicaciones de Windows | AKS se integra con Microsoft Entra ID (anteriormente Azure Active Directory), Azure Key Vault, Azure Policy y Azure Security Center. |