Orquestación de contenedores
leadspace en la nube
Orquestación de contenedores

La orquestación de contenedores automatiza y simplifica el aprovisionamiento, la implementación y la administración de aplicaciones en contenedores.

Productos destacados

Red Hat OpenShift on IBM Cloud

IBM Cloud Satellite

IBM Cloud Code Engine

IBM Cloud Kubernetes Service


¿Qué es la orquestación de contenedores?

La orquestación de contenedores automatiza el aprovisionamiento, la implementación, las redes, el escalado, la disponibilidad y la gestión del ciclo de vida de los contenedores. Actualmente, Kubernetes es la plataforma de orquestación de contenedores más popular, y la mayoría de los principales proveedores de nube pública, incluidos Amazon Web Services (AWS), Google Cloud Platform, IBM Cloud y Microsoft Azure, ofrecen servicios administrados de Kubernetes. Otras herramientas de orquestación de contenedores incluyen Docker Swarm y Apache Mesos.


Más sobre contenedores y por qué necesitan orquestación

Los contenedores son componentes de aplicaciones ejecutables y ligeros que combinan el código fuente de la aplicación con todas las bibliotecas del  sistema operativo (SO) y las  dependencias  necesarias para ejecutar el código en cualquier entorno. 

La capacidad de crear contenedores ha existido durante décadas, pero pasó a estar ampliamente disponible en 2008 cuando Linux incluyó la funcionalidad de contenedor dentro de su kernel, y se usaba ampliamente con la llegada de la plataforma de contenedorización de fuente abierta Docker  , en 2013. (Docker es tan popular que "contenedores de Docker" y "contenedores" a menudo se usan indistintamente). 

Por ser más pequeños, más eficientes en recursos y más portátiles que las maquinas virtuales (VM), los contenedores y, más específicamente, los microservicios contenedorizados o las funciones sin servidor, se han convertido en las unidades de computación de facto de las aplicaciones modernas nativas de la nube. (Para obtener más información sobre los beneficios de los contenedores, consulte la visualización de datos interactiva a continuación)

En pequeñas cantidades, los contenedores son bastante fáciles de implementar y administrar manualmente. Pero en la mayoría de las organizaciones el número de aplicaciones en contenedores está creciendo rápidamente y administrarlos a escala, especialmente como parte de una integración continua/entrega continua (CI/CD) o pipeline DevOps, es imposible sin  automatización.

Ingrese a la orquestación de contenedores, que automatiza las tareas de operaciones en torno a la implementación y ejecución de aplicaciones  y servicios contenedorizados. De acuerdo a la más reciente investigación de IBM (PDF, 1,4 MB),  El 70 % de los desarrolladores que usan contenedores informan que usan una solución de orquestación de contenedores, y el 70 % de ellos informan que usan un servicio de orquestación de contenedores completamente administrado (administrado en la nube) en su organización.

Descargue el informe completo: contenedores en la empresa

Cómo funciona la orquestación de contenedores

Si bien existen diferencias en las metodologías y capacidades entre las herramientas, la orquestación de contenedores es esencialmente un proceso de tres pasos (o ciclo, cuando es parte de un proceso iterativo ágil o pipeline DevOps ).

La mayoría de las herramientas de orquestación de contenedores soportan un modelo declarativo de configuración: un desarrollador escribe un archivo de configuración (en YAML o JSON  dependiendo de la herramienta) que define un estado de configuración deseado, y la herramienta de orquestación ejecuta el archivo y utiliza su propia inteligencia para lograr ese estado. El archivo de configuración  típicamente

  • Define cual contenedor de imágenes  compone la aplicación y dónde se encuentra (en qué registro)
  • Dota a los contenedores de almacenamiento y otros recursos.
  • Define y protege las conexiones de red entre contenedores.
  • Especifica el control de versiones (para rollouts progresivos o canarios)

La herramienta de orquestación programa la implementación de los contenedores (y las réplicas de los contenedores, para la resiliencia) en un host, eligiendo el mejor host en función de la capacidad de CPU disponible, la memoria u otros requisitos o restricciones especificados en el  archivo de configuración. 

Una vez que se implementan los contenedores, la herramienta de orquestación administra el ciclo de vida de la aplicación contenedorizada  con base en el archivo de definición del contenedor (muy a menudo un Dockerfile). Esto incluye 

  • Gestinoar la escalabilidad (hacia arriba y abajo), equilibrio de carga y asignación de recursos   entre los contenedores; 
  • Garantizar la disponibilidad y el rendimiento mediante la reubicación de los contenedores a otro host en caso de una interrupción o una escasez de recursos del sistema.
  • Recopilar y almacenar datos de registro y otra telemetría que se usa para monitorear el estado y el rendimiento de la aplicación.

Beneficios de la orquestación de contenedores


