Amazon S3 di Outposts dengan Amazon lokal di Outposts EMR - Amazon S3 di Outposts

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Amazon S3 di Outposts dengan Amazon lokal di Outposts EMR

Amazon EMR adalah platform cluster terkelola yang menyederhanakan menjalankan kerangka kerja data besar, seperti Apache Hadoop and Apache Spark, AWS untuk memproses dan menganalisis sejumlah besar data. Dengan menggunakan kerangka kerja ini dan proyek sumber terbuka terkait, Anda dapat memproses data untuk tujuan analitik dan beban kerja intelijen bisnis. Amazon EMR juga membantu Anda mengubah dan memindahkan sejumlah besar data ke dalam dan keluar dari penyimpanan AWS data dan database lainnya, serta mendukung Amazon S3 di Outposts. Untuk informasi selengkapnya tentang AmazonEMR, lihat Amazon EMR di Outposts di Panduan EMRManajemen Amazon.

Untuk Amazon S3 di Outposts, EMR Amazon mulai mendukung Apache Hadoop Konektor S3A dalam versi 7.0.0. Versi Amazon sebelumnya EMR tidak mendukung S3 lokal di Outposts, dan EMR File System EMRFS () tidak didukung.

Aplikasi-aplikasi yang didukung

Amazon EMR dengan Amazon S3 di Outposts mendukung aplikasi berikut:

  • Hadoop

  • Spark

  • Hue

  • Hive

  • Sqoop

  • Pig

  • Hudi

  • Flink

Untuk informasi selengkapnya, lihat Panduan EMR Rilis Amazon.

Membuat dan mengonfigurasi bucket Amazon S3 di Outposts

Amazon EMR menggunakan AWS SDK for Java dengan Amazon S3 di Outposts untuk menyimpan data input dan data output. File EMR log Amazon Anda disimpan di lokasi Amazon S3 Regional yang Anda pilih dan tidak disimpan secara lokal di Outpost. Untuk informasi selengkapnya, lihat EMRlog Amazon di Panduan EMR Manajemen Amazon.

Agar sesuai dengan Amazon S3 DNS dan persyaratan, bucket S3 on Outposts memiliki batasan dan batasan penamaan. Untuk informasi selengkapnya, lihat Membuat bucket S3 di Outposts.

Dengan Amazon EMR versi 7.0.0 dan yang lebih baru, Anda dapat menggunakan Amazon EMR dengan S3 di Outposts dan sistem file S3A.

Prasyarat

Izin S3 on Outposts — Saat Anda membuat profil instans EMR Amazon, peran Anda harus berisi namespace IAM () AWS Identity and Access Management untuk S3 di Outposts. S3 di Outposts memiliki namespace sendiri,. s3-outposts* Untuk contoh kebijakan yang menggunakan namespace ini, lihat. Menyiapkan IAM dengan S3 di Outposts

Konektor S3A - Untuk mengonfigurasi EMR klaster Anda untuk mengakses data dari bucket Amazon S3 di Outposts, Anda harus menggunakan Apache Hadoop Konektor S3A. Untuk menggunakan konektor, pastikan semua S3 Anda URIs menggunakan s3a skema. Jika tidak, Anda dapat mengonfigurasi implementasi sistem file yang Anda gunakan untuk EMR cluster Anda sehingga S3 Anda URIs bekerja dengan konektor S3A.

Untuk mengonfigurasi implementasi sistem file agar bekerja dengan konektor S3A, Anda menggunakan properti fs.file_scheme.impl dan fs.AbstractFileSystem.file_scheme.impl konfigurasi untuk EMR cluster Anda, yang file_scheme sesuai dengan jenis S3 URIs yang Anda miliki. Untuk menggunakan contoh berikut, ganti placeholder masukan pengguna dengan informasi Anda sendiri. Misalnya, untuk mengubah implementasi sistem file untuk S3 URIs yang menggunakan s3 skema, tentukan properti konfigurasi cluster berikut:

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

Untuk menggunakan S3A, atur properti fs.file_scheme.impl konfigurasi keorg.apache.hadoop.fs.s3a.S3AFileSystem, dan setel fs.AbstractFileSystem.file_scheme.impl properti ke. org.apache.hadoop.fs.s3a.S3A

Misalnya, jika Anda mengakses jalurs3a://bucket/..., atur fs.s3a.impl properti keorg.apache.hadoop.fs.s3a.S3AFileSystem, dan setel fs.AbstractFileSystem.s3a.impl properti keorg.apache.hadoop.fs.s3a.S3A.

Memulai menggunakan Amazon EMR dengan Amazon S3 di Outposts

Topik berikut menjelaskan cara memulai menggunakan Amazon EMR dengan Amazon S3 di Outposts.

Membuat kebijakan izin

Sebelum Anda dapat membuat EMR klaster yang menggunakan Amazon S3 di Outposts, Anda harus membuat IAM kebijakan untuk melampirkan ke profil EC2 instans Amazon untuk cluster. Kebijakan harus memiliki izin untuk mengakses jalur akses S3 di Outposts Amazon Resource Name (). ARN Untuk informasi selengkapnya tentang membuat IAM kebijakan untuk S3 di Outposts, lihat. Menyiapkan IAM dengan S3 di Outposts

