Amazon S3 auf Outposts mit lokalem Amazon EMR on Outposts - Amazon S3 in Outposts

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Amazon S3 auf Outposts mit lokalem Amazon EMR on Outposts

Amazon EMR ist eine verwaltete Cluster-Plattform, die den Betrieb von Big-Data-Frameworks vereinfacht, wie Apache Hadoop and Apache Spark, AWS um riesige Datenmengen zu verarbeiten und zu analysieren. Mithilfe dieser Frameworks und verwandter Open-Source-Projekte können Sie Daten für Analysezwecke und Business Intelligence-Workloads verarbeiten. Amazon unterstützt Sie EMR auch bei der Transformation und Übertragung großer Datenmengen in und aus anderen AWS Datenspeichern und Datenbanken und unterstützt Amazon S3 on Outposts. Weitere Informationen zu Amazon EMR finden Sie unter Amazon EMR on Outposts im Amazon EMR Management Guide.

Für Amazon S3 auf Outposts EMR begann Amazon mit der Unterstützung von Apache Hadoop S3A-Anschluss in Version 7.0.0. Frühere Versionen von Amazon unterstützen EMR kein lokales S3 auf Outposts, und das EMR Dateisystem (EMRFS) wird nicht unterstützt.

Unterstützte Anwendungen

Amazon EMR with Amazon S3 on Outposts unterstützt die folgenden Anwendungen:

  • Hadoop

  • Spark

  • Hue

  • Hive

  • Sqoop

  • Pig

  • Hudi

  • Flink

Weitere Informationen finden Sie im Amazon EMR Release Guide.

Erstellen und konfigurieren Sie einen Amazon S3 on Outposts-Bucket

Amazon EMR verwendet AWS SDK for Java zusammen mit Amazon S3 on Outposts die, um Eingabedaten und Ausgabedaten zu speichern. Ihre EMR Amazon-Protokolldateien werden an einem von Ihnen ausgewählten regionalen Amazon S3-Standort gespeichert und nicht lokal auf Outpost gespeichert. Weitere Informationen finden Sie unter EMRAmazon-Protokolle im Amazon EMR Management Guide.

Um Amazon S3 und den DNS Anforderungen zu entsprechen, gelten für S3 on Outposts-Buckets Benennungsbeschränkungen und Einschränkungen. Weitere Informationen finden Sie unter Erstellen eines S3-on-Outposts-Buckets.

Mit EMR Amazon-Version 7.0.0 und höher können Sie Amazon EMR mit S3 auf Outposts und dem S3A-Dateisystem verwenden.

Voraussetzungen

Berechtigungen für S3 on Outposts — Wenn Sie Ihr EMR Amazon-Instance-Profil erstellen, muss Ihre Rolle den Namespace AWS Identity and Access Management (IAM) für S3 auf Outposts enthalten. S3 auf Outposts hat seinen eigenen Namespace,. s3-outposts* Eine Beispielrichtlinie, die diesen Namespace verwendet, finden Sie unter. Einrichtung IAM mit S3 auf Outposts

S3A-Connector — Um Ihren EMR Cluster für den Zugriff auf Daten aus einem Amazon S3 on Outposts-Bucket zu konfigurieren, müssen Sie den Apache Hadoop S3A-Anschluss. Um den Connector zu verwenden, stellen Sie sicher, dass alle Ihre S3 das s3a Schema URIs verwenden. Wenn dies nicht der Fall ist, können Sie die Dateisystemimplementierung, die Sie für Ihren EMR Cluster verwenden, so konfigurieren, dass Ihr S3 mit dem S3A-Connector URIs funktioniert.

Um die Dateisystemimplementierung so zu konfigurieren, dass sie mit dem S3A-Connector funktioniert, verwenden Sie die fs.file_scheme.impl und fs.AbstractFileSystem.file_scheme.impl Konfigurationseigenschaften für Ihren EMR Cluster, wobei URIs dies dem S3-Typ file_scheme entspricht, den Sie haben. Um das folgende Beispiel zu verwenden, ersetzen Sie das Platzhalter für Benutzereingaben mit Ihren eigenen Informationen. Um beispielsweise die Dateisystemimplementierung für S3 zu ändernURIs, die das s3 Schema verwenden, geben Sie die folgenden Cluster-Konfigurationseigenschaften an:

