14 Herramientas de orquestación de contenedores para DevOps

Hablemos de algunas de las herramientas populares de orquestación de contenedores disponibles en el mercado.

Contents
  1. ¿Qué es la orquestación del contenedor?
  2. Kubernetes
  3. OpenShift
  4. Nómada
  5. ROE DOCKER
  6. Apache Mesos es un administrador de clúster de código abierto. Mesos es un proyecto Apache que le permite ejecutar cargas de trabajo contenedorizadas y no contenidas. Los componentes principales de un clúster Mesos son los nodos de agente de Mesos, Mesos Master, Zookeeper y Platforms. Las plataformas se coordinan con el maestro para programar tareas en los nodos del agente. Los usuarios interactúan con la plataforma Marathon para programar tareas.
  7. Nube
  8. Rancher es una plataforma de código abierto que utiliza una orquestación de contenedores conocida como ganado. Le permite usar servicios de orquestación como Kubernetes, Swarm y Mesos. Rancher proporciona el software necesario para administrar contenedores, para que las organizaciones no tengan que crear plataformas de servicios de contenedores desde cero utilizando un conjunto separado de tecnologías de código abierto.
  9. Registros de auditoría
  10. Escala de carga de trabajo automática
  11. AZK utiliza contenedores en lugar de máquinas virtuales. Los contenedores son similares a las máquinas virtuales, pero con un mejor rendimiento y menos consumo de recursos físicos.
  12. CCE
  13. Google Cloud proporciona herramientas de CI/CD para ayudarlo a construir y mantener contenedores de aplicaciones. Puede usar la compilación de la nube para crear imágenes de contenedores (como Docker) a partir de varios repositorios de código fuente y registro de contenedores para almacenar imágenes de contenedores.
  14. toadmin. ru.

¿Qué es la orquestación del contenedor?

Las plataformas de contenedores como Docker son muy populares en estos días para las aplicaciones de empaque basadas en la arquitectura de microservicios. Los contenedores se pueden hacer escalables, lo que se puede crear a pedido. Si bien esto está bien para algunos contenedores, pero imagina que tienes cientos de ellos.

Se vuelve extremadamente difícil administrar el ciclo de vida y la gobernanza del contenedor cuando el número de contenedores crece dinámicamente con la demanda.

La orquestación de contenedores resuelve el problema al automatizar la planificación, la implementación, la escalabilidad, el equilibrio de carga, la disponibilidad y la red de contenedores. La orquestación de contenedores es la gestión de automatización y ciclo de vida de contenedores y servicios.

Es el proceso de administrar y orquestar múltiples arquitecturas de contenedores y microservicios a escala.

Afortunadamente, hay muchas herramientas de orquestación de contenedores disponibles en el mercado.

¡Vamos a explorarlos!

Kubernetes

Lo adivinaste, ¿no?

Kubernetes es una plataforma de código abierto desarrollada originalmente por Google y ahora compatible con Cloud Native Computing Foundation. Kubernetes admite la personalización declarativa y la automatización. Puede ayudar a automatizar la implementación, escala y administración de cargas y servicios de trabajo contenedores.

Imagen de Kubernetes. io

La API de Kubernetes ayuda a establecer la comunicación entre usuarios, componentes de clúster y componentes externos de terceros. El plano de control de Kubernetes y los nodos se ejecutan en un grupo de nodos que juntos forman un clúster. Una carga de trabajo de aplicación consta de uno o más módulos que se ejecutan en los nodos de los trabajadores. El plano de control administra los módulos y los nodos de los trabajadores.

Las empresas como Babylon, Booking. com y AppDirect usan Kubernetes ampliamente.

  • Descubrimiento de servicios y equilibrio de carga
  • Orquestación de almacenamiento
  • Implementaciones automáticas y reversiones
  • Escala horizontal
  • Secretos y gestión de configuración
  • Autocuración
  • Ejecución por lotes
  • Pila dual IPv4/IPv6
  • Embalaje automático de búnker

