Menú

Esta página se ha traducido automáticamente. Algunos contenidos pueden no ser perfectos.

Comparte tu opinión

Kubernetes en Azure: cómo funciona y 7 opciones de servicio

Tabla de contenido

Compartir esta página

blank avatar
Jeff Whitaker

¿Cómo puedes ejecutar Kubernetes en Azure?

Kubernetes es una plataforma que está creciendo rápidamente para gestionar aplicaciones en contenedores, componentes de almacenamiento y de red. Permite a los desarrolladores y administradores centrarse en las cargas de trabajo de las aplicaciones, no en los componentes de infraestructura. Kubernetes ofrece una forma cómoda y declarativa de desplegar grandes cantidades de contenedores, con un potente conjunto de API para tareas de gestión.

Kubernetes puede ser complejo de instalar y mantener, sobre todo cuando lo ejecutas en producción y a escala de empresa. Para reducir la complejidad de la gestión de claves y las operaciones de despliegue, como la escalabilidad y las actualizaciones de Kubernetes, puedes usar varios servicios gestionados de Azure, como Azure Kubernetes Service (AKS) y Azure Container Instances (ACI).

En AKS, por ejemplo, Azure gestiona el plano de control de AKS y solo pagas por los nodos de AKS donde se ejecuta la aplicación.

Esto es parte de una extensa serie de guías sobre Kubernetes.

En este artículo vas a aprender:

¿Cuáles son los beneficios de ejecutar Kubernetes en Azure?

Ejecutar Kubernetes en Azure ofrece varios beneficios a las organizaciones que quieren desplegar y gestionar aplicaciones en contenedores. Algunos de los beneficios clave de ejecutar Kubernetes en Azure son:

  • Integración sin fisuras: Azure ofrece integración sin fisuras con Kubernetes, permitiendo a las organizaciones desplegar y gestionar fácilmente aplicaciones en contenedores sobre la infraestructura de Azure.
  • Escalabilidad: Azure proporciona infraestructura escalable que puede adaptarse a las necesidades crecientes de las aplicaciones modernas. Kubernetes en Azure puede escalar fácilmente hacia arriba o hacia abajo para ajustarse a las demandas de la aplicación.
  • Disponibilidad: Azure ofrece alta disponibilidad y recuperación ante desastres para asegurar que los clústeres de Kubernetes estén siempre disponibles y puedan recuperarse rápido de cualquier interrupción.
  • Seguridad: Azure proporciona funciones de seguridad robustas, como seguridad de red, gestión de identidades y accesos, y cifrado, que ayudan a proteger los clústeres de Kubernetes y las aplicaciones que corren en ellos.
  • Automatización: Azure ofrece funciones de automatización que ayudan a automatizar el despliegue, escalado y gestión de clústeres de Kubernetes y las aplicaciones que corren en ellos, reduciendo el tiempo y esfuerzo de gestión.
  • Capacidades de nube híbrida: Azure permite capacidades de nube híbrida, así puedes ejecutar clústeres de Kubernetes tanto en local como en la nube, y mover aplicaciones fácilmente entre ambos entornos.

Azure Kubernetes: arquitectura de referencia

Para mostrar cómo se suele implementar Kubernetes en Azure, Microsoft ofrece una arquitectura de referencia, que es una aplicación de Microsoft implementada en Azure Kubernetes Service (AKS). Esta arquitectura de referencia puede ser el punto de partida para la mayoría de implementaciones.

aks

Fuente: Azure

