¿Cuál es la diferencia entre un contenedor Docker y un Ansible Playbook?


Me parece que ambas herramientas se utilizan para instalar fácilmente y configurar automáticamente las aplicaciones.

Sin embargo, he utilizado limitadamente Docker y no he utilizado Ansible en absoluto. Así que estoy un poco confundido.

Cada vez que busco una comparación entre estas dos tecnologías, encuentro detalles sobre cómo usar estas tecnologías en combinación.

Author: Jinesh, 2015-05-30

2 answers

Hay muchas razones por las que la mayoría de los artículos hablan de usarlos juntos.

Piense en Ansible como una forma de instalar y configurar una máquina donde puede volver atrás y modificar cualquier paso individual de esa instalación y configuración en el futuro. A continuación, puede escalar ese concepto a muchas máquinas a medida que pueda administrar.

Una diferencia clave donde Ansible tiene una ventaja es que no solo puede administrar los componentes internos de la máquina, sino también administrar otros sistemas como redes, DNS, monitoreo, etc. que rodean la máquina.

Construir muchas máquinas a través de Ansible lleva casi tanto tiempo hacer 50 máquinas como hacer 1, ya que las 50 se crearán paso a paso. Si está ejecutando una implementación móvil en varios entornos, esta compilación paso a paso requiere tiempo.

Ahora piense en Docker como haber construido una de esas máquinas individuales, instalada y configurada y lista para ser implementada dondequiera que se encuentre un sistema docker disponible (que está casi en todas partes en estos días). El inconveniente aquí es que no puede administrar todos los demás aspectos necesarios para hacer que los contenedores docker realmente funcionen, y ajustarlos a largo plazo no es tan divertido como parece si no ha automatizado la configuración (por lo tanto Ansible ayuda aquí).

Escalar de 1 a 50 máquinas Docker una vez que ya haya creado la imagen inicial es cegadoramente rápido en comparación con el enfoque paso a paso que toma Ansible, y esto es lo más obvio durante un despliegue rodante de muchas máquinas en grupos más pequeños.

Cada uno tiene sus inconvenientes en habilidad o velocidad. Combinar ambos, sin embargo, y puede ser bastante impresionante. Como sin duda con la mayoría de los artículos que ya ha leído, le recomendaría usar Ansible para crear (y actualizar) su(s) contenedor (s) de Docker base y luego usar Ansible para administrar el despliegue de cualquier escala de contenedores que necesite para satisfacer el uso de sus aplicaciones.

 33
Author: PhillipHolmes,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-30 20:46:35

Son cosas completamente diferentes. Ansible se utiliza para automatizar la configuración y gestión de máquinas / contenedores una Docker es un sistema de contenedores ligero para Linux.

Http://www.ansible.com/home

Https://www.docker.com/

 -3
Author: errata,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-30 19:59:44