Uso de Amazon S3 Access Grants con Amazon EMR en EKS - Amazon EMR

Uso de Amazon S3 Access Grants con Amazon EMR en EKS

Información general de S3 Access Grants para Amazon EMR en EKS

A partir de la versión 6.15.0 de Amazon EMR, Amazon S3 Access Grants proporcionan una solución de control de acceso escalable que puede utilizar para aumentar el acceso a los datos de Amazon S3 desde Amazon EMR en EKS. Si cuenta con una configuración de permisos compleja o amplia de datos de S3, puede utilizar Access Grants para escalar los permisos de datos de S3 para usuarios, roles y aplicaciones.

Utilice S3 Access Grants para incrementar el acceso a los datos de Amazon S3, más allá de los permisos que conceden el rol de tiempo de ejecución o los roles de IAM asociados a las identidades con acceso su clúster de Amazon EMR en EKS.

Para obtener más información, consulte Administración del acceso con S3 Access Grants para Amazon EMR en la Guía de administración de Amazon EMR y Administración del acceso con S3 Access Grants en la Guía del usuario de Amazon Simple Storage Service.

Esta página, se describen los requisitos para ejecutar un trabajo de Spark en Amazon EMR en EKS con la integración de S3 Access Grants. Con Amazon EMR en EKS, S3 Access Grants requiere una instrucción de política de IAM adicional en la función de ejecución de su trabajo y una configuración de anulación adicional para la API StartJobRun. Para conocer los pasos para configurar S3 Access Grants con otras implementaciones de Amazon EMR, consulte la siguiente documentación:

Lanzamiento de un clúster de Amazon EMR en EKS con S3 Access Grants para la administración de datos

Puede habilitar S3 Access Grants en Amazon EMR en EKS y ejecutar un trabajo de Spark. Cuando su aplicación solicita datos de S3, Amazon S3 brinda credenciales temporales que se limitan al bucket, al prefijo o al objeto.

  1. Configure un rol de ejecución de trabajos para su clúster de Amazon EMR en EKS. Incluya los permisos de IAM necesarios para ejecutar los trabajos de Spark, s3:GetDataAccess y s3:GetAccessGrantsInstanceForPrefix:

    { "Effect": "Allow", "Action": [ "s3:GetDataAccess", "s3:GetAccessGrantsInstanceForPrefix" ], "Resource": [ //LIST ALL INSTANCE ARNS THAT THE ROLE IS ALLOWED TO QUERY "arn:aws_partition:s3:Region:account-id1:access-grants/default", "arn:aws_partition:s3:Region:account-id2:access-grants/default" ] }
    nota

    Si especifica roles de IAM para la ejecución del trabajo que contienen permisos para acceder directamente a S3, es posible que los usuarios puedan acceder a más datos además de los que usted define en S3 Access Grants

  2. Envíe un trabajo a su clúster de Amazon EMR en EKS con una etiqueta de versión de Amazon EMR de 6.15 o superior y la clasificación emrfs-site, como se muestra en el siguiente ejemplo. Reemplace los valores en red text con valores adecuados para su caso de uso.

    { "name": "myjob", "virtualClusterId": "123456", "executionRoleArn": "iam_role_name_for_job_execution", "releaseLabel": "emr-7.3.0-latest", "jobDriver": { "sparkSubmitJobDriver": { "entryPoint": "entryPoint_location", "entryPointArguments": ["argument1", "argument2"], "sparkSubmitParameters": "--class main_class" } }, "configurationOverrides": { "applicationConfiguration": [ { "classification": "emrfs-site", "properties": { "fs.s3.s3AccessGrants.enabled": "true", "fs.s3.s3AccessGrants.fallbackToIAM": "false" } } ], } }

Consideraciones sobre el uso de S3 Access Grants con Amazon EMR en EKS

Para obtener información importante sobre soporte, compatibilidad y comportamiento al utilizar Amazon S3 Access Grants con Amazon EMR en EKS, consulte Consideraciones sobre el uso de S3 Access Grants con Amazon EMR en la Guía de administración de Amazon EMR.