¿Cuál es la relación entre PaaS y los contenedores (como Docker)?

Las soluciones de contenedores como Docker proporcionan un punto de partida para construir PaaS.

En pocas palabras, PaaS es un método utilizado por un proveedor para ofrecer capacidades de implementación y administración al usuario final. Los contenedores, a su vez, son una de las posibles soluciones técnicas para generar dicho entorno. En resumen, los contenedores hacen posible PaaS.

Contenedores vs. PaaS

Sin embargo, el uso de contenedores ‘tal cual’ no significa que obtenga una solución PaaS. Una infraestructura de contenedor estándar como Docker proporciona herramientas esenciales para ejecutar y administrar sus aplicaciones desde contenedores, pero sin soluciones de orquestación que faciliten y automaticen la escala automática, el enrutamiento del tráfico, el equilibrio de carga, etc., el enfoque aquí es más de ‘construir desde cero’ .

Orquestación

Para que los proveedores de una plataforma aprovechen el software que permite PaaS como Kubernetes. Aprovecha los contenedores para proporcionar un entorno de implementación y tiempo de ejecución para las aplicaciones del cliente. Debido a las poderosas herramientas de orquestación que interactúan con los contenedores Docker, tales soluciones permiten controlar el comportamiento de su aplicación, asignar RAM y CPU adicionales cuando sea necesario, simplificar la administración de compilación, prueba, implementación y lanzamiento y mucho más. Las soluciones de Orchestrator hacen que la administración de contenedores sea más flexible y permiten que los equipos en desarrollo se concentren en desarrollar y ajustar su aplicación en lugar de preocuparse por la infraestructura de contenedores.

Soluciones listas

Para asegurarse de que las aplicaciones del cliente se ejecutan sin problemas, muchos proveedores de PaaS agregan funciones adicionales para agilizar la administración de contenedores ajustando la API, agregando soluciones prefabricadas y propietarias para proporcionar una plataforma totalmente funcional.

Y eso es exactamente lo que hemos hecho con nuestro alojamiento Docker que está construido con contenedores docker, pero utiliza la orquestación de Kubernetes y una serie de componentes preconstruidos para crear un entorno PaaS personalizable. Puede probarlo gratis y ver cómo funcionan los contenedores en PaaS live.

En pocas palabras, los contenedores proporcionan la unidad de ejecución para las aplicaciones en PaaS.

Cada aplicación y servicio que se envía y se inicia en una plataforma requiere una configuración de tiempo de ejecución, recursos de control y aislamiento entre aplicaciones, y el contenedor lo permite. También permite la orquestación de aplicaciones y escalado, iniciando instancias adicionales cuando sea necesario, y proporciona un marco para el registro.

Por ejemplo, hoy Cloud Foundry utiliza Warden ( https://github.com/cloudfoundry/ …) y tendrá soporte para otros contenedores con el lanzamiento del segundo agente de ejecución, Diego. Openshift hoy utiliza SElinux y MCS y será compatible con Docker en V3.

Las tecnologías Docker o generalmente contenedores son un habilitador para los servicios de PaaS. Muchas plataformas PaaS (dokku, pivotal, openshift, aws elasticbeanstalk … etc.) usan contenedores como un bloque de construcción. Diría que PaaS es una capa de automatización y orquestación en muchas capas de IaaS, la más importante de las cuales (el cómputo) ha pasado principalmente de una máquina virtual a un contenedor.

Si desea una mejor comprensión de lo que (más) hace PaaS arriba (contenedores), o cómo se usan exactamente los contenedores, consulte estas notas clave de los chicos de la fundición en la nube (pivotal) en su diseño v2

Como otros dijeron, las soluciones PaaS pueden usar contenedores como la capa subyacente para aplicaciones de empaque. La composición de pilas de aplicaciones complejas con Docker sigue siendo un desafío, ya que los desarrolladores a menudo necesitan:

  • Conéctese a servicios existentes (por ejemplo, equilibrio de carga o base de datos)
  • Facilite los enlaces de variables de entorno de imágenes cruzadas para que los valores no estén codificados, especialmente si una aplicación tiene cientos de dependencias
  • Administre el ciclo de vida de los microservicios basados ​​en Docker para facilitar las copias de seguridad, las actualizaciones de contenedores utilizando scripts probados y certificados, el escalado automático e Isa dijo que la entrega continua utilizando Jenkins o cualquier otro servidor de compilación para actualizar continuamente un contenedor con la última compilación

DCHQ, una plataforma de gestión de gobierno, automatización de implementación y ciclo de vida para aplicaciones basadas en Docker, aborda la mayoría de estos problemas.

Puede registrarse para obtener una cuenta gratuita en http://DCHQ.io . Estamos ejecutando una prueba gratuita de 3 meses y puede obtener hasta 8 GB de memoria.

Descargo de responsabilidad : soy el fundador de DCHQ, una plataforma de gobierno, automatización de implementación y gestión del ciclo de vida para aplicaciones basadas en Docker.

Todavía siento que los enfoques de contenedores como Docker caen bajo el paraguas de Infraestructura como Servicio (IaaS). Esto se debe a que solo proporciona el lado de la plataforma informática y no necesariamente una pila de plataforma . Sin embargo, uno podría crear una oferta de Docker que cargue una pila completa de LAMP o JavaEE y se venda como PaaS. Pero ese soy solo yo.