La arquitectura de referencia está compuesta por:

  • Azure Kubernetes Service (AKS)—en el centro de la arquitectura está AKS.
  • Clúster de Kubernetes—un clúster que ejecuta tus cargas de trabajo, desplegado en AKS. Con AKS solo gestionas los nodos agentes, AKS asume la responsabilidad del plano de control de Kubernetes.
  • Red virtual—AKS crea una red virtual donde se pueden desplegar los nodos agentes. En escenarios avanzados, puedes crear primero una red virtual para tener más control sobre la configuración de subredes, conexiones locales, direcciones IP, etc.
  • Ingress—el ingress proporciona una ruta HTTP/HTTPS para acceder a los servicios del clúster. Detrás de esto, normalmente vas a desplegar un API Gateway para gestionar la autenticación y autorización.
  • Azure Load Balancer—se crea cuando implementas el controlador de ingress NGINX. Se usa para enrutar el tráfico entrante al ingress.
  • Almacenamiento externo de datos—los microservicios suelen ser sin estado y guardan los datos en almacenes externos, como bases de datos relacionales tipo Azure SQL Database o almacenes NoSQL como Cosmos DB.
  • Azure Active Directory (AD)—AKS tiene su propia identidad de Azure AD, que se usa para generar y controlar recursos de Azure para despliegues de Kubernetes. Además de estos mecanismos, Microsoft recomienda usar Azure AD para establecer la autenticación de usuarios en aplicaciones cliente que usen el clúster de Kubernetes.
  • Azure Container Registry (ACR)—se usa para guardar las imágenes Docker de tu organización y usarlas para desplegar contenedores en el clúster. ACR también puede aprovechar la autenticación mediante Azure AD. Otra opción es guardar imágenes Docker en un registro de terceros, como DockerHub.
  • Azure Pipelines—parte del servicio Azure DevOps y te ayuda a automatizar el ciclo de construcción/pruebas/despliegue. También puedes usar una solución CI/CD de terceros como Jenkins.
  • Helm—el gestor de paquetes de Kubernetes. Puedes usarlo para combinar objetos de Kubernetes en un paquete y así facilitar la distribución y el versionado.
  • Azure Monitor—recoge y almacena logs de los servicios de Azure que interactúan con tu clúster de Kubernetes, incluyendo controladores AKS, nodos y contenedores. Puedes usar estos datos para monitorizar aplicaciones, configurar alertas y paneles, y analizar las causas raíz de los errores.

Contenido relacionado: Mejorar el rendimiento de Kubernetes en Azure con Azure NetApp Files

Kubernetes en Azure: 7 opciones de servicio

1. Azure Kubernetes Service

El servicio Azure Kubernetes (AKS) facilita el despliegue de clústeres de Kubernetes gestionados en Azure. AKS descarga tareas críticas de los desarrolladores y administradores, como el monitoreo de estado y el mantenimiento.

Cuando ejecutas en AKS, solo tienes que gestionar los nodos agentes y pagas solo por esos nodos. No hay coste por los nodos master de Kubernetes—estos se configuran y despliegan automáticamente. Puedes configurar otras funciones, como integración con Azure AD, redes avanzadas y monitorización.

Puedes usar la CLI de Azure o el portal de Azure para crear clústeres AKS. Otra opción es usar soluciones de infraestructura como código (IaC) como plantillas de Azure Resource Manager o TerraForm.

Contenido relacionado: How-To Configure Persistent Volumes for Containers in AKS

2. Azure Container Instances

Los contenedores se están volviendo la forma preferida de empaquetar, desplegar y gestionar aplicaciones en la nube. Azure Container Instances te da una forma cómoda de gestionar contenedores en Azure, sin tener que gestionar máquinas virtuales. Las instancias de contenedor arrancan en segundos porque tienen mucha menos sobrecarga que las máquinas virtuales de Azure.

Puedes importar imágenes de contenedores Linux o Windows desde DockerHub, tu Azure Container Registry personal o cualquier otro registro Docker. Azure Container Instances tiene una caché de imágenes populares de sistemas operativos base, ayudándote a desplegar imágenes personalizadas más rápido.

Contenido relacionado:

3. Azure Service Fabric

Service Fabric ofrece una plataforma distribuida que te permite empaquetar y desplegar aplicaciones de microservicios compuestas por contenedores. Service Fabric resuelve muchos de los grandes retos del desarrollo nativo en la nube.

Azure Service Fabric se centra en construir servicios con estado. Puedes aprovechar el modelo de programación del framework de servicios, o ejecutar servicios en contenedores con requisitos de estado, usando el lenguaje o código que prefieras. También puedes crear clústeres de Service Fabric en máquinas Linux locales, Windows Server u otras nubes públicas.

Service Fabric se usa para dar vida a muchos servicios clave de Microsoft, como Microsoft Power BI, Azure SQL Database, Cosmos DB, Dynamics 365 y Skype.

4. Azure Container Registry

Azure Container Registry (ACR) es un servicio privado de registro Docker, construido sobre Docker Registry 2.0 de código abierto. Crea y gestiona registros de contenedores de Azure para guardar y gestionar las imágenes Docker privadas de tu organización.