Kebijakan contoh berikut menunjukkan cara memberikan izin yang diperlukan. Setelah Anda membuat kebijakan, lampirkan kebijakan ke peran profil instance yang Anda gunakan untuk membuat EMR klaster, seperti yang dijelaskan di Buat dan konfigurasikan cluster Anda bagian. Untuk menggunakan contoh ini, ganti placeholder masukan pengguna dengan informasi Anda sendiri.

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

Buat dan konfigurasikan cluster Anda

Untuk membuat cluster yang menjalankan Spark dengan S3 di Outposts, selesaikan langkah-langkah berikut di konsol.

Untuk membuat cluster yang berjalan Spark dengan S3 di Outposts
  1. Buka EMR konsol Amazon di https://console.aws.amazon.com/elasticmapreduce/.

  2. Pada panel navigasi sebelah kiri, pilih Klaster.

  3. Pilih Buat klaster.

  4. Untuk EMRrilis Amazon, pilih emr-7.0.0atau nanti.

  5. Untuk bundel Aplikasi, pilih Spark interaktif. Kemudian pilih aplikasi lain yang didukung yang ingin Anda sertakan dalam cluster Anda.

  6. Untuk mengaktifkan Amazon S3 di Outposts, masukkan pengaturan konfigurasi Anda.

    Contoh pengaturan konfigurasi

    Untuk menggunakan pengaturan konfigurasi sampel berikut, ganti user input placeholders dengan informasi Anda sendiri.

    [ { "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. Di bagian Networking, pilih virtual private cloud (VPC) dan subnet yang ada di AWS Outposts rak Anda. Untuk informasi selengkapnya tentang Amazon EMR di Outposts, lihat EMRkluster AWS Outposts di Panduan Manajemen Amazon EMR.

  8. Di EMR bagian profil EC2 instans untuk Amazon, pilih IAM peran yang memiliki kebijakan izin yang Anda buat sebelumnya terlampir.

  9. Konfigurasikan setelan cluster Anda yang tersisa, lalu pilih Create cluster.

Ikhtisar konfigurasi

Tabel berikut menjelaskan konfigurasi S3A dan nilai yang akan ditentukan parameternya saat Anda menyiapkan cluster yang menggunakan S3 di Outposts dengan Amazon. EMR

Parameter Nilai default Nilai yang diperlukan untuk S3 di Outposts Penjelasan

fs.s3a.aws.credentials.provider

Jika tidak ditentukan, S3A akan mencari S3 di bucket Region dengan nama bucket Outposts.

Titik akses bucket ARN S3 on Outposts

Amazon S3 di Outposts mendukung titik akses virtual private cloud (VPC) saja sebagai satu-satunya cara untuk mengakses bucket Outposts Anda.

fs.s3a.committer.name

file

magic

Magic committer adalah satu-satunya committer yang didukung untuk S3 di Outposts.

fs.s3a.select.enabled

TRUE

FALSE

S3 Select tidak didukung di Outposts.

JAVA_HOME

/usr/lib/jvm/java-8

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

S3 di Outposts di S3A membutuhkan Java versi 11.

Tabel berikut menjelaskan Spark konfigurasi dan nilai yang akan ditentukan parameternya saat Anda menyiapkan cluster yang menggunakan S3 di Outposts dengan Amazon. EMR

Parameter Nilai default Nilai yang diperlukan untuk S3 di Outposts Penjelasan

spark.sql.sources.fastS3PartitionDiscovery.enabled

TRUE

FALSE

S3 di Outposts tidak mendukung partisi cepat.

spark.executorEnv.JAVA_HOME

/usr/lib/jvm/java-8

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

S3 di Outposts pada S3A membutuhkan Java versi 11.

Pertimbangan

Pertimbangkan hal berikut saat Anda mengintegrasikan Amazon EMR dengan S3 di bucket Outposts:

  • Amazon S3 di Outposts didukung dengan Amazon EMR versi 7.0.0 dan yang lebih baru.

  • Konektor S3A diperlukan untuk menggunakan S3 di Outposts dengan Amazon. EMR Hanya S3A yang memiliki fitur yang diperlukan untuk berinteraksi dengan S3 pada bucket Outposts. Untuk informasi penyiapan konektor S3A, lihat Prasyarat.

  • Amazon S3 di Outposts hanya mendukung enkripsi sisi server dengan kunci terkelola Amazon S3 (-S3) dengan Amazon. SSE EMR Untuk informasi selengkapnya, lihat Enkripsi data dalam S3 di Outposts.

  • Amazon S3 di Outposts tidak mendukung penulisan dengan S3A. FileOutputCommitter Menulis dengan S3A FileOutputCommitter pada S3 pada bucket Outposts menghasilkan kesalahan berikut: InvalidStorageClass: Kelas penyimpanan yang Anda tentukan tidak valid.

  • Amazon S3 di Outposts tidak didukung dengan Amazon EMR Serverless atau Amazon di. EMR EKS

  • EMRLog Amazon disimpan di lokasi Amazon S3 Regional yang Anda pilih, dan tidak disimpan secara lokal di bucket S3 on Outposts.