- Sistema operacional baseado em Linux otimizado para hospedar contêineres
- Projetado para funcionar com orquestradores de contêineres (como Kubernetes) para automatizar o ciclo de vida dos contêineres executados em um cluster
- Seus três objetivos principais são: minimalismo, atualizações seguras e foco em segurança
- Não possui shell, mas é possível interagir com o sistema por meio de um contêiner de "host" com privilégios
- As atualizações são fornecidas por meio de imagens baixadas para uma partição específica. O Bottlerocket troca a partição e faz boot atômico na nova versão
- Usa várias partições para gerenciar atualizações. Na reinicialização, ocorre uma mudança atômica
- As atualizações podem ser gerenciadas manualmente ou por meio das ferramentas específicas para orquestradores Bottlerocket Update Operator (brupop) e ECS updater
- Escrito em Rust e um pouco de Golang
- O sistema de arquivos raiz do Bottlerocket é imutável. O dm-verity fornece verificação transparente de integridade do sistema de arquivos raiz, e o kernel é reiniciado se alterações forem detectadas no dispositivo de bloco subjacente
- O Bottlerocket possui um sistema de arquivos mutável com políticas SELinux sempre ativadas, obrigatórias e restritivas, ajudando a impedir que contêineres executados como root realizem operações perigosas
1 comentários
Comentários do Hacker News