¿Quieres aprender Kubernetes? Echa un vistazo a estos recursos de aprendizaje.

OpenShift

Redhat ofrece la plataforma de contenedores OpenShift como servicio (PAAS). Ayuda a automatizar aplicaciones en recursos seguros y escalables en entornos de nubes híbridas. Proporciona plataformas de grado empresarial para construir, implementar y administrar aplicaciones contenedores.

Imagen de OpenShift

Está construido en el motor Redhat Enterprise Linux y Kubernetes. OpenShift tiene varias características para administrar grupos a través de la interfaz de UI y la línea de comandos. Redhat proporciona OpenShift en otras dos variantes:

  • OpenShift Online: ofrecido como software como servicio (SaaS).
  • OpenShift dedicado: ofrecido como un servicio administrado.

OpenShift Origin (Origin Community Distribution) es un proyecto comunitario de código abierto que se utiliza en la plataforma de contenedores OpenShift, OpenShift Online y OpenShift dedicado.

Nómada

Nomad es un orquestador de carga de trabajo simple, flexible y fácil de usar para implementar y administrar aplicaciones contenedores y no contenidas en entornos locales y en la nube a cualquier escala. Nomad se ejecuta como un solo binario con una huella de baja recursos (35 MB) y es compatible con macOS, Windows y Linux.

Los desarrolladores usan infraestructura declarativa como código (IAC) para implementar sus aplicaciones y definir cómo se debe implementar la aplicación. Nomad recupera automáticamente las aplicaciones después de las fallas.

Imagen de Nomad

Nomad Orchestrate aplicaciones de cualquier tipo (no solo contenedores). Proporciona soporte de primer nivel para Docker, Windows, Java, Máquinas Virtuales y más.

  • Simple y confiable
  • Modernizar aplicaciones heredadas sin sobrescribirlas
  • Federación fácil a escala
  • Escalabilidad comprobada
  • Entornos múltiples con facilidad
  • Integraciones nativas con Terraform, cónsul y bóveda

ROE DOCKER

Docker Roy usa un modelo declarativo. Puede definir su estado de servicio deseado y Docker mantendrá ese estado. Docker Enterprise Edition ha integrado Kubernetes con Swarm. Docker ahora proporciona flexibilidad para elegir un motor de orquestación. El Docker Engine CLI se utiliza para crear múltiples motores Docker en los que se pueden implementar servicios de aplicaciones.

Imagen de Docker

Los comandos Docker se utilizan para interactuar con el clúster. Las máquinas que se unen al clúster se llaman nodos, y el gerente de enjambre maneja las acciones del clúster.

Docker Swarm consta de dos componentes principales:

  • Minikube permite a los usuarios ejecutar Kubernetes localmente. Con Minikube, puede probar aplicaciones localmente dentro de un clúster Kubernetes con un solo nodo en su computadora personal. Minikube tiene soporte incorporado para el panel de Kubernetes.
  • Minikube ejecuta la última versión estable de Kubernetes y admite las siguientes funciones.
  • Balanceo de carga
  • Múltiple
  • Volúmenes persistentes
  • Nodeports
  • Configmaps y secretos
  • Entorno de tiempo de ejecución de contenedores: Docker, Cri-O y Contenedores
  • Habilitar CNI (interfaz de red de contenedores)
  • Maratón
  • Marathon está diseñado para Mesos Apache, que tiene la capacidad de orquestar aplicaciones y marcos.

Apache Mesos es un administrador de clúster de código abierto. Mesos es un proyecto Apache que le permite ejecutar cargas de trabajo contenedorizadas y no contenidas. Los componentes principales de un clúster Mesos son los nodos de agente de Mesos, Mesos Master, Zookeeper y Platforms. Las plataformas se coordinan con el maestro para programar tareas en los nodos del agente. Los usuarios interactúan con la plataforma Marathon para programar tareas.

El programador de maratón usa Zookeeper para encontrar el maestro actual para enviar tareas. El programador de maratón y el maestro de Mesos tienen un maestro secundario que se ejecuta para proporcionar una alta disponibilidad. Los clientes interactúan con Marathon usando la API REST.

