Descripción general de Container-Optimized OS

Container-Optimized OS de Google es una imagen de sistema operativo para las VM de Compute Engine que está optimizada para ejecutar contenedores de Docker. Google mantiene Container-Optimized OS, y esa imagen de sistema operativo se basa en el proyecto de código abierto de Chromium OS. Con Container-Optimized OS, puedes abrir los contenedores de Docker en Google Cloud Platform con rapidez, de manera eficiente y segura.

Características y beneficios

Container-Optimized OS brinda los siguientes beneficios:

  • Ejecutar contenedores listos para usar: las instancias del sistema operativo optimizado para contenedores vienen preinstaladas con el tiempo de ejecución de Docker y cloud-init. Con una instancia de Container-Optimized OS, puedes abrir tu contenedor de Docker al mismo tiempo que creas tu VM, sin necesidad de realizar un proceso de configuración en el host.
  • Menor superficie de ataque: Container-Optimized OS tiene una huella más pequeña, lo que reduce la superficie de posible ataque de tu instancia.
  • Bloque de seguridad como configuración predeterminada: Las instancias de Container-Optimized OS incluyen un firewall bloqueado y otras configuraciones de seguridad de forma predeterminada.
  • Actualizaciones automáticas: Las instancias de Container-Optimized OS están configuradas para descargar automáticamente actualizaciones semanales en segundo plano; basta con reiniciar para usar las últimas actualizaciones.

Limitaciones

Container-Optimized OS tiene compatibilidad limitada o nula para algunas de las características comunes con las que puedes estar familiarizado en otros sistemas operativos:

  • Container-Optimized OS no incluye un administrador de paquetes; por lo tanto, no podrás instalar paquetes de software directamente en una instancia. Sin embargo, puedes utilizar la herramienta de CoreOS para instalar y ejecutar las herramientas de depuración y administrador en un contenedor aislado.
  • Container-Optimized OS no admite la ejecución de aplicaciones que no están en contenedores.
  • El kernel de Container-Optimized OS está bloqueado; no podrás instalar módulos de kernel ni controladores de terceros.
  • Container-Optimized OS no es compatible fuera del entorno de Google Cloud Platform.

Cómo utilizar Container-Optimized OS

Container-Optimized OS es la imagen del SO del nodo predeterminado en Kubernetes Engine y otras implementaciones de Kubernetes en Google Cloud Platform. Consulta la Guía de inicio rápido de Kubernetes Engine para obtener más información sobre cómo usar Container-Optimized OS con Kubernetes Engine.

También puedes utilizar Container-Optimized OS para abrir rápidamente un contenedor de Docker en una instancia de Compute Engine con una configuración mínima. Para obtener más información, consulta Cómo crear y configurar instancias.

Puede ejecutar herramientas como ping, la herramienta de línea de comandos gcloud, pstree, htop, emacs y más utilizando la utilidad CoreOS toolbox, que está preinstalado en el sistema operativo optimizado para contenedores en /usr/bin/toolbox. Consulta Cómo realizar la depuración con la caja de herramientas para obtener más información.

Casos prácticos para Container-Optimized OS

Container-Optimized OS se puede usar para ejecutar la mayoría de los contenedores de Docker. Debes considerar utilizar Container-Optimized OS como sistema operativo para tu instancia de Compute Engine si tienes las siguientes necesidades:

  • Necesita compatibilidad con contenedores de Docker o Kubernetes con una configuración mínima.
  • Necesitas un sistema operativo que tenga una huella pequeña y seguridad endurecida para contenedores.
  • Necesitas un sistema operativo probado y verificado para ejecutar Kubernetes en tus instancias de Compute Engine.

Es posible que Container-Optimized OS no sea la opción correcta para ti en los siguientes casos:

  • Tu aplicación no está en contenedores o la aplicación en contenedores depende de módulos de kernel, controladores y otros paquetes adicionales que no están disponibles en Container-Optimized OS.
  • Necesitas atención al cliente profesional de un proveedor de Linux (Canonical, Core OS, Red Hat, SUSE, etc.).
  • Deseas que la imagen y la aplicación de SO sean totalmente compatibles fuera de Google Cloud Platform.

Consulta Contenedores en GCP para obtener más información sobre otros sistemas operativos que puedes utilizar para ejecutar aplicaciones en contenedores en Google Cloud Platform. Compute Engine proporciona imágenes para otros sistemas operativos populares, incluidas las imágenes que están optimizadas para contenedores.