- Sistema operativo basado en Linux optimizado para alojar contenedores
- Diseñado para funcionar junto con orquestadores de contenedores (por ejemplo, Kubernetes) y automatizar el ciclo de vida de los contenedores que se ejecutan en un clúster
- Sus 3 objetivos principales son: minimalismo, actualizaciones seguras y enfoque en la seguridad
- No tiene shell, pero se puede interactuar con el sistema mediante un contenedor "host" con privilegios
- Las actualizaciones se entregan mediante imágenes que se descargan en una partición específica. Bottlerocket intercambia la partición y arranca de forma atómica con la nueva versión
- Usa múltiples particiones para gestionar las actualizaciones. Al reiniciar, los cambios se aplican de forma atómica
- Las actualizaciones se pueden gestionar manualmente o mediante herramientas específicas para orquestadores como Bottlerocket Update Operator (brupop) y ECS updater
- Escrito en Rust y algo de Golang
- El sistema de archivos raíz de Bottlerocket es inmutable.
dm-verity proporciona verificación transparente de integridad del sistema de archivos raíz, y si se detecta un cambio en el dispositivo de bloques subyacente, el kernel se reinicia
- Bottlerocket tiene un sistema de archivos mutable con políticas de SELinux siempre activadas, obligatorias y restrictivas, lo que ayuda a evitar que los contenedores que se ejecutan como root realicen operaciones peligrosas
1 comentarios
Comentarios en Hacker News
initrdy argumentos.