[ { "Classification": "core-site", "Properties": { "fs.s3.impl": "org.apache.hadoop.fs.s3a.S3AFileSystem", "fs.AbstractFileSystem.s3.impl": "org.apache.hadoop.fs.s3a.S3A" } } ]

Um S3A zu verwenden, setzen Sie die fs.file_scheme.impl Konfigurationseigenschaft auf org.apache.hadoop.fs.s3a.S3AFileSystem und legen Sie die fs.AbstractFileSystem.file_scheme.impl Eigenschaft auf org.apache.hadoop.fs.s3a.S3A fest.

Wenn Sie beispielsweise auf den Pfad zugreifens3a://bucket/..., setzen Sie die fs.s3a.impl Eigenschaft auf org.apache.hadoop.fs.s3a.S3AFileSystem und legen Sie die fs.AbstractFileSystem.s3a.impl Eigenschaft auf org.apache.hadoop.fs.s3a.S3A fest.

Erste Schritte bei der Nutzung von Amazon EMR mit Amazon S3 auf Outposts

In den folgenden Themen wird erklärt, wie Sie mit der Nutzung von Amazon EMR mit Amazon S3 auf Outposts beginnen können.

Erstellen einer Berechtigungsrichtlinie

Bevor Sie einen EMR Cluster erstellen können, der Amazon S3 auf Outposts verwendet, müssen Sie eine IAM Richtlinie erstellen, die an das EC2 Amazon-Instance-Profil für den Cluster angehängt wird. Die Richtlinie muss über Berechtigungen für den Zugriff auf den S3 on Outposts-Zugriffspunkt Amazon Resource Name (ARN) verfügen. Weitere Informationen zum Erstellen von IAM Richtlinien für S3 auf Outposts finden Sie unterEinrichtung IAM mit S3 auf Outposts.

Die folgende Beispielrichtlinie zeigt, wie die erforderlichen Berechtigungen erteilt werden. Nachdem Sie die Richtlinie erstellt haben, fügen Sie die Richtlinie der Instanzprofilrolle hinzu, mit der Sie Ihren EMR Cluster erstellen, wie im Ihren Cluster erstellen und konfigurieren Abschnitt beschrieben. Um dieses Beispiel zu verwenden, ersetzen Sie Platzhalter für Benutzereingaben mit Ihren eigenen Informationen.

{ "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:*" ] } ] }

Ihren Cluster erstellen und konfigurieren

Um einen Cluster zu erstellen, auf dem Spark mit S3 auf Outposts ausgeführt wird, führen Sie die folgenden Schritte in der Konsole aus.

Um einen Cluster zu erstellen, der läuft Spark mit S3 auf Outposts
  1. Öffnen Sie die EMR Amazon-Konsole unter https://console.aws.amazon.com/elasticmapreduce/.

  2. Wählen Sie im linken Navigationsbereich die Option Cluster aus.

  3. Wählen Sie Cluster erstellen.

  4. Für die EMRAmazon-Veröffentlichung wählen Sie emr-7.0.0 oder höher.

  5. Wählen Sie für das Anwendungspaket die Option Spark interactive. Wählen Sie dann alle anderen unterstützten Anwendungen aus, die Sie in Ihren Cluster aufnehmen möchten.

  6. Um Amazon S3 auf Outposts zu aktivieren, geben Sie Ihre Konfigurationseinstellungen ein.

    Beispielkonfigurationseinstellungen

    Um die folgenden Beispielkonfigurationseinstellungen zu verwenden, ersetzen Sie sie durch Ihre eigenen Informationen. 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" } } ]
  7. Wählen Sie im Bereich Netzwerk eine virtuelle private Cloud (VPC) und ein Subnetz aus, die sich auf Ihrem AWS Outposts Rack befinden. Weitere Informationen zu Amazon EMR on Outposts finden Sie unter EMRClusters on AWS Outposts im Amazon EMR Management Guide.

  8. Wählen Sie im EMR Abschnitt EC2Instanzprofil für Amazon die IAM Rolle aus, der die zuvor erstellte Berechtigungsrichtlinie angehängt ist.

  9. Konfigurieren Sie Ihre verbleibenden Cluster-Einstellungen und wählen Sie dann Create cluster aus.

