Resumen
Se trata de un proceso que permite automatizar la implementación, la gestión, el ajuste y la conexión en red de los contenedores. Las empresas que necesitan implementar y gestionar cientos o miles de contenedores de Linux® y hosts se benefician de él.
La organización de los contenedores se puede utilizar en cualquier entorno en el que utilice esta tecnología. Permite implementar la misma aplicación en distintos entornos sin tener que volver a diseñarla. Si los microservicios se alojan en contenedores, es más fácil organizar los servicios, lo cual incluye el almacenamiento, las redes y la seguridad.
Los contenedores proporcionan a las aplicaciones basadas en microservicios una unidad para la implementación de aplicaciones y un entorno de ejecución autónomo ideales. Posibilitan la ejecución de varias partes de una aplicación de forma independiente en los microservicios, en el mismo hardware, con mucho más control sobre cada una de ellas y los ciclos de vida individuales.
La gestión del ciclo de vida de los contenedores con la organización también permite que los equipos de DevOps la incorporen en los flujos de trabajo de integración y distribución continuas (CI/CD). Junto con los equipos de lasinterfaces de programación de aplicaciones (API) y DevOps, los microservicios organizados en contenedores constituyen la base de las aplicaciones originales de la nube.
Uso de la organización de los contenedores
Utilice la organización de los contenedores para automatizar y gestionar estas tareas:
- Preparación e implementación
- Configuración y programación
- Asignación de recursos
- Disponibilidad de los contenedores
- Ampliación o eliminación de contenedores para equilibrar las cargas de trabajo de la infraestructura
- Equilibrio de cargas y enrutamiento del tráfico
- Supervisión del estado de los contenedores
- Configuración de las aplicaciones según el contenedor en el que se ejecutarán
- Mantenimiento de la seguridad de las interacciones entre los contenedores
Herramientas para la organización de los contenedores
Estas herramientas ofrecen un marco para la gestión de los contenedores y la arquitectura de microservicios según sea necesario. Muchas de ellas pueden utilizarse para la gestión del ciclo de vida de los contenedores. Las opciones más conocidas son Kubernetes, Docker Swarm y Apache Mesos.
Kubernetes es una herramienta open source de organización de contenedores que originalmente desarrollaron y diseñaron ingenieros de Google. En 2015, Google donó el proyecto Kubernetes a Cloud Native Computing Foundation, que se había creado recientemente.
El sistema de organización de Kubernetes permite diseñar servicios de aplicaciones que abarcan varios contenedores, programar estos contenedores en un clúster, ampliarlos y gestionar su estado a lo largo del tiempo.
La plataforma elimina muchos de los procesos manuales que permiten la implementación y la ampliación de las aplicaciones organizadas en los contenedores. Puede crear un clúster de grupos de hosts, ya sean máquinas físicas o virtuales, que ejecuten contenedores de Linux, y Kubernetes le brinda la plataforma para gestionar con facilidad y eficacia esos clústeres.
En líneas generales, le permite implementar completamente una infraestructura basada en contenedores en entornos de producción y depender de ella.
Estos clústeres pueden abarcar hosts en nubes públicas, privadas o híbridas. Por este motivo, Kubernetes es la plataforma ideal para alojar aplicaciones originales de la nube que requieren una expansión rápida.
Además, Kubernetes ayuda con la portabilidad de las cargas de trabajo y el equilibrio de cargas al permitir el traslado de las aplicaciones sin tener que volver a diseñarlas.
Elementos principales de Kubernetes:
- Clúster: plano de control y una o más máquinas informáticas o nodos.
- Plano de control: conjunto de procesos que controlan los nodos de Kubernetes. Aquí es donde se originan todas las asignaciones de las tareas.
- Kubelet: servicio que se ejecuta en nodos, lee los manifiestos de los contenedores y garantiza el inicio y el funcionamiento de los contenedores definidos.
- Pod: grupo de uno o más contenedores implementados en un nodo único. Todos los contenedores de un pod comparten la dirección IP, la IPC, el nombre del host y otros recursos.
Funcionamiento de la organización de los contenedores
A la hora de utilizar una herramienta de organización de contenedores, como Kubernetes, deberá describir la configuración de la aplicación con archivos YAML o JSON. Estos le indican a la herramienta de gestión la ubicación de las imágenes de contenedores, la forma de establecer la red y el destino del almacenamiento de los registros.
Cuando se implementa un contenedor nuevo, la herramienta de gestión programa automáticamente la implementación en un clúster y busca el host adecuado, según todos los requisitos y las restricciones que se definieron. Luego, la herramienta de organización gestiona el ciclo de vida del contenedor en función de las especificaciones que se determinaron en el archivo de composición.
Puede usar los patrones de Kubernetes para gestionar la configuración, el ciclo de vida y el ajuste de los servicios y las aplicaciones que se basan en contenedores. Estos patrones replicables son las herramientas que un desarrollador de Kubernetes necesita para diseñar sistemas completos.
La organización de contenedores se puede usar en cualquier entorno en el que se ejecuten estos elementos, como los servidores locales y los entornos de nubes privadas y públicas.
Organización en contenedores para empresas
Las verdaderas aplicaciones de producción abarcan varios contenedores, los cuales deben implementarse en varios hosts de servidores. En este punto es cuando interviene Red Hat®.
Red Hat OpenShift® no solo es Kubernetes para empresas. OpenShift comprende toda la tecnología adicional que convierte a Kubernetes en una herramienta eficaz y conveniente para las empresas. Incluye el registro, las conexiones en red, la telemetría, la seguridad, la automatización y los servicios, entre otras características.
Con herramientas como Red Hat Service Interconnect, los enrutadores y las puertas de enlace proporcionan enlaces de comunicación confiables entre los servicios que se encuentran en distintas nubes, los dispositivos del extremo de la red, la versión estándar de Kubernetes y OpenShift.
Con Red Hat, los desarrolladores pueden crear aplicaciones nuevas en contenedores, alojarlas e implementarlas en la nube, con la alta disponibilidad, la capacidad de ajuste, el control y la organización que se necesitan para transformar una buena idea en nuevos negocios de forma sencilla y rápida.
Software certificado para las implementaciones basadas en contenedores
Pruebe, adquiera y gestione sistemas de software certificados en las nubes privadas y públicas y en su centro de datos. Este es el aspecto destacado de Red Hat Marketplace: es una manera más sencilla de acceder sus sistemas de software de confianza, diseñar aplicaciones en un entorno basado en Kubernetes e implementarlas en todas partes.
Con Red Hat Marketplace, podrá dedicar más tiempo a desarrollar soluciones innovadoras, sin preocuparse por las licencias, los derechos o los vencimientos.