Probablemente esté claro que el principal beneficio de la orquestación de contenedores es la automatización , y no solo porque reduce en gran medida el esfuerzo y la complejidad de gestionar un gran patrimonio de aplicaciones contenedorizadas . Al automatizar las operaciones, la orquestación es compatible con un enfoque agile o DevOps  que permite a los equipos desarrollar e implementar en ciclos rápidos e iterativos y lanzar nuevas funciones y capacidades más rápidamente.

Además, la inteligencia de una herramienta de orquestación  puede mejorar o extender  muchos de los beneficios inherentes de la contenedorización. Por ejemplo, la selección automática de hosts y la asignación de recursos. , basada en configuraciones declarativas , maximiza el uso eficiente de los recursos informáticos; el control automático del estado y la reubicación de contenedores, maximizando la disponibilidad.


Kubernetes

Como se señaló anteriormente, Kubernetes es la plataforma mas popular  de orquestación de contenedores. Junto con otras herramientas en el ecosistema de contenedor , Kubernetes permite a una empresa ofrecer una  plataforma como servicio (PaaS)  altamente productiva que aborda muchas de las tareas y problemas relacionados con la infraestructura y las operaciones en relación al desarrollo de aplicaciones nativas de la nube , para que los equipos de desarrollo puedan centrarse exclusivamente en la codificación y la innovación.

Las ventajas de Kubernetes sobre otras soluciones de orquestación son en gran parte el resultado de su funcionalidad más completa y sofisticada en varias áreas, que incluyen:

  • Implementación de contenedores. Kubernetes implementa un número especificado de contenedores en un host especificado y los mantiene funcionando en un  estado deseado. 
  • Rollouts. Un rollout es un cambio en una implementación. Kubernetes  le permite iniciar, pausar, reanudar o revertir los rollouts .
  • Descubrimiento de servicios. Kubernetes  puede exponer automáticamente un contenedor a Internet o a otros contenedores utilizando un nombre DNS  o una dirección de IP. 
  • Storage provisioning. Los desarrolladores pueden configurar  Kubernetes para montar un almacenamiento persistente local o en la nube para sus contenedores según sea necesario. 
  • Equilibrio de carga y  escalabilidad. Cuando aumenta el tráfico hacia un contenedor, Kubernetes puede emplear balanceo de carga  y escalado para distribuirlo por la red para garantizar la estabilidad y el rendimiento. (También les ahorra a los desarrolladores el trabajo de configurar un  equilibrador de carga.)
  • Autorreparable para alta disponibilidad. Cuando un contenedor falla, Kubernetes  puede reiniciarlo o reemplazarlo automáticamente. También puede derribar contenedores que no cumplan con sus requisitos de control de salud. 
  • Soporte y portabilidad a través de múltiples  proveedores de la nube. Como se señaló anteriormente, Kubernetes disfruta de un amplio soporte en todos los proveedores de nube líderes. Esto es especialmente importante para las organizaciones que están implementando aplicaciones en un ambiente de nube híbrida  o multinube híbrida  .
  • Creciente ecosistema de instrumentos de fuente abierta . Kubernetes  también cuenta con un depósito en constante expansión de herramientas de uso y redes para mejorar sus capacidades a través de la API de Kubernetes. Éstas incluyen Knative, que permite que los contenedores se ejecuten como cargas de trabajo sin servidor; y Istio, una malla de servicios de código abierto. 

Descubra más acerca de  Kubernetes


Orquestación de contenedores e IBM Cloud

Los contenedores son ideales para modernizar sus aplicaciones y optimizar su infraestructura de TI. Los servicios de contenedor de  IBM Cloud, basados en tecnologías de  código abierto  como  Kubernetes, pueden facilitar y acelerar su camino hacia el desarrollo de aplicaciones  nativas de la nube  y hacia un enfoque de nube híbrida abierta que integra las mejores características y funciones de la nube privada, la  nube pública e infraestructuras de TI locales.

Dé el siguiente paso:

  • Descubra cómo puede implementar clústeres de Kubernetes totalmente administrados y de alta disponibilidad para sus aplicaciones contenedorizadas con un solo clic utilizando Red Hat OpenShift en IBM Cloud.
  • Implemente y administre aplicaciones en contenedores consistentemente a través de entornos locales, de edge compuring, y de nube publica de cualquier proveedor con IBM Cloud Satellite.
  • Ejecutar imágenes de contenedor, trabajos por lotes o código fuente como una carga de trabajo sin servidor, sin dimensionamiento, implementación, redes o escalación, con IBM Cloud Code Engine.

Para empezar de inmediato, inscríbase para tener una cuenta en  IBM  Cloud.


Soluciones relacionadas

Modernice las aplicaciones

Cree, modernice y gestione aplicaciones de forma segura en cualquier nube, con confianza


Optimice la infraestructura de almacenamiento

Una estrategia en la nube híbrida abierta le permite crear y gestionar cargas de trabajo desde cualquier lugar, sin dependencia de un proveedor


Infraestructura de TI local

Aproveche las soluciones de infraestructura local abiertas, flexibles y seguras para desbloquear su estrategia de nube híbrida