Amazon S3 su Outposts con Amazon on Outposts locale EMR - Amazon S3 su Outposts

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Amazon S3 su Outposts con Amazon on Outposts locale EMR

Amazon EMR è una piattaforma di cluster gestita che semplifica l'esecuzione di framework di big data, come Apache Hadoop e Apache Spark, AWS per elaborare e analizzare grandi quantità di dati. Utilizzando questi framework e i relativi progetti open source, è possibile elaborare i dati per scopi di analisi e carichi di lavoro di business intelligence. Amazon ti aiuta EMR anche a trasformare e spostare grandi quantità di dati da e verso altri archivi di AWS dati e database e supporta Amazon S3 on Outposts. Per ulteriori informazioni su AmazonEMR, consulta Amazon EMR on Outposts nella Amazon EMR Management Guide.

Per Amazon S3 on Outposts, EMR Amazon ha iniziato a supportare il Apache Hadoop Connettore S3A nella versione 7.0.0. Le versioni precedenti di Amazon EMR non supportano S3 locale su Outposts e EMR il File System EMRFS () non è supportato.

Applicazioni supportate

Amazon EMR con Amazon S3 on Outposts supporta le seguenti applicazioni:

  • Hadoop

  • Spark

  • Hue

  • Hive

  • Sqoop

  • Pig

  • Hudi

  • Flink

Per ulteriori informazioni, consulta la Amazon EMR Release Guide.

Crea e configura un bucket Amazon S3 on Outposts

Amazon EMR utilizza il AWS SDK for Java con Amazon S3 on Outposts per archiviare i dati di input e i dati di output. I tuoi file di EMR log di Amazon sono archiviati in una posizione Amazon S3 regionale selezionata e non sono archiviati localmente su Outpost. Per ulteriori informazioni, consulta Amazon EMR logs nella Amazon EMR Management Guide.

Per conformarsi ad Amazon S3 DNS e ai requisiti, i bucket S3 on Outposts hanno restrizioni e limitazioni di denominazione. Per ulteriori informazioni, consulta Creazione di un bucket S3 su Outposts.

Con la EMR versione 7.0.0 e successive di Amazon, puoi utilizzare Amazon EMR con S3 su Outposts e il file system S3A.

Prerequisiti

Autorizzazioni S3 on Outposts: quando crei il tuo profilo di istanza EMR Amazon, il tuo ruolo deve contenere lo spazio AWS Identity and Access Management dei nomi IAM () per S3 on Outposts. S3 on Outposts ha il proprio spazio dei nomi,. s3-outposts* Per un esempio di politica che utilizza questo spazio dei nomi, vedi. Configurazione IAM con S3 su Outposts

Connettore S3A: per configurare il EMR cluster per accedere ai dati da un bucket Amazon S3 on Outposts, devi utilizzare il Apache Hadoop Connettore S3A. Per utilizzare il connettore, assicurati che tutti i tuoi S3 URIs utilizzino lo schema. s3a In caso contrario, puoi configurare l'implementazione del file system che usi per il EMR cluster in modo che S3 URIs funzioni con il connettore S3A.

Per configurare l'implementazione del file system in modo che funzioni con il connettore S3A, utilizzi le proprietà fs.file_scheme.impl e di fs.AbstractFileSystem.file_scheme.impl configurazione del EMR cluster, dove file_scheme corrisponde al tipo di S3 di cui disponi. URIs Per utilizzare l'esempio seguente, sostituisci segnaposti di input dall'utente con le tue informazioni. Ad esempio, per modificare l'implementazione del file system per S3 URIs che utilizza s3 lo schema, specifica le seguenti proprietà di configurazione del cluster:

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

Per utilizzare S3A, imposta la proprietà di fs.file_scheme.impl configurazione su org.apache.hadoop.fs.s3a.S3AFileSystem e imposta la fs.AbstractFileSystem.file_scheme.impl proprietà su. org.apache.hadoop.fs.s3a.S3A

Ad esempio, se state accedendo al percorsos3a://bucket/..., impostate la fs.s3a.impl proprietà su e impostate la fs.AbstractFileSystem.s3a.impl proprietà su. org.apache.hadoop.fs.s3a.S3AFileSystem org.apache.hadoop.fs.s3a.S3A

Inizia a usare Amazon EMR con Amazon S3 on Outposts

I seguenti argomenti spiegano come iniziare a usare Amazon EMR con Amazon S3 on Outposts.

Creazione di una policy di autorizzazione

Prima di poter creare un EMR cluster che utilizzi Amazon S3 su Outposts, devi creare una IAM policy da collegare al profilo dell'EC2istanza Amazon per il cluster. La policy deve disporre delle autorizzazioni per accedere al punto di accesso S3 on Outposts Amazon Resource Name (). ARN Per ulteriori informazioni sulla creazione IAM di policy per S3 su Outposts, consulta. Configurazione IAM con S3 su Outposts

