Los contenedores son paquetes de software que incluyen todos los elementos necesarios para que ejecutes tus productos en cualquier entorno. Como virtualizan el sistema operativo, se pueden ejecutar en cualquier parte, desde un centro de datos privado hasta la nube pública o incluso el portátil personal de un desarrollador. Desde Gmail a YouTube, pasando por la Búsqueda, en Google todo se hace en contenedores. La creación de contenedores permite a nuestros equipos de desarrollo moverse con rapidez, desplegar software con eficacia y funcionar a una escala sin precedentes. Hemos aprendido mucho sobre cómo ejecutar las cargas de trabajo en contenedores y hemos compartido esos conocimientos con la comunidad en todo momento: desde la primera etapa en que contribuimos con los cgroups al kernel de Linux hasta que extrajimos los diseños de nuestras herramientas internas y compartimos su código con la comunidad en el proyecto Kubernetes.
Los contenedores son paquetes ligeros que incluyen el código de las aplicaciones junto con sus dependencias, como versiones concretas de entornos de ejecución de ciertos lenguajes de programación y bibliotecas indispensables para ejecutar los servicios de software.
Con los contenedores resulta muy fácil compartir recursos de CPU, memoria, almacenamiento y red a nivel de sistema operativo. Además, constituyen un mecanismo de empaquetado lógico en el que se pueden abstraer las aplicaciones del entorno en el que se ejecutan realmente.
Separación de responsabilidades
La creación en contenedores permite separar de forma clara las responsabilidades, ya que los desarrolladores se centran en la lógica y las dependencias de las aplicaciones, mientras que los equipos de operaciones de TI se dedican a desplegarlas y gestionarlas sin preocuparse por detalles concretos, como versiones de software o configuraciones específicas.
Portabilidad de las cargas de trabajo
Como los contenedores se pueden ejecutar casi en cualquier lugar, resulta facilísimo desarrollarlos y desplegarlos en sistemas operativos Linux, Windows y Mac; en máquinas virtuales o servidores físicos; en equipos de desarrolladores o centros de datos on‑premise; y, por supuesto, en la nube pública.
Aislamiento de aplicaciones
Los contenedores virtualizan los recursos de CPU, memoria, almacenamiento y red a nivel de sistema operativo, lo que proporciona a los desarrolladores una vista del sistema operativo aislado lógicamente de las demás aplicaciones.
Es probable que sepas cómo funcionan las máquinas virtuales: un sistema operativo invitado, como Linux o Windows, se ejecuta en un sistema operativo anfitrión con acceso al hardware subyacente. Piensa en los contenedores como si fueran máquinas virtuales. Al igual que las máquinas virtuales, los contenedores permiten empaquetar las aplicaciones con bibliotecas y otras dependencias, de modo que se proporcionan entornos aislados para ejecutar tus servicios de software. Sin embargo, como puedes ver a continuación, aquí se acaban todas las similitudes, ya que los contenedores ofrecen una solución mucho más ligera con la que pueden trabajar los desarrolladores y equipos de operaciones de TI y disfrutar de innumerables ventajas.
Los contenedores constituyen un mecanismo de empaquetado lógico en el que las aplicaciones pueden extraerse del entorno en que realmente se ejecutan. Esta desvinculación facilita el despliegue uniforme de las aplicaciones basadas en ellos con independencia de que el entorno sea un centro de datos privado, la nube pública o el portátil personal de un desarrollador.
Desarrollo ágil
Los contenedores permiten que los desarrolladores avancen con mucha más rapidez, ya que se pueden despreocupar de las dependencias y los entornos.
Operaciones eficientes
Los contenedores son ligeros y te permiten utilizar los recursos de computación indispensables, ni más ni menos. Así puedes ejecutar tus aplicaciones de manera eficiente.
Ejecución en cualquier lugar
Los contenedores se pueden ejecutar casi en cualquier lugar. Donde quieras ejecutar el software, podrás usar contenedores.
Empieza a crear en Google Cloud con 300 USD en crédito gratis y más de 20 productos Always Free.