kompose instalar deploy compose como docker containers kubernetes docker-compose

docker - instalar - kubectl install



¿Cuáles son las diferencias entre Kubernetes Pods y Docker Compose(s)(Composures?) (2)

Tanto Kubernetes Pods como los resultados de los scripts Docker Compose (en adelante, "Compositions") parecen dar como resultado clusters de computadoras virtuales.

Las computadoras de los clústeres pueden configurarse para que hablen entre sí, de modo que pueda escribir un solo guión que refleje toda la configuración de producción de extremo a extremo. Un solo script le permite implementar ese clúster en cualquier contenedor-host.

Dadas las similitudes entre los dos sistemas, estoy luchando por entender cuáles son las diferencias entre los dos.

¿Por qué elegiría uno sobre el otro? ¿Son sistemas mutuamente excluyentes o puedo ejecutar composiciones en kubernetes?

¿Hay alguna consideración crítica que deba tenerse en cuenta al diseñar un sistema de contenedor? Si estoy diseñando la arquitectura de un sitio hoy , me gustaría intentar construir un sistema basado en contenedores. ¿Cuáles son las cosas de mayor prioridad que debería diseñar? (en comparación con construir en un solo sistema de máquina)


Aunque la respuesta anterior responde claramente a esta pregunta simplemente agregando algunas notas rápidas.

  1. Los pod de Docker-Compose y Kubernetes son archivos de configuración (Yaml) que definen instancias de contenedores a partir de imágenes.

  2. La compilación Docker en sí misma es solo un archivo que, como la capacidad de contener servicios (contenedores) para la comunicación, no está distribuido intrínsecamente.

  3. Kubernetes pods también como la capacidad de definir contenedores múltiples, pero la principal diferencia aquí es la noción es la distribución entre los nodos disponibles.
  4. Y, por último, Docker Compose es una herramienta para definir y ejecutar aplicaciones Docker de varios contenedores sin orquestación, a menos que se lo indique con Swarm. Y un pod contiene varios contenedores que se comparten automáticamente en un clúster de nodos si están disponibles.

docker compose es solo una forma de declarar el contenedor que debe iniciar: no tiene noción de nodo o clúster , a menos que se inicie enjambre maestro y enjambre nodos, pero eso es docker swarm )
Actualice julio de 2016, 7 meses después: el docker 1.12 borra las líneas e incluye un "modo de enjambre" .

Es muy diferente de los kubernetes , una herramienta de google para administrar miles de grupos de contenedores como Pod, en decenas o cientos de máquinas.

Una cápsula de Kubernetes estaría más cerca de un enjambre de estibadores :

Imagine contenedores individuales Docker como cajas de embalaje. Los cuadros que necesitan permanecer juntos porque necesitan ir al mismo lugar o tener una afinidad entre ellos se cargan en contenedores de envío.
En esta analogía, las cajas de embalaje son contenedores Docker, y los contenedores de envío son contenedores de Kubernetes.

Como se comenta a continuación por ealeon :

Creo que pod es equivalente a componer, excepto que los kubernetes pueden orquestar pods, mientras que no hay nada que orquestar componer a menos que se use con un enjambre como lo has mencionado.

Por cierto, puede ejecutar comandos kubernetes con docker-compose .

En términos de cómo Kubernetes difiere de otros sistemas de gestión de contenedores, como Swarm, Kubernetes es la tercera iteración de administradores de clúster que Google ha desarrollado.

Puedes escuchar más sobre kubernetes en el episodio # 3 de Google Cloud Platform Podcast .

Si bien es cierto que ambos pueden crear una aplicación de varios contenedores, un Pod también sirve como una unidad de implementación y escala / replicación horizontal, que Docker no proporciona.
Además, no crea un pod directamente, sino que usa controladores (como controladores de replicación).

POD vive dentro de una plataforma más grande que ofrece coubicación (co-programación), intercambio de destinos, replicación coordinada, uso compartido de recursos y administración de dependencias.
Docker-compone vidas ... por sí mismo, con su archivo docker-compose.yml