Introducción a Kubernetes y Kubernetes habilitado para Azure Arc
En esta unidad, obtendrá información sobre Kubernetes y sobre la arquitectura y las ventajas de Kubernetes habilitado para Azure Arc.
Kubernetes
Kubernetes es una plataforma de código abierto extensible para orquestar cargas de trabajo contenedorizadas. Para garantizar la resistencia, cada implementación de Kubernetes consta de varios nodos de servidor en clúster. Algunos servidores son nodos del plano de control que administran los otros nodos de trabajo.
Los nodos de trabajo hospedan cargas de trabajo contenedorizadas como pods de Kubernetes. Un pod corresponde aproximadamente a un contenedor, aunque puede incluir varios contenedores estrechamente acoplados que se ejecutan en el mismo nodo.
Aparte del aislamiento basado en contenedores, Kubernetes puede aislar también pods y otros recursos, como implementaciones, en espacios de nombres. Los espacios de nombres forman límites lógicos para proporcionar aislamiento entre los usuarios y las aplicaciones externas que acceden a diferentes cargas de trabajo contenedorizadas. Los espacios de nombres también permiten restringir los permisos para crear, ver o administrar recursos dentro de un clúster.
Ventajas de Kubernetes
Kubernetes reduce la complejidad de un entorno de varios contenedores que combina componentes de proceso, red y almacenamiento de los que pueden depender cientos o miles de contenedores. El modelo de administración declarativo de Kubernetes describe la configuración de destino deseada y deja sus detalles de implementación en el plano de control de Kubernetes.
Kubernetes le permite tratar su centro de datos como un recurso de proceso unificado. No necesita preocuparse de cómo y dónde implementar los contenedores, solo de implementar y escalar las aplicaciones según sea necesario.
Desafíos de Kubernetes
Kubernetes es una plataforma de orquestación muy personalizable que requiere una configuración, una administración y un mantenimiento adecuados.
Funcionalidades como la implementación, el escalado, el equilibrio de carga, el registro y la supervisión son opcionales. Deberá identificar e implementar personalmente la configuración óptima para satisfacer sus necesidades específicas.
Debe mantener el entorno de Kubernetes. Por ejemplo, debe administrar las actualizaciones del sistema operativo y de Kubernetes. También debe administrar los recursos de hardware disponibles para los nodos de clúster, como las redes, la memoria y el almacenamiento.
Las ofertas de Kubernetes administrado, como Azure Kubernetes Service (AKS), pueden minimizar o incluso eliminar algunos de estos desafíos.
Kubernetes habilitado para Azure Arc
Kubernetes habilitado para Azure Arc permite asociar clústeres de Kubernetes que se ejecutan en cualquier lugar para que pueda administrarlos y configurarlos en Azure.
Azure Arc usa agentes instalados localmente para establecer un canal de confianza con Azure. La conexión a Azure requiere la implementación de varios agentes como pods dentro de un espacio de nombres azure-arc dedicado en el clúster de Kubernetes. Estos agentes mantienen una conexión con Azure y sincronizan los metadatos y el estado del clúster con el recurso de Azure correspondiente.
Kubernetes habilitado para Azure Arc funciona con todos los clústeres de Kubernetes con la certificación de Cloud Native Computing Foundation (CNCF). Incluye clústeres que se ejecuten en otros proveedores de nube pública (como GCP o AWS) y que se ejecuten en un centro de datos local (como VMware vSphere o Azure Stack HCI).
Ventajas de Kubernetes habilitado para Azure Arc
Además de las ventajas generales de Azure Arc descritas en la unidad anterior, Kubernetes habilitado para Azure Arc ofrece las siguientes funcionalidades:
- Plano de control único para administrar todos los recursos de Kubernetes en entornos multinube o híbridos.
- Clústeres de Kubernetes habilitado para Arc como plataforma para hospedar servicios de Azure
- Compatibilidad mejorada con la implementación de aplicaciones mediante GitOps GitOps permite la implementación automática de configuraciones que describen el estado deseado de los clústeres de Kubernetes. Puede aplicar configuraciones específicas basadas en GitOps mediante Azure Policy.
- Aplicación de directivas de tiempo de ejecución que afectan al clúster y sus pods usando Azure Policy para Kubernetes e informes centralizados de cumplimiento de directivas. Por ejemplo, puede exigir el uso de HTTPS para el tráfico de entrada destinado a los clústeres de Kubernetes habilitado para Azure Arc o asegurarse de que los contenedores escuchan solo en puertos específicos.
- Uso de Container Insights de Azure Monitor para supervisar los contenedores.
En el resto de unidades de este módulo encontrará más información sobre estas características.