También puedes usar ACR Tasks para construir contenedores bajo demanda desde imágenes, automatizar tus builds según eventos como commits en tu repositorio de código fuente o actualizaciones de imágenes base.

5. Azure Container Instances

Azure Container Instances (ACI) es un servicio de contenedores serverless de Microsoft Azure. Te permite ejecutar contenedores sin tener que gestionar la infraestructura subyacente. ACI es ideal para cargas de trabajo ligeras, de corta duración y sin estado. Ofrece tiempos de arranque rápidos, tamaños personalizados y facturación por segundo, lo que lo hace rentable y flexible para muchos casos de uso.

6. Azure Container Apps

Container Apps es una plataforma totalmente gestionada para crear, desplegar y escalar aplicaciones en contenedores en Azure. Hace más fácil la gestión de contenedores con autoescalado integrado, actualizaciones continuas e integración con servicios de Azure.

Container Apps soporta dominios personalizados y certificados TLS, y puede ejecutar aplicaciones en varios entornos. Con su arquitectura basada en eventos, te permite crear aplicaciones modernas, resilientes y reactivas que pueden escalar eficientemente según la demanda.

7. Azure Dev Spaces

El servicio Azure Dev Spaces te da un entorno de desarrollo Kubernetes rápido e iterativo para equipos que usan AKS. Azure Dev Spaces te permite depurar y probar todos los componentes de la aplicación en AKS, sin tener que montar máquinas de desarrollo ni configurar dependencias.

Con Azure Dev Spaces puedes generar automáticamente artefactos Docker y Kubernetes para un proyecto, facilitando añadir aplicaciones Kubernetes nuevas y existentes a un desarrollo.

Kubernetes en Azure con Cloud Volumes ONTAP

NetApp Cloud Volumes ONTAP, la solución líder de gestión de almacenamiento de clase empresarial, ofrece servicios de gestión de almacenamiento seguros y probados en AWS, Azure y Google Cloud. La capacidad de Cloud Volumes ONTAP puede escalar hasta los petabytes y es compatible con varios casos de uso, como servicios de archivos, bases de datos, DevOps o cualquier otra carga de trabajo empresarial, con un sólido conjunto de funciones que incluyen alta disponibilidad, protección de los datos, eficiencia del almacenamiento, integración de Kubernetes y mucho más.

En particular, Cloud Volumes ONTAP es compatible con el aprovisionamiento de volúmenes persistentes Kubernetes y los requisitos de gestión de cargas de trabajo en contenedores.

Obtenga más información sobre cómo Cloud Volumes ONTAP ayuda a afrontar los retos de las aplicaciones en contenedores en estas cargas de trabajo de Kubernetes con casos prácticos de Cloud Volumes ONTAP.

Kubernetes en Azure con Azure NetApp Files

Azure NetApp Files es un servicio de almacenamiento de archivos de Microsoft Azure basado en la tecnología de NetApp, que le ofrece las capacidades de archivos en Azure que requieren incluso sus principales aplicaciones de negocio.

Obtenga gestión y almacenamiento de datos de clase empresarial en Azure para que pueda gestionar sus cargas de trabajo y aplicaciones con facilidad, y trasladar todas sus aplicaciones basadas en archivos al cloud.

Azure NetApp Files resuelve los problemas de disponibilidad y rendimiento de las empresas que desean trasladar aplicaciones de misión crítica al cloud, incluidas cargas de trabajo como HPC, SAP, Linux, Oracle y SQL Server, Windows Virtual Desktop, etc.

En particular, Azure NetApp Files le permite migrar más aplicaciones a Azure, incluso sus cargas de trabajo críticas para el negocio, con un rendimiento extremo de los archivos con tiempos de respuesta por debajo del milisegundo.

Más información sobre Kubernetes en Azure

Lea más en nuestra serie de guías sobre Kubernetes en Azure.

Clúster Azure Kubernetes: Despliegue su primer clúster en Azure

Los clústeres Kubernetes contienen recursos, incluyendo un pode o más. Estos pods cumplen funciones específicas o comparten ciertos datos—tienen roles únicos. Para desplegar clústeres de Kubernetes en la nube de Azure puedes usar Azure Kubernetes Service (AKS). Descubre cómo hacerlo en este artículo, que te guía paso a paso por el despliegue y la seguridad de clústeres de Kubernetes en Azure.

