

# AMI Bottlerocket optimizadas para Amazon ECS
<a name="ecs-bottlerocket"></a>

Bottlerocket es un sistema operativo de código abierto basado en Linux creado específicamente por AWS para ejecutar contenedores en máquinas virtuales o hosts bare metal. La AMI de Bottlerocket optimizada para Amazon ECS es segura y solo incluye la cantidad mínima de paquetes necesarios para ejecutar contenedores. Esto mejora el uso de los recursos, reduce la superficie expuesta a ataques contra la seguridad y ayuda a reducir los gastos administrativos. La AMI de Bottlerocket también está integrada con Amazon ECS para ayudar a reducir la sobrecarga operativa que implica la actualización de las instancias de contenedores en un clúster. 

Bottlerocket se diferencia de Amazon Linux en los siguientes aspectos:
+ Bottlerocket no incluye un administrador de paquetes y su software solo se puede ejecutar como contenedores. Las actualizaciones de Bottlerocket se aplican y se pueden revertir en un solo paso, lo que reduce la probabilidad de que se produzcan errores de actualización.
+ El mecanismo principal para administrar los hosts de Bottlerocket es mediante un programador de contenedores. A diferencia de Amazon Linux, el inicio de sesión en instancias de Bottlerocket individuales está pensado para ser una operación poco frecuente únicamente con fines avanzados de depuración y solución de problemas.

Para obtener más información acerca de Bottlerocket, consulte la [documentación](https://github.com/bottlerocket-os/bottlerocket/blob/develop/README.md) y las [versiones](https://github.com/bottlerocket-os/bottlerocket/releases) en GitHub.

Existen variantes de la AMI de Bottlerocket optimizada para Amazon ECS para los kernel 6.1 y 5.10.

Las siguientes variantes utilizan el kernel 6.1:
+ `aws-ecs-2`
+ `aws-ecs-2-nvidia`

Las siguientes variantes utilizan kernel 5.10:
+ `aws-ecs-1`
+ `aws-ecs-1-nvidia`

  Para obtener más información acerca de la variante `aws-ecs-1-nvidia`, consulte [Anuncio de la compatibilidad con GPU NVIDIA para Bottlerocket en Amazon ECS](https://aws.amazon.com/blogs/containers/announcing-nvidia-gpu-support-for-bottlerocket-on-amazon-ecs/).

## Consideraciones
<a name="ecs-bottlerocket-considerations"></a>

Tenga en cuenta lo siguiente al utilizar la AMI de Bottlerocket con Amazon ECS.
+ Bottlerocket admite instancias de Amazon EC2 con procesadores `x86_64` y `arm64`. No se recomienda utilizar la AMI Bottlerocket con instancias de Amazon EC2 con un chip Inferentia.
+ Las imágenes de Bottlerocket no incluyen un servidor SSH ni un shell. Sin embargo, puede utilizar herramientas de administración fuera de banda para obtener acceso de administrador SSH y realizar tareas de arranque. 

   Para obtener más información, consulte estas secciones en [bottlerocket README.md](https://github.com/bottlerocket-os/bottlerocket) en GitHub:
  + [Exploration (Exploración](https://github.com/bottlerocket-os/bottlerocket#exploration)
  + [Contenedor de administrador](https://github.com/bottlerocket-os/bottlerocket#admin-container)
+ De forma predeterminada, Bottlerocket tiene un [contenedor de control](https://github.com/bottlerocket-os/bottlerocket-control-container) que está habilitado. Este contenedor ejecuta el [agente de AWS Systems Manager](https://github.com/aws/amazon-ssm-agent) que puede utilizar para ejecutar comandos o iniciar sesiones de shell en instancias Bottlerocket de Amazon EC2. Para obtener más información, consulte [Configuración del administrador de sesiones](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started.html) en la *Guía del usuario de AWS Systems Manager*.
+ Bottlerocket está optimizado para cargas de trabajo de contenedores y se centra en la seguridad. Bottlerocket no incluye un administrador de paquetes y es inmutable. 

  Para obtener más información sobre las características y directrices de seguridad, consulte [Características de seguridad](https://github.com/bottlerocket-os/bottlerocket/blob/develop/SECURITY_FEATURES.md) y [Directrices sobre seguridad](https://github.com/bottlerocket-os/bottlerocket/blob/develop/SECURITY_GUIDANCE.md) en GitHub.
+ Se admite el modo de red `awsvpc` con la versión de AMI de Bottlerocket `1.1.0` o una posterior.
+ App Mesh en una definición de tarea es compatible con la versión AMI `1.15.0` de Bottlerocket o una posterior.
+ El parámetro de definición de tareas `initProcessEnabled` es compatible con la versión `1.19.0` de la AMI de Bottlerocket o una posterior.
+ Las AMI de Bottlerocket tampoco admiten los siguientes servicios y características:
  + ECS Anywhere
  + Service Connect
  + Amazon EFS en modo cifrado
  + Amazon EFS en modo de red `awsvpc`
  + Los volúmenes de Amazon EBS no se pueden montar
  + Acelerador de Elastic Inference