

# Configuración de S3 Files para Amazon ECS
<a name="s3files-volumes"></a>

S3 Files es un sistema de archivos compartidos que conecta cualquier de computación AWS directamente con los datos de Amazon S3. Proporciona un acceso rápido y directo a todos sus datos de S3 en forma de archivos con una semántica completa del sistema de archivos y un rendimiento de baja latencia, sin que sus datos salgan nunca de S3. Puede leer, escribir y organizar los datos mediante operaciones de archivos y directorios, mientras que S3 Files mantiene el sistema de archivos y el bucket de S3 sincronizados automáticamente. Con Amazon ECS, puede definir los sistemas de archivos de S3 como volúmenes en sus definiciones de tareas, lo que permite a sus contenedores acceder directamente al sistema de archivos a los datos almacenados en los buckets de S3. Para obtener más información sobre Amazon S3 Files y sus capacidades, consulte la [Guía del usuario de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/).

## Disponibilidad
<a name="s3files-volume-availability"></a>

La compatibilidad con S3 Files en Amazon ECS está disponible para los siguientes tipos de lanzamiento en disponibilidad general:
+ **Fargate**: totalmente compatible.
+ **Instancias administradas de Amazon ECS**: totalmente compatibles.

**importante**  
En este momento, S3 Files no se admite en el tipo de lanzamiento de Amazon EC2. Si configura un sistema de archivos de S3 en una definición de tarea e intenta ejecutarlo en el tipo de lanzamiento de Amazon EC2, la tarea producirá un error. La compatibilidad con el tipo de lanzamiento de Amazon EC2 está prevista para una versión futura.

## Consideraciones
<a name="s3files-volume-considerations"></a>
+ El sistema de archivos S3 utiliza un parámetro `s3filesVolumeConfiguration` dedicado en la definición de la tarea.
+ El sistema de archivos de S3 requiere un nombre de recurso de Amazon (ARN) completo para identificar el sistema de archivos. El formato del ARN es el siguiente:

  ```
  arn:{{{partition}}}:s3files:{{{region}}}:{{{account-id}}}:file-system/{{fs-xxxxx}}
  ```
+ El cifrado en tránsito es obligatorio para los volúmenes del sistema de archivos de S3 y se aplica automáticamente. No existe la opción de desactivarlo.
+ El rol de IAM de la tarea es obligatorio para los volúmenes del sistema de archivos de S3 y se aplica automáticamente. No existe la opción de desactivarlo.

## Requisitos previos
<a name="s3files-volume-prerequisites"></a>

Antes de configurar los volúmenes del sistema de archivos de S3 en las definiciones de tareas de Amazon ECS, asegúrese de que se cumplan los siguientes requisitos previos:
+ **Un sistema de archivos de S3 y un destino de montaje**: debe tener un sistema de archivos de S3 creado y asociado a un bucket de S3. Para obtener instrucciones sobre cómo crear un sistema de archivos de S3, consulte la [Guía del usuario de Amazon S3 Files](https://docs.aws.amazon.com/AmazonS3/latest/userguide/).
+ **Un rol de IAM para tareas**: la definición de la tarea debe tener un rol de IAM para tareas con los siguientes permisos:
  + Permisos para conectarse a los sistemas de archivos de S3 e interactuar con ellos desde el código de la aplicación (que se ejecuta en el contenedor).
  + Permisos para leer los objetos de S3 desde el código de la aplicación (que se ejecuta en el contenedor).
+ **Configuración de VPC y grupos de seguridad**: se debe poder acceder al sistema de archivos de S3 desde la VPC y las subredes donde se ejecutan las tareas de Amazon ECS.
+ **(Opcional) Puntos de acceso de S3 Files**: si desea aplicar controles de acceso específicos de la aplicación, cree un punto de acceso de S3 Files e indique el ARN en la definición de la tarea.

Para obtener más información, consulte los [requisitos previos de S3 Files](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-files-prereq-policies.html#s3-files-prereq-iam-compute-role).

## Parámetros de configuración del volumen de S3 Files
<a name="s3files-volume-parameters"></a>

En la siguiente tabla se describen los parámetros disponibles en el objeto `s3filesVolumeConfiguration`:

`fileSystemArn`  
Tipo: cadena  
Obligatorio: sí  
El ARN completo del sistema de archivos de S3 que desea montar. Formato: `arn:{{{partition}}}:s3files:{{{region}}}:{{{account-id}}}:file-system/{{fs-xxxxx}}`

`rootDirectory`  
Tipo: cadena  
Requerido: no  
Directorio del sistema de archivos de S3 que se va a montar como raíz del volumen. Toma `/` como valor predeterminado si no se especifica.

`transitEncryptionPort`  
Tipo: entero  
Obligatorio: no  
El puerto que se utilizará para enviar datos cifrados entre el host de Amazon ECS y el sistema de archivos de S3. El cifrado de tránsito en sí mismo siempre está habilitado y no se puede deshabilitar.

`accessPointArn`  
Tipo: cadena  
Requerido: no  
El ARN completo del punto de acceso de S3 Files que se utilizará. Los puntos de acceso proporcionan puntos de entrada específicos de la aplicación al sistema de archivos con una identidad de usuario obligatoria y una configuración del directorio raíz.