Alta disponibilidad

Aplicaciones con estado

Hermosa y poderosa interfaz

Limitaciones

Descubrimiento de servicios y equilibrio de carga

  • Controles de salud
  • Suscripción de eventos
  • Métrica
  • API REST

Nube

Cloud es una herramienta de orquestación en la nube de código abierto para automatizar la implementación y la gestión del ciclo de vida de contenedores y microservicios. Proporciona características como agrupación a pedido, recuperación automatizada y escala a nivel de infraestructura. Cloudify puede administrar la infraestructura de contenedores y coordinar los servicios que se ejecutan en plataformas de contenedores.

Se puede integrar fácilmente con los gerentes de contenedores basados en Docker y Docker, incluido lo siguiente.

  • Habilitar CNI (interfaz de red de contenedores)
  • Enjambre de Docker
  • Docker componer
  • Kubernetes
  • Mesos de Apache
  • Cloudify puede ayudar a crear, restaurar, escalar y eliminar grupos de contenedores. La orquestación de contenedores juega un papel clave en el proporcionar una infraestructura escalable y altamente disponible en la que los gerentes de contenedores pueden operar. Cloudify proporciona la capacidad de orquestar servicios heterogéneos en todas las plataformas. Puede implementar aplicaciones utilizando la interfaz de línea de comandos y Cloudify Manager.
  • ranchero

Rancher es una plataforma de código abierto que utiliza una orquestación de contenedores conocida como ganado. Le permite usar servicios de orquestación como Kubernetes, Swarm y Mesos. Rancher proporciona el software necesario para administrar contenedores, para que las organizaciones no tengan que crear plataformas de servicios de contenedores desde cero utilizando un conjunto separado de tecnologías de código abierto.

Rancher 2. x le permite administrar clústeres de Kubernetes que se ejecutan en proveedores especificados por el cliente.

Comenzar con Rancher consta de dos pasos.

Prepara un host de Linux

  • Prepare un host Linux con una versión de 64 bits de Ubuntu 16. 04 o 18. 04 (u otra distribución de Linux compatible y al menos 4 GB de memoria). Instale una versión compatible de Docker en el host.
  • Iniciar el servidor
  • Para instalar y ejecutar Rancher, ejecute el siguiente comando Docker en su host:
  • $ sudo Docker Ru n-d – -resart = a menos que se cubr a-p 80:8 0-p 443: 443 rancher/rancher
  • Descubrimiento de servicios y equilibrio de carga
  • Barco mercante
  • Containership está diseñado para implementar y administrar una infraestructura de Kubernetes múltiples. Flexibilidad para trabajar en entornos públicos, privados de nubes y locales con una sola herramienta. Le permite aprovisionar, administrar y monitorear los grupos de Kubernetes de todos los principales proveedores de nubes.
  • El contenedor se construye utilizando herramientas en la nube como Terraform para la preparación, Prometheus para el monitoreo y Calico para la gestión de redes y políticas. Está construido sobre Vanilla Kubernetes. La plataforma de contenedores ofrece un tablero intuitivo, así como una potente API REST para la automatización de extremo a extremo.
  • Tablero de múltiples nubes

Registros de auditoría

Soporte de instancia de GPU

Actualizaciones no interromitables

  • Magos programados
  • ROE DOCKER
  • Apache Mesos es un administrador de clúster de código abierto. Mesos es un proyecto Apache que le permite ejecutar cargas de trabajo contenedorizadas y no contenidas. Los componentes principales de un clúster Mesos son los nodos de agente de Mesos, Mesos Master, Zookeeper y Platforms. Las plataformas se coordinan con el maestro para programar tareas en los nodos del agente. Los usuarios interactúan con la plataforma Marathon para programar tareas.
  • Kubernetes
  • Soporte para el almacenamiento persistente

Soporte de registro privado

Escala de carga de trabajo automática

Gestión de clave SSH

ACP

