Se ha publicado el lanzamiento de la distribución de Linux, Bottlerocket 1.8.0, desarrollada con la participación de Amazon para ejecutar contenedores aislados de forma eficaz y segura. La nueva versión presenta una serie de actualizaciones, mejoras y correcciones de errores.
Para quienes desconocen de Bottlerocket, deben saber que esta es una distribución que proporciona una imagen de sistema indivisible actualizada, atómica y automáticamente que incluye el kernel de Linux y un entorno de sistema mínimo que incluye solo los componentes necesarios para ejecutar contenedores.
Sobre Bottlerocket
El entorno utiliza el administrador del sistema systemd, la biblioteca Glibc, la herramienta de compilación Buildroot, el cargador de arranque GRUB, el tiempo de ejecución del contenedor aislado de contenedores, la plataforma de orquestación de contenedores de Kubernetes, el autenticador aws-iam y el agente de Amazon ECS.
Las herramientas de orquestación de contenedores vienen en un contenedor de administración independiente que está habilitado de forma predeterminada y se administra a través de la API y el agente de AWS SSM. La imagen base carece de un shell de comandos, un servidor SSH y lenguajes interpretados (por ejemplo, Python o Perl): las herramientas de administración y depuración se mueven a un contenedor de servicios separado , que está deshabilitado de forma predeterminada.
La diferencia clave con distribuciones similares como Fedora CoreOS, CentOS/Red Hat Atomic Host es el enfoque principal en brindar la máxima seguridad en el contexto de fortalecer la protección del sistema contra posibles amenazas, lo que complica la explotación de vulnerabilidades en los componentes del sistema operativo y aumenta el aislamiento del contenedor.
Principales novedades de Bottlerocket 1.8.0
En esta nueva versión que se presenta de Bottlerocket 1.8.0, se destaca que se ha actualizado el contenido de los contenedores administrativos y de control, asi como tambien que el runtime para contenedores aislados se ha actualizado a la rama containerd 1.6.x.
Otro de los cambios que se destaca de esta nueva versión, es que los procesos en segundo plano que coordinan el trabajo de los contenedores se reinician después de cambios en el almacén de certificados.
Ademas de ello, ahora se proporciona la capacidad de establecer los parámetros de arranque del kernel a través de la sección Configuración de arranque y se ha proporcionado la capacidad de generar una configuración de red utilizando la utilidad netdog (se ha agregado el comando generate-net-config).
Tambien se destaca que se ha implementado el controlador smartpqi para dispositivos Microchip Smart Storage en el kernel 5.10 y que se ha propuesto una nueva distribución «aws-ecs-1-nvidia» para Amazon Elastic Container Service (Amazon ECS) y viene con controladores NVIDIA.
Se agregó soporte para dispositivos de almacenamiento Microchip Smart Storage y MegaRAID SAS y se ha mejorado el soporte para tarjetas Ethernet basadas en chips Broadcom.
Por otra parte, se ha habilitado la opción para ignorar bloques vacíos al verificar la integridad de la partición root usando dm-verity, ademas de que se ha proporcionó la capacidad de vincular estáticamente nombres de host en /etc/hosts.
Se proponen nuevas opciones de distribución con soporte para Kubernetes 1.23., ademas de y que se redujo el tiempo de inicio de los pods en Kubernetes al deshabilitar el modo configMapAndSecretChangeDetectionStrategy y se agregaron nuevas configuraciones de kubelet: ID de proveedor y podPidsLimit.
De los demás cambios que se destacan de esta nueva versión:
Se mejoraron los tiempos de inicio de los pods de Kubernetes al desactivarlos
Se añadió una nueva configuración para configurar la configuración de kubelet provider-id
Se añadió una nueva configuración para configurar la configuración de kubelet podPidsLimit
Permitir una lista de direcciones IP en settings.kubernetes.cluster-dns-ip
Se establecio el valor predeterminado para settings.kubernetes.cloud-providerlas variantes de metal en una cadena vacía
Se añadieron datos de instancia c7g para el cálculo de pods máximos en variantes de AWS
Versiones actualizadas de paquetes y dependencias para lenguajes Go y Rust, así como versiones de paquetes con programas de terceros. Bottlerocket SDK se ha actualizado a la versión 0.26.0.
- Código:
-
https://github.com/bottlerocket-os/bottlerocket/releases/tag/v1.8.0