Konfigurationsübersicht

In der folgenden Tabelle werden S3A-Konfigurationen und die Werte beschrieben, die für ihre Parameter angegeben werden müssen, wenn Sie einen Cluster einrichten, der S3 auf Outposts mit Amazon verwendet. EMR

Parameter Standardwert Erforderlicher Wert für S3 auf Outposts Erklärung

fs.s3a.aws.credentials.provider

Wenn nicht angegeben, sucht S3A im Region-Bucket nach S3 mit dem Outposts-Bucket-Namen.

Der Access Point ARN des S3 on Outposts Buckets

Amazon S3 on Outposts unterstützt ausschließlich virtuelle private Cloud-Zugriffspunkte (VPC) als einzige Möglichkeit, auf Ihre Outposts-Buckets zuzugreifen.

fs.s3a.committer.name

file

magic

Magic Committer ist der einzige unterstützte Committer für S3 auf Outposts.

fs.s3a.select.enabled

TRUE

FALSE

S3 Select wird auf Outposts nicht unterstützt.

JAVA_HOME

/usr/lib/jvm/java-8

/usr/lib/jvm/java-11-amazon-corretto.x86_64

S3 auf Outposts auf S3A erfordert Java Version 11.

In der folgenden Tabelle wird beschrieben Spark Konfigurationen und die Werte, die für ihre Parameter angegeben werden müssen, wenn Sie einen Cluster einrichten, der S3 auf Outposts mit Amazon EMR verwendet.

Parameter Standardwert Erforderlicher Wert für S3 auf Outposts Erklärung

spark.sql.sources.fastS3PartitionDiscovery.enabled

TRUE

FALSE

S3 auf Outposts unterstützt keine schnelle Partition.

spark.executorEnv.JAVA_HOME

/usr/lib/jvm/java-8

/usr/lib/jvm/java-11-amazon-corretto.x86_64

S3 auf Outposts auf S3A erfordert Java-Version 11.

Überlegungen

Beachten Sie Folgendes, wenn Sie Amazon EMR mit S3 in Outposts-Buckets integrieren:

  • Amazon S3 on Outposts wird mit EMR Amazon-Version 7.0.0 und höher unterstützt.

  • Der S3A-Connector ist erforderlich, um S3 auf Outposts mit Amazon zu verwenden. EMR Nur S3A verfügt über die Funktionen, die für die Interaktion mit S3 in Outposts-Buckets erforderlich sind. Informationen zur Einrichtung des S3A-Connectors finden Sie unter Voraussetzungen.

  • Amazon S3 on Outposts unterstützt nur serverseitige Verschlüsselung mit von Amazon S3 verwalteten Schlüsseln (SSE-S3) bei Amazon. EMR Weitere Informationen finden Sie unter Datenverschlüsselung in S3 on Outposts.

  • Amazon S3 on Outposts unterstützt keine Schreibvorgänge mit dem FileOutputCommitter S3A. Schreibvorgänge mit dem S3A FileOutputCommitter auf S3 auf Outposts-Buckets führen zu dem folgenden Fehler InvalidStorageClass: Die von Ihnen angegebene Speicherklasse ist nicht gültig.

  • Amazon S3 on Outposts wird mit Amazon EMR Serverless oder Amazon EMR on nicht unterstützt. EKS

  • EMRAmazon-Protokolle werden an einem von Ihnen ausgewählten regionalen Amazon S3-Standort gespeichert und nicht lokal im S3 on Outposts-Bucket gespeichert.