GNU/Linux >> Tutoriales Linux >  >> Linux

Diferencia entre contenedorización y orquestación:la perspectiva de un laico

Contenedorización y Orquestación.

Es posible que haya encontrado estos dos términos en el mundo de DevOps, especialmente si es un administrador de sistemas.

Ya hay muchos artículos que han tratado de explicar la diferencia entre contenedorización y orquestación, pero la mayoría de ellos centran su comparación en Docker y Kubernetes.

Antes de diferenciar entre software, es esencial comprender primero la diferencia entre su propósito y por qué se desarrollaron en primer lugar.

Entonces, en esta lectura rápida, he tratado de explorar qué significan realmente los términos contenedorización y orquestación como conceptos básicos para principiantes y novatos.

¿Cómo se puede diferenciar entre contenedorización y orquestación? Usemos una analogía.

La perspectiva de un laico sobre la contenedorización y la orquestación

La palabra contenedor representa un gran paralelepípedo aislado en un entorno individual. Estos contenedores almacenan carga y se cargan en un barco.

Puedes imaginarlo como los contenedores atracados en un barco en un astillero.

"Atracado", "Astillero" y "Docker"! ¿Te suenan estos términos?

La palabra orquesta representa a un grupo de músicos que interpretan una nota musical en perfecta sincronización, con la ayuda de un director de orquesta o concertino.

Esta armonía musical perfectamente sincronizada es lo que llamas orquestación.

Ahora, cuando lo mira desde una perspectiva de DevOps y trata de comprender cómo se adoptó esta idea para la gestión de aplicaciones que se ejecutan dentro de los sistemas informáticos, debe reemplazar a los músicos con "barcos" de contenedores.

Las aplicaciones que he mencionado aquí son muy comparables a la carga contenida dentro del contenedor de un barco.

Por lo tanto, puede visualizar el software Docker como un barco, acoplado con diferentes contenedores que ejecutan diferentes aplicaciones. La forma en que se dirige este barco depende del "intendente". Docker contiene una aplicación para que se ejecute como una sola unidad aislada.

Así como un intendente es responsable de vigilar de cerca la navegación, el gobierno y las señales de un barco, Docker es responsable de administrar de manera eficiente los contenedores que se ejecutan en un sistema informático.

Tenga en cuenta que estos contenedores ejecutan aplicaciones individuales dentro de sus propios entornos basados ​​en sistemas operativos aislados como máquinas virtuales o servidores físicos.

Se pueden ejecutar varios contenedores en una sola máquina virtual o servidor. Puede pensar en estas máquinas virtuales o servidores representados como barcos.

¿Cómo puedes ahora visualizar Kubernetes en la misma línea? Piense en varios barcos ahora.

Cada uno de estos barcos lleva varios contenedores. Kubernetes organiza varias máquinas virtuales o nodos para que se ejecuten en completa sincronización entre sí.

Aunque el término Kubernetes significa timonel o piloto de un barco, nuestra analogía se entendería mejor si relacionamos ese término con un "capitán de puerto".

Así como un capitán de puerto logra "orquestar" una multitud de barcos que llegan o salen de un puerto, Kubernetes hace lo mismo pero con múltiples máquinas virtuales que ejecutan varios contenedores. Si solo hay un barco (sistema), aún podría usar la misma analogía para varios contenedores.

Todavía puede continuar usando la palabra "rendimiento". Pero en lugar de la interpretación musical en una orquesta o la interpretación de una flota en un puerto, ahora tiene la interpretación del sistema en un servidor.

Espero que ahora pueda visualizar claramente la diferencia fundamental entre la organización en contenedores y la orquestación en servidores físicos.

Con base en este entendimiento, concluyamos ahora con algunas definiciones simples para ambos.

Contenerización

La contenedorización es el aislamiento de aplicaciones para su implementación dentro de entornos basados ​​en sistemas operativos individuales dentro de máquinas virtuales o servidores físicos, también conocidos como nodos en general. Un ejemplo de una herramienta de creación de contenedores de este tipo es Docker.

Orquestación

La orquestación es el método de sincronizar varios contenedores que se ejecutan en varios nodos y también en los propios nodos. Estos nodos pueden ser máquinas virtuales o servidores físicos. Un ejemplo de una herramienta de orquestación de este tipo es Kubernetes.

Tenga en cuenta que Kubernetes también es capaz de realizar la creación de contenedores, al igual que Docker Swarm puede realizar la orquestación.

Espero que encuentre útil este artículo, y ahora puede distinguir entre los dos conceptos a través de la analogía descrita. Si desea compartir algún comentario, sugerencia o comentario, utilice la sección a continuación.


Linux
  1. ¿Diferencia entre Shell de inicio de sesión y Shell sin inicio de sesión?

  2. ¿Diferencia entre 2>&-, 2>/dev/null, |&, &>/dev/null y>/dev/null 2>&1?

  3. ¿Cuál es la diferencia entre Sudo Su y Sudo Su?

  4. Diferencia entre ${} y $() en Bash

  5. diferencia entre cgroups y espacios de nombres

Explicación de la diferencia entre apt y apt-get

¿Diferencia entre tubería y expansión de comando?

¿Diferencia entre el usuario de Sudo y el usuario raíz?

¿Diferencia entre Snat y Masquerade?

¿Diferencia entre $HOME y '~' (tilde)?

diferencia entre netstat y ss en linux?