View a markdown version of this page

Volúmenes de Amazon S3 Files - AWS Batch

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Volúmenes de Amazon S3 Files

S3 Files proporciona acceso directo al sistema de archivos a los datos almacenados en los buckets de Amazon Simple Storage Service (Amazon S3). Con AWS Batch, puede definir los volúmenes de S3 Files en sus definiciones de trabajo para que sus contenedores puedan leer y escribir datos de Amazon S3 mediante operaciones de archivo estándar.

Para usar los volúmenes de S3 Files, necesita un sistema de archivos S3 y un destino de montaje configurados en la misma VPC que su entorno AWS Batch informático. Para obtener instrucciones de configuración completas, incluidas la configuración del bucket, las funciones de IAM, la creación del sistema de archivos y los objetivos de montaje, consulte los requisitos previos de S3 Files en la Guía del usuario de Amazon S3 y Configuración de archivos S3 para Amazon ECS en la Guía para desarrolladores de Amazon Elastic Container Service.

Consideraciones sobre el volumen de Amazon S3 Files

Tenga en cuenta lo siguiente cuando utilice volúmenes de S3 Files:

  • importante

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

  • El cifrado de tránsito siempre está activado para los volúmenes de S3 Files. Si lo desea, puede especificar el puerto mediante el transitEncryptionPort parámetro. El puerto predeterminado es 2049.

  • El rol de trabajo (equivalente al rol de tarea de Amazon ECS) debe tener s3files:ClientMount s3files:ClientWrite permisos en el sistema de archivos. Para las lecturas directas desde Amazon S3, el rol también necesita s3:GetObject s3:ListBucket permisos en el bucket. s3:GetObjectVersion

  • El destino de montaje del sistema de archivos S3 debe estar en la misma VPC y ser accesible desde las subredes de su entorno informático. AWS Batch El grupo de seguridad de destino de montaje debe permitir el tráfico NFS entrante (puerto TCP 2049) procedente del grupo de seguridad del entorno informático.

Utilice los puntos de acceso de Amazon S3 Files

Los puntos de acceso de S3 Files son puntos de entrada específicos de la aplicación a un sistema de archivos que imponen una identidad de usuario POSIX y un directorio raíz para todas las solicitudes del sistema de archivos. Puede usar los puntos de acceso para aislar a los inquilinos, de modo que cada trabajo solo pueda acceder a su propio directorio dentro de un sistema de archivos compartido.

nota

Al especificar un punto de acceso mediante el accessPointArn parámetro, rootDirectory debe omitirse o establecerse en. / El punto de acceso impone su propia ruta de directorio raíz.

Para obtener más información sobre la creación y administración de puntos de acceso, consulte Creación de puntos de acceso para un sistema de archivos S3 en la Guía del usuario de Amazon S3. Para obtener más información sobre el uso de políticas del sistema de archivos para imponer el aislamiento de los puntos de acceso, consulte Cómo funciona S3 Files con IAM en la Guía del usuario de Amazon S3.

Especifique un sistema de archivos Amazon S3 Files en la definición de su trabajo

Para utilizar los volúmenes de S3 Files para sus contenedores, debe especificar las configuraciones de volumen y punto de montaje en la definición de su trabajo. El siguiente fragmento de JSON de definición de trabajo muestra la sintaxis de los objetos volumes y mountPoints para un contenedor:

{ "ecsProperties": { "taskProperties": [ { ..., "taskRoleArn": "arn:aws:iam::<account>:role/<job-role-name>", "containers": [ { ..., "mountPoints": [ { "sourceVolume": "myS3FilesVolume", "containerPath": "/mnt/s3data", "readOnly": false } ] } ], "volumes": [ { "name": "myS3FilesVolume", "s3filesVolumeConfiguration": { "fileSystemArn": "arn:aws:s3files:<region>:<account>:file-system/<fs-id>", "rootDirectory": "/keypath/in/s3" } } ] } ] } }
s3filesVolumeConfiguration

Tipo: objeto

Obligatorio: no

Este parámetro se especifica cuando se utilizan volúmenes de S3 Files.

fileSystemArn

Tipo: cadena

Obligatorio: sí

El ARN completo del sistema de archivos S3 que se va a utilizar.

rootDirectory

Tipo: cadena

Requerido: no

El directorio del sistema de archivos S3 que se va a montar como directorio raíz dentro del host. Si se omite este parámetro, se utiliza la raíz del sistema de archivos. Si se especifica /, se obtiene el mismo efecto que si se omite este parámetro. Puede tener hasta 4 096 caracteres de longitud.

importante

Si se especifica un punto de acceso de S3 Files enaccessPointArn, el parámetro del directorio raíz debe omitirse o establecerse en. / Esto impone la ruta establecida en el punto de acceso.

transitEncryptionPort

Tipo: entero

Obligatorio: no

El puerto que se utilizará al enviar datos cifrados entre el AWS Batch host y el servidor de S3 Files. Si no especifica un puerto de cifrado de tránsito, 2049 se utilizará el valor predeterminado de. Este valor debe estar entre 0 y 65 535. El cifrado de tránsito siempre está activado para los volúmenes de S3 Files.

accessPointArn

Tipo: cadena

Requerido: no

El ARN del punto de acceso de S3 Files que se va a utilizar. Si se especifica un punto de acceso, el valor del directorio raíz en s3filesVolumeConfiguration se debe omitir o establecer en /. Esto impone la ruta establecida en el punto de acceso. Los puntos de acceso imponen una identidad de usuario POSIX y pueden restringir el acceso a directorios específicos del sistema de archivos. Para obtener más información, consulte Creación de puntos de acceso para un sistema de archivos S3 en la Guía del usuario de Amazon S3.

Utilice volúmenes de S3 Files con AWS Batch Amazon EKS

Para los trabajos que utilizan recursos de Amazon EKS, AWS Batch admite volúmenes de S3 Files mediante una configuración de volumen incluida persistentVolumeClaim en la definición de trabajos de EKS. Debe crear previamente el volumen persistente y la notificación de volumen persistente en su clúster de Amazon EKS antes de hacer referencia a ellos en la definición de su trabajo.

En el siguiente fragmento de definición de trabajo, se muestra cómo hacer referencia a una notificación de volumen persistente de S3 Files:

{ "eksProperties": { "podProperties": { ..., "containers": [ { ..., "volumeMounts": [ { "name": "s3files-vol", "mountPath": "/mnt/s3data" } ] } ], "volumes": [ { "name": "s3files-vol", "persistentVolumeClaim": { "claimName": "<s3files-pvc-name>" } } ] } } }

Para obtener más información sobre la configuración de archivos S3 con Amazon EKS, consulte Montaje de sistemas de archivos S3 en Amazon EKS en la Guía del usuario de Amazon S3. Para obtener la referencia completa de los parámetros de volumen, consulte EksVolumela referencia de la AWS Batch API.