AZK es una herramienta de orquestación de código abierto para entornos de desarrollo a través de un archivo manifiesto (Azkfile. js) que ayuda a los desarrolladores a instalar, configurar y ejecutar herramientas de uso común para desarrollar aplicaciones web con varias tecnologías de código abierto.

AZK utiliza contenedores en lugar de máquinas virtuales. Los contenedores son similares a las máquinas virtuales, pero con un mejor rendimiento y menos consumo de recursos físicos.

Los archivos AZKFILE. JS se pueden reutilizar para agregar nuevos componentes o crear otros nuevos desde cero. Se puede compartir, asegurando plena consistencia entre los entornos de desarrollo en las diferentes computadoras de los programadores y reduciendo la posibilidad de errores durante la implementación.

CCE

GKE proporciona una solución totalmente administrada para orquestar aplicaciones contenedores en Google Cloud Platform. Los grupos de GKE se ejecutan en la plataforma Kubernetes. Puede interactuar con los grupos utilizando la CLI Kubernetes. Puede usar los comandos Kubernetes para implementar y administrar aplicaciones, realizar tareas de administración, establecer políticas y monitorear la salud de las cargas de trabajo implementadas.

Imagen de GCP

Las funciones avanzadas de gestión de la nube de Google también están disponibles con clústeres de GKE, como el equilibrio de carga en la nube de Google, los grupos de nodos, la escala automática de nodos, las actualizaciones automáticas, la recuperación automática de nodos, el registro y el monitoreo con el conjunto de operaciones de Google Cloud.

Google Cloud proporciona herramientas de CI/CD para ayudarlo a construir y mantener contenedores de aplicaciones. Puede usar la compilación de la nube para crear imágenes de contenedores (como Docker) a partir de varios repositorios de código fuente y registro de contenedores para almacenar imágenes de contenedores.

GKE es una solución preparada para la empresa con plantillas de implementación listas para usar.

¿Interesado en aprender más sobre GKE? Mira este curso para principiantes.

  • Aks
  • AKS es un servicio Kubernetes totalmente administrado ofrecido por Azure que ofrece Kubernetes sin servidor, seguridad y administración. AKS gestiona su clúster Kubernetes y facilita la implementación de aplicaciones contenedores. AKS configura automáticamente todos los nodos maestros y nodos Kubernetes. Solo necesita administrar y mantener los nodos del agente.
  • Imagen de Azure
  • AKS es gratis; Solo paga los nodos de los agentes en su clúster, no al maestro. Puede crear un clúster AKS en el portal de Azure o programáticamente. Azure también admite características adicionales, como capacidades de red avanzadas, integración con Azure Active Directory y monitoreo con Azure Monitor.
  • AKS también admite contenedores de Windows Server. El rendimiento de su clúster y la aplicación implementada se puede monitorear utilizando Azure Monitor. Los registros se almacenan en el espacio de trabajo de Azure Log Analytics.
  • AKS ha sido certificado como compatible con Kubernetes.
  • Ams aks.
  • AMS EKS es un servicio Kubernetes totalmente administrado. AWS le permite ejecutar un clúster EKS usando AWS Fragance, que es la computación sin servidor para contenedores. La fragancia elimina la necesidad de dedicar y administrar servidores, lo que le permite pagar por aplicación por recurso.
  • AWS permite características adicionales con EKS, como Amazon CloudWatch, Amazon Virtual Private Cloud (VPC), identidad de AWS, grupos de escala automática y gestión de acceso (IAM), aplicaciones de monitoreo, escalado y equilibrio de carga. EKS se integra con la red de aplicaciones de AWS y proporciona capacidades de Kubernetes. EKS trabaja con la última versión de Kubernetes y tiene certificación de Kubernetes.
  • Conclusión
  • Al final, espero que la lista anterior haya dado una idea clara sobre las diferentes herramientas de orquestación de contenedores y ahora, dependiendo del caso de uso, será más fácil elegir la mejor.
  • Luego busque el software de administración de Kubernetes.

toadmin. ru.