La seguente politica di esempio mostra come concedere le autorizzazioni richieste. Dopo aver creato la policy, associa la policy al ruolo del profilo di istanza che utilizzi per creare il EMR cluster, come descritto nella Creazione e configurazione del cluster sezione. Per utilizzare questo esempio, sostituisci il segnaposti di input dall'utente con le tue informazioni.

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

Creazione e configurazione del cluster

Per creare un cluster che esegua Spark con S3 su Outposts, completa i seguenti passaggi nella console.

Per creare un cluster che funzioni Spark con S3 su Outposts
  1. Apri la EMR console Amazon all'indirizzo https://console.aws.amazon.com/elasticmapreduce/.

  2. Nel pannello di navigazione a sinistra, seleziona Cluster.

  3. Scegli Create cluster (Crea cluster).

  4. Per la EMRversione Amazon, scegli emr-7.0.0 o versione successiva.

  5. Per il pacchetto di applicazioni, scegli Spark interactive. Quindi seleziona tutte le altre applicazioni supportate che desideri includere nel cluster.

  6. Per abilitare Amazon S3 su Outposts, inserisci le impostazioni di configurazione.

    Impostazioni di configurazione di esempio

    Per utilizzare le seguenti impostazioni di configurazione di esempio, user input placeholders sostituiscile con le tue informazioni.

    [ { "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. Nella sezione Rete, scegliete un cloud privato virtuale (VPC) e una sottorete presenti sul AWS Outposts rack. Per ulteriori informazioni su Amazon EMR on Outposts, consulta EMRClusters on AWS Outposts nella Amazon EMR Management Guide.

  8. Nella EMR sezione Profilo dell'EC2istanza per Amazon, scegli il IAM ruolo a cui è allegata la politica di autorizzazioni che hai creato in precedenza.

  9. Configura le impostazioni rimanenti del cluster, quindi scegli Crea cluster.

Panoramica delle configurazioni

La tabella seguente descrive le configurazioni S3A e i valori da specificare per i relativi parametri quando si configura un cluster che utilizza S3 su Outposts con Amazon. EMR

Parametro Valore predefinito Valore richiesto per S3 on Outposts Spiegazione

fs.s3a.aws.credentials.provider

Se non specificato, S3A cercherà S3 nel bucket Region con il nome del bucket Outposts.

Il punto ARN di accesso del bucket S3 on Outposts

Amazon S3 on Outposts supporta punti di accesso solo al cloud privato virtuale (VPC) come unico mezzo per accedere ai tuoi bucket Outposts.

fs.s3a.committer.name

file

magic

Magic committer è l'unico committer supportato per S3 su Outposts.

fs.s3a.select.enabled

TRUE

FALSE

S3 Select non è supportato su Outposts.

JAVA_HOME

/usr/lib/jvm/java-8

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

S3 on Outposts su S3A richiede Java versione 11.

La tabella seguente descrive Spark configurazioni e i valori da specificare per i relativi parametri quando configuri un cluster che utilizza S3 su Outposts con Amazon. EMR

Parametro Valore predefinito Valore richiesto per S3 on Outposts Spiegazione

spark.sql.sources.fastS3PartitionDiscovery.enabled

TRUE

FALSE

S3 on Outposts non supporta la partizione veloce.

spark.executorEnv.JAVA_HOME

/usr/lib/jvm/java-8

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

S3 on Outposts su S3A richiede la versione Java 11.

Considerazioni

Considera quanto segue quando integri Amazon EMR con i bucket S3 on Outposts:

  • Amazon S3 on Outposts è supportato dalla EMR versione Amazon 7.0.0 e successive.

  • Il connettore S3A è necessario per utilizzare S3 on Outposts con Amazon. EMR Solo S3A dispone delle funzionalità necessarie per interagire con i bucket S3 on Outposts. Per informazioni sulla configurazione del connettore S3A, consulta Prerequisiti.

  • Amazon S3 on Outposts supporta solo la crittografia lato server con chiavi gestite di Amazon S3 (-S3) con Amazon. SSE EMR Per ulteriori informazioni, consulta Crittografia dei dati in S3 su Outposts.

  • Amazon S3 on Outposts non supporta le scritture con S3A. FileOutputCommitter Le scritture con i bucket S3A FileOutputCommitter su S3 on Outposts generano il seguente errore InvalidStorageClass: La classe di archiviazione specificata non è valida.

  • Amazon S3 on Outposts non è supportato con Amazon Serverless o Amazon onEMR. EMR EKS

  • EMRI log di Amazon vengono archiviati in una posizione Amazon S3 regionale selezionata dall'utente e non vengono archiviati localmente nel bucket S3 on Outposts.