Lee más: Azure Kubernetes Cluster: Deploy Your First Cluster on Azure

Out-of-This-World Kubernetes Performance on Azure with Azure NetApp Files

Kubernetes puede ser demasiado complejo al desplegar operaciones de clase empresarial en producción. Para ofrecer un alto nivel de rendimiento, Microsoft se asoció con NetApp para lanzar un nuevo servicio: Azure NetApp Files (ANF). Este artículo te explica cómo lograr fácilmente una latencia ultrabaja y alto rendimiento.

Lee más: Out-of-This-World Kubernetes Performance on Azure with Azure NetApp Files

Address Persistent Storage Woes in Azure Kubernetes Service

Azure Kubernetes Service (AKS) te permite desplegar, configurar y gestionar Kubernetes en la plataforma Azure. Obtienes un montón de funcionalidades que facilitan la migración de cargas de trabajo locales a Azure y te dan control para una gestión sencilla. Para asegurar la estabilidad en el acceso a los datos, puedes usar Azure NetApp Files (ANF) como capa de almacenamiento. Descubre cómo lograr persistencia con este servicio nativo, que está impulsado por NetApp y gestionado por Microsoft.

Lee más: Address Persistent Storage Woes in Azure Kubernetes Service

Azure Container Instance: The Basics and a Quick Tutorial

Azure Container Instances (ACI) es un servicio que te permite ejecutar contenedores directamente en la nube pública de Microsoft Azure, sin tener que usar máquinas virtuales (VMs). Conoce las funciones de Azure Container Instance (ACI), cómo se compara con los orquestadores de contenedores y aprende a crear tus primeras instancias de contenedores.

Lee más: Azure Container Instance: The Basics and a Quick Tutorial

Azure Container Instances vs Azure Kubernetes Service (AKS): How to Choose

Azure Container Instances (ACI) te da una forma sencilla de ejecutar contenedores en la nube de Azure, sin tener que gestionar máquinas virtuales (VMs). Azure Kubernetes Service (AKS) te permite desplegar clústeres de Kubernetes gestionados en Azure. Descubre las diferencias entre ACI y AKS en precio, escalabilidad, seguridad y más.

Lee más: Azure Container Instances vs Azure Kubernetes Service (AKS): How to Choose

GKE vs AKS: Compared on Availability, Security, Tooling, and More

Google Kubernetes Engine (GKE) y Azure Kubernetes Service (AKS) son servicios gestionados de Kubernetes ofrecidos por los principales proveedores de nube. Entiende las diferencias y cómo elegir la solución adecuada para tu organización.

Lee más: GKE vs AKS: Compared on Availability, Security, Tooling, and More

Azure Containers: Top 4 Options for Running Containers on Azure

Microsoft Azure ofrece varios servicios pensados especialmente para ayudarte a ejecutar aplicaciones en contenedores. Descubre los principales servicios de contenedores de Azure, incluyendo Azure Kubernetes Service (AKS) y Azure Container Instances (ACS).

Lee más: Azure Containers: Top 4 Options for Running Containers on Azure

AKS Backup Walkthrough: How to Perform Back Up and Restore Operations in AKS

Los datos en volúmenes persistentes necesitan protección. Para quienes usan el servicio gestionado nativo de Kubernetes en Azure, AKS, hay una solución para eso. AKS funciona perfectamente con Azure Backup para crear y restaurar copias de seguridad de volúmenes persistentes. Este blog te muestra cómo hacerlo paso a paso.

Lee más en AKS Backup Walkthrough: How to Perform Back Up and Restore Operations in AK

Consulta guías adicionales sobre temas clave de Kubernetes

Junto con nuestros socios de contenido, hemos creado guías en profundidad sobre otros temas que también pueden serte útiles mientras exploras el mundo de Kubernetes.

Solución de problemas de Kubernetes

Solución de problemas de Kubernetes

Escrito por Komodor

Seguridad de contenedores

Seguridad de contenedores

Escrito por Tigera

Redes de Kubernetes

Redes de Kubernetes

Escrito por Tigera

Drift chat loading