Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Amazon S3 sur Outposts avec Amazon EMR local sur Outposts
Amazon EMR est une plate-forme de cluster gérée qui simplifie l'exécution de frameworks de mégadonnées, tels que Apache Hadoop and Apache Spark, AWS pour traiter et analyser de grandes quantités de données. Grâce à ces infrastructures et des projets open source connexes, vous pouvez traiter des données à des fins d’analytique et pour des charges de travail d’informatique décisionnelle. Amazon EMR vous aide également à transformer et à déplacer de grandes quantités de données vers et depuis d'autres banques de données et bases de AWS données, et prend en charge Amazon S3 on Outposts. Pour plus d’informations sur Amazon EMR, consultez Amazon EMR sur Outposts dans le Guide de gestion Amazon EMR.
Pour Amazon S3 on Outposts, Amazon EMR a commencé à prendre en charge le Apache Hadoop Connecteur S3A en version 7.0.0. Les versions antérieures d’Amazon EMR ne prennent pas en charge le service S3 local sur Outposts, et le système de fichiers EMR (EMRFS) n’est pas pris en charge.
Applications prises en charge
Amazon EMR avec Amazon S3 sur Outposts prend en charge les applications suivantes :
-
Hadoop
-
Spark
-
Hue
-
Hive
-
Sqoop
-
Pig
-
Hudi
-
Flink
Pour plus d’informations, consultez le Guide de version Amazon EMR.
Création et configuration d’un compartiment Amazon S3 sur Outposts
Amazon EMR utilise Amazon S3 on Outposts pour stocker les données d'entrée et de sortie. AWS SDK pour Java Vos fichiers journaux Amazon EMR sont stockés dans un emplacement Amazon S3 régional que vous sélectionnez et ne sont pas stockés localement sur l’Outpost. Pour plus d’informations, consultez Journaux Amazon EMR dans le Guide de gestion Amazon EMR.
Pour se conformer aux exigences Amazon S3 et DNS, les compartiments S3 sur Outposts sont soumis à des restrictions et des limitations. Pour de plus amples informations, veuillez consulter Création d’un compartiment S3 sur Outposts.
À partir d’Amazon EMR version 7.0.0, vous pouvez utiliser Amazon EMR avec S3 sur Outposts et le système de fichiers S3A.
Prérequis
Autorisations S3 on Outposts — Lorsque vous créez votre profil d'instance Amazon EMR, votre rôle doit contenir l'espace de noms AWS Identity and Access Management (IAM) de S3 on Outposts. S3 sur Outposts possède son propre espace de noms, s3-outposts*
. Pour obtenir un exemple de politique utilisant cet espace de noms, consultez Configuration d’IAM avec S3 sur Outposts.
Connecteur S3A — Pour configurer votre cluster EMR afin d'accéder aux données d'un bucket Amazon S3 on Outposts, vous devez utiliser le Apache Hadoop Connecteur S3A Pour utiliser le connecteur, assurez-vous que tous vos S3 URIs utilisent le s3a
schéma. Si ce n'est pas le cas, vous pouvez configurer l'implémentation du système de fichiers que vous utilisez pour votre cluster EMR afin que votre S3 URIs fonctionne avec le connecteur S3A.
Pour configurer l'implémentation du système de fichiers afin qu'elle fonctionne avec le connecteur S3A, vous utilisez les propriétés de fs.AbstractFileSystem.
configuration file_scheme
.implfs.
et de votre cluster EMR, file_scheme
.impl
qui correspondent au type de URIs S3 dont vous disposez. Pour utiliser l’exemple suivant, remplacez les file_scheme
par vos propres informations. Par exemple, pour modifier l'implémentation du système de fichiers pour S3 URIs qui utilise le user input
placeholders
s3
schéma, spécifiez les propriétés de configuration de cluster suivantes :
[ { "Classification": "core-site", "Properties": { "fs.
s3
.impl": "org.apache.hadoop.fs.s3a.S3AFileSystem", "fs.AbstractFileSystem.s3
.impl": "org.apache.hadoop.fs.s3a.S3A" } } ]
Pour utiliser S3A, définissez la propriété de configuration fs.
sur file_scheme
.implorg.apache.hadoop.fs.s3a.S3AFileSystem
et définissez la propriété fs.AbstractFileSystem.
sur file_scheme
.implorg.apache.hadoop.fs.s3a.S3A
.
Par exemple, si vous accédez au chemin s3a://
, définissez la propriété bucket
/...fs.s3a.impl
sur org.apache.hadoop.fs.s3a.S3AFileSystem
et définissez la propriété fs.AbstractFileSystem.s3a.impl
sur org.apache.hadoop.fs.s3a.S3A
.
Premiers pas avec Amazon EMR et Amazon S3 sur Outposts
Les rubriques suivantes expliquent comment commencer à utiliser Amazon EMR avec Amazon S3 sur Outposts.
Rubriques
Création d’une stratégie d’autorisations
Avant de créer un cluster EMR qui utilise Amazon S3 sur Outposts, vous devez créer une politique IAM à associer au profil d' EC2 instance Amazon du cluster. Cette politique doit disposer d’autorisations pour accéder à l’Amazon Resource Name (ARN) du point d’accès S3 sur Outposts. Pour plus d’informations sur la création de politiques IAM pour S3 sur Outposts, consultez Configuration d’IAM avec S3 sur Outposts.
L’exemple de politique suivant montre comment accorder les autorisations requises. Après avoir créé la politique, associez-la au rôle de profil d’instance que vous utilisez pour créer votre cluster EMR, comme décrit dans la section Création et configuration de votre cluster. Pour utiliser cet exemple, remplacez
par vos propres informations.user input
placeholders
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "arn:aws:s3-outposts:
us-west-2
:111122223333
:outpost/op-01ac5d28a6a232904
/accesspoint/access-point-name
, "Action": [ "s3-outposts:*" ] } ] }
Création et configuration de votre cluster
Pour créer un cluster qui exécute Spark avec S3 sur Outposts, procédez comme suit dans la console.
Pour créer un cluster qui s'exécute Spark avec S3 sur Outposts
Ouvrez la console Amazon EMR à l'adresse https://console.aws.amazon.com/elasticmapreduce/
. -
Dans le volet de navigation de gauche, choisissez Clusters.
-
Choisissez Créer un cluster.
-
Pour la version Amazon EMR, choisissez emr-7.0.0 ou version ultérieure.
-
Pour Offre d’applications, choisissez Spark interactive. Sélectionnez ensuite les autres applications prises en charge que vous souhaitez inclure dans votre cluster.
-
Pour activer Amazon S3 sur Outposts, entrez vos paramètres de configuration.
Exemples de paramètres de configuration
Pour utiliser les exemples de paramètres de configuration suivants, remplacez les
par vos propres informations.user input placeholders
[ { "Classification": "core-site", "Properties": { "fs.s3a.bucket.
DOC-EXAMPLE-BUCKET
.accesspoint.arn": "arn:aws:s3-outposts:us-west-2
:111122223333
:outpost/op-01ac5d28a6a232904
/accesspoint/access-point-name
" "fs.s3a.committer.name": "magic", "fs.s3a.select.enabled": "false" } }, { "Classification": "hadoop-env", "Configurations": [ { "Classification": "export", "Properties": { "JAVA_HOME": "/usr/lib/jvm/java-11-amazon-corretto.x86_64" } } ], "Properties": {} }, { "Classification": "spark-env", "Configurations": [ { "Classification": "export", "Properties": { "JAVA_HOME": "/usr/lib/jvm/java-11-amazon-corretto.x86_64" } } ], "Properties": {} }, { "Classification": "spark-defaults", "Properties": { "spark.executorEnv.JAVA_HOME": "/usr/lib/jvm/java-11-amazon-corretto.x86_64", "spark.sql.sources.fastS3PartitionDiscovery.enabled": "false" } } ] -
Dans la section Mise en réseau, choisissez un cloud privé virtuel (VPC) et un sous-réseau situés sur votre rack. AWS Outposts Pour plus d’informations sur Amazon EMR sur Outposts, consultez Clusters EMR sur AWS Outposts dans le Guide de gestion Amazon EMR.
-
Dans la section profil d'EC2 instance pour Amazon EMR, choisissez le rôle IAM auquel est jointe la politique d'autorisation que vous avez créée précédemment.
-
Configurez les paramètres de cluster restants, puis choisissez Créer un cluster.
Présentation des configurations
Le tableau suivant décrit les configurations S3A et les valeurs à spécifier pour leurs paramètres lorsque vous configurez un cluster qui utilise S3 sur Outposts avec Amazon EMR.
Paramètre | Valeur par défaut | Valeur requise pour S3 sur Outposts | Explication |
---|---|---|---|
|
Si la valeur n’est pas spécifiée, S3A recherchera S3 dans le compartiment de la région avec le nom de compartiment Outposts. |
ARN du point d’accès du compartiment S3 sur Outposts |
Amazon S3 sur Outposts prend en charge les points d’accès Virtual Private Cloud (VPC) uniquement comme seul moyen d’accéder à vos compartiments Outposts. |
|
file |
|
Le validateur magique est le seul validateur pris en charge pour S3 sur Outposts. |
|
|
|
S3 Select n’est pas pris en charge sur Outposts. |
|
|
|
S3 sur Outposts sur S3A nécessite Java version 11. |
Le tableau suivant décrit Spark les configurations et les valeurs à spécifier pour leurs paramètres lorsque vous configurez un cluster qui utilise S3 sur Outposts avec Amazon EMR.
Paramètre | Valeur par défaut | Valeur requise pour S3 sur Outposts | Explication |
---|---|---|---|
|
|
|
S3 sur Outposts ne prend pas en charge la partition rapide. |
|
|
|
S3 sur Outposts sur S3A nécessite Java version 11. |
Considérations
Tenez compte des points suivants lorsque vous intégrez Amazon EMR avec les compartiments S3 sur Outposts :
-
Amazon S3 sur Outposts est pris en charge avec Amazon EMR version 7.0.0 et ultérieure.
-
Le connecteur S3A est nécessaire pour utiliser S3 sur Outposts avec Amazon EMR. Seul S3A dispose des fonctionnalités requises pour interagir avec les compartiments S3 sur Outposts. Pour obtenir des informations sur la configuration du connecteur S3A, consultez Conditions préalables.
-
Amazon S3 sur Outposts prend en charge uniquement le chiffrement côté serveur avec les clés gérées par Amazon S3 (SSE-S3) avec Amazon EMR. Pour de plus amples informations, veuillez consulter Chiffrement des données dans S3 sur Outposts.
-
Amazon S3 on Outposts ne prend pas en charge les écritures avec le S3A. FileOutputCommitter Les écritures effectuées avec le S3A FileOutputCommitter sur les compartiments S3 on Outposts entraînent l'erreur suivante
InvalidStorageClass: La classe de stockage que vous avez spécifiée
n'est pas valide. -
Amazon S3 sur Outposts n’est pas pris en charge avec Amazon EMR sans serveur ni Amazon EMR sur EKS.
-
Les journaux Amazon EMR sont stockés dans un emplacement Amazon S3 régional que vous sélectionnez et ne sont pas stockés localement dans le compartiment S3 sur Outposts.