Bottlerocket のアイコン

Bottlerocket Especializado2020年〜

Un sistema operativo de código abierto basado en Linux diseñado específicamente para ejecutar contenedores

Qué hace

Bottlerocket es un sistema operativo basado en Linux diseñado específicamente como SO anfitrión de contenedores. A diferencia de las distribuciones Linux de propósito general, incluye solo los componentes mínimos necesarios para ejecutar contenedores, lo que resulta en una superficie de ataque más reducida y tiempos de arranque más rápidos. Las actualizaciones del SO se aplican de forma atómica (todas a la vez), y las actualizaciones fallidas se revierten automáticamente.

Casos de uso

Se utiliza como SO de nodos de trabajo para EKS y ECS, sirviendo como plataforma de ejecución para cargas de trabajo de contenedores con enfoque en seguridad. Es adoptado por instituciones financieras, organizaciones de salud y otros entornos con requisitos de seguridad estrictos, así como para simplificar la gestión del SO en entornos de microservicios a gran escala.

Analogía cotidiana

Piensa en él como un camión de trabajo cargado solo con herramientas especializadas. Si un SO de propósito general es una furgoneta llena de todo, Bottlerocket es una camioneta que lleva solo las herramientas necesarias para ejecutar contenedores. Sin carga innecesaria, funciona más ligero y rápido, y hay menos que robar, lo que lo hace más seguro.

¿Qué es Bottlerocket?

Bottlerocket es un SO basado en Linux diseñado para contenedores, desarrollado por AWS. Los sistemas operativos de propósito general como Amazon Linux o Ubuntu incluyen muchos componentes como gestores de paquetes y entornos de shell, pero Bottlerocket consiste únicamente en un runtime de contenedores y componentes mínimos del sistema. El acceso SSH está deshabilitado por defecto, y los cambios de configuración se realizan a través de una API. Este diseño reduce drásticamente la superficie de ataque de seguridad.

Seguridad y actualizaciones

El sistema de archivos de Bottlerocket es mayormente de solo lectura, lo que reduce el riesgo de manipulación de archivos del SO en tiempo de ejecución. Las actualizaciones del SO reemplazan la imagen completa de forma atómica en lugar de actualizar paquetes individuales, evitando estados inconsistentes durante las actualizaciones. Si una actualización falla, se revierte automáticamente a la versión anterior. SELinux también está habilitado, fortaleciendo el aislamiento entre contenedores. Para conocer los fundamentos técnicos sobre seguridad y actualizaciones, los libros de referencia en Amazon son un recurso útil.

Integración con EKS y ECS

Bottlerocket puede utilizarse como SO de nodos de trabajo tanto para EKS como para ECS. Para EKS, simplemente selecciona Bottlerocket como la AMI de tu grupo de nodos administrado para comenzar. ECS también proporciona AMIs compatibles con Bottlerocket. Para la resolución de problemas, puedes acceder a los nodos usando AWS Systems Manager Session Manager. Bottlerocket se publica como un proyecto de código abierto en GitHub, y puedes crear compilaciones personalizadas.

Aspectos a tener en cuenta

  • Bottlerocket itself is free and open-source, but standard EC2 instance charges apply for the instances it runs on
  • Unlike general-purpose operating systems, there is no package manager, so you cannot install software directly on the OS. Everything runs as containers by design
  • Since SSH is disabled by default, Systems Manager Session Manager is recommended for troubleshooting
共有するXB!