Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasikan peran runtime IAM untuk akses kluster Amazon EMR di Studio
Saat tersambung ke klaster EMR Amazon dari notebook Studio atau Studio Classic, Anda dapat menelusuri daftar peran IAM secara visual, yang dikenal sebagai peran runtime, dan memilihnya dengan cepat. Selanjutnya, semua pekerjaan Apache Spark, Apache Hive, atau Presto yang dibuat dari buku catatan Anda hanya mengakses data dan sumber daya yang diizinkan oleh kebijakan yang dilampirkan pada peran runtime. Selain itu, saat data diakses dari data lake yang dikelola AWS Lake Formation, Anda dapat menerapkan akses tingkat tabel dan tingkat kolom menggunakan kebijakan yang dilampirkan pada peran runtime.
Dengan kemampuan ini, Anda dan rekan tim Anda dapat terhubung ke cluster yang sama, masing-masing menggunakan peran runtime yang dicakup dengan izin yang sesuai dengan tingkat akses individual Anda ke data. Sesi Anda juga terisolasi satu sama lain di cluster bersama.
Untuk mencoba fitur ini menggunakan Studio Classic, lihat Menerapkan kontrol akses data berbutir halus dengan dan AWS Lake Formation Amazon EMR dari Amazon
Prasyarat
Sebelum Anda memulai, pastikan Anda memenuhi prasyarat berikut:
-
Gunakan Amazon EMR versi 6.9 atau lebih tinggi.
-
Untuk pengguna Studio Classic: Gunakan JupyterLab versi 3 dalam konfigurasi aplikasi server Studio Classic Jupyter. Versi ini mendukung koneksi Studio Classic ke cluster EMR Amazon menggunakan peran runtime.
Untuk pengguna Studio: Gunakan versi gambar SageMaker distribusi
1.10
atau lebih tinggi. -
Izinkan penggunaan peran runtime dalam konfigurasi keamanan klaster Anda. Untuk informasi selengkapnya, lihat Peran waktu proses untuk langkah-langkah EMR Amazon.
-
Buat buku catatan dengan salah satu kernel yang tercantum diGambar dan kernel yang didukung untuk terhubung ke kluster EMR Amazon dari Studio atau Studio Classic.
-
Pastikan Anda meninjau instruksi Siapkan Studio untuk menggunakan peran IAM runtime untuk mengonfigurasi peran runtime Anda.
Skenario koneksi lintas akun
Autentikasi peran runtime mendukung berbagai skenario koneksi lintas akun saat data Anda berada di luar akun Studio Anda. Gambar berikut menunjukkan tiga cara berbeda untuk menetapkan klaster EMR Amazon, data, dan bahkan peran eksekusi runtime Amazon EMR antara Studio dan akun data:

Di opsi 1, klaster EMR Amazon dan peran eksekusi runtime Amazon EMR Anda berada di akun data terpisah dari akun Studio. Anda menentukan kebijakan izin peran akses EMR Amazon terpisah (juga disebut sebagaiAssumable role
) yang memberikan izin ke peran eksekusi Studio atau Studio Classic untuk mengambil peran akses Amazon EMR. Peran akses EMR Amazon kemudian memanggil API EMR Amazon GetClusterSessionCredentials
atas nama peran eksekusi Studio atau Studio Classic Anda, sehingga Anda dapat mengakses klaster.
Di opsi 2, klaster EMR Amazon dan peran eksekusi runtime Amazon EMR Anda ada di akun Studio Anda. Peran eksekusi Studio Anda memiliki izin untuk menggunakan Amazon EMR API GetClusterSessionCredentials
untuk mendapatkan akses ke klaster Anda. Untuk mengakses bucket Amazon S3, berikan izin akses bucket Amazon S3 peran eksekusi runtime Amazon S3 lintas akun - Anda memberikan izin ini dalam kebijakan bucket Amazon S3 Anda.
Di opsi 3, kluster EMR Amazon Anda ada di akun Studio Anda, dan peran eksekusi runtime Amazon EMR ada di akun data. Peran eksekusi Studio atau Studio Classic Anda memiliki izin untuk menggunakan Amazon EMR API GetClusterSessionCredentials
untuk mendapatkan akses ke klaster Anda. Tambahkan peran eksekusi runtime Amazon EMR ke dalam konfigurasi peran eksekusi JSON. Kemudian Anda dapat memilih peran di UI saat memilih klaster. Untuk detail tentang cara mengatur file JSON konfigurasi peran eksekusi, lihatMemuat peran eksekusi Anda ke Studio atau Studio Classic.
Siapkan Studio untuk menggunakan peran IAM runtime
Untuk membuat otentikasi peran runtime untuk kluster EMR Amazon Anda, konfigurasikan kebijakan IAM, jaringan, dan peningkatan kegunaan yang diperlukan. Penyiapan Anda bergantung pada apakah Anda menangani pengaturan lintas akun jika klaster EMR Amazon, peran eksekusi runtime Amazon EMR, atau keduanya, berada di luar akun Studio Anda. Bagian berikut memandu Anda melalui kebijakan untuk menginstal, cara mengonfigurasi jaringan untuk mengizinkan lalu lintas antar akun, dan file konfigurasi lokal yang akan disiapkan untuk mengotomatiskan koneksi EMR Amazon Anda.
Konfigurasikan autentikasi peran runtime saat klaster EMR Amazon dan Studio berada di akun yang sama
Jika klaster EMR Amazon Anda berada di akun Studio Anda, selesaikan langkah-langkah berikut untuk menambahkan izin yang diperlukan ke kebijakan eksekusi Studio Anda:
-
Tambahkan kebijakan IAM yang diperlukan untuk terhubung ke kluster EMR Amazon. Lihat perinciannya di Konfigurasikan daftar kluster EMR Amazon.
-
Berikan izin untuk memanggil API EMR Amazon
GetClusterSessionCredentials
saat Anda meneruskan satu atau beberapa peran eksekusi runtime Amazon EMR yang diizinkan yang ditentukan dalam kebijakan. -
(Opsional) Berikan izin untuk meneruskan peran IAM yang mengikuti konvensi penamaan yang ditentukan pengguna.
-
(Opsional) Berikan izin untuk mengakses kluster EMR Amazon yang ditandai dengan string yang ditentukan pengguna tertentu.
-
Memuat peran IAM Anda terlebih dahulu sehingga Anda dapat memilih peran yang akan digunakan saat Anda terhubung ke klaster EMR Amazon Anda. Untuk detail tentang cara pramuat peran IAM Anda, lihat. Memuat peran eksekusi Anda ke Studio atau Studio Classic
Contoh kebijakan berikut memungkinkan peran eksekusi runtime Amazon EMR milik grup pemodelan dan pelatihan untuk dipanggil. GetClusterSessionCredentials
Selain itu, pemegang polis dapat mengakses kluster EMR Amazon yang ditandai dengan string atau. modeling
training
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "elasticmapreduce:GetClusterSessionCredentials", "Resource": "*", "Condition": { "StringLike": { "elasticmapreduce:ExecutionRoleArn": [ "arn:aws:iam::123456780910:role/emr-execution-role-ml-modeling*", "arn:aws:iam::123456780910:role/emr-execution-role-ml-training*" ], "elasticmapreduce:ResourceTag/group": [ "*modeling*", "*training*" ] } } } ] }
Konfigurasikan autentikasi peran runtime saat klaster dan Studio Anda berada di akun yang berbeda
Jika klaster EMR Amazon Anda tidak ada di akun Studio Anda, izinkan peran eksekusi SageMaker AI Anda untuk mengambil peran akses Amazon EMR lintas akun sehingga Anda dapat terhubung ke cluster. Selesaikan langkah-langkah berikut untuk menyiapkan konfigurasi lintas akun Anda:
-
Buat kebijakan izin peran eksekusi SageMaker AI Anda sehingga peran eksekusi dapat mengambil peran akses EMR Amazon. Kebijakan berikut adalah contoh:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAssumeCrossAccountEMRAccessRole", "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::
emr_account_id
:role/emr-access-role-name
" } ] } -
Buat kebijakan kepercayaan untuk menentukan akun Studio mana IDs yang dipercaya untuk mengambil peran akses EMR Amazon. Kebijakan berikut adalah contoh:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCrossAccountSageMakerExecutionRoleToAssumeThisRole", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
studio_account_id
:role/studio_execution_role
" }, "Action": "sts:AssumeRole" } } -
Buat kebijakan izin peran akses EMR Amazon, yang memberikan peran eksekusi runtime Amazon EMR izin yang diperlukan untuk melaksanakan tugas yang dimaksudkan di cluster. Konfigurasikan peran akses EMR Amazon untuk memanggil API
GetClusterSessionCredentials
dengan peran eksekusi runtime Amazon EMR yang ditentukan dalam kebijakan izin peran akses. Kebijakan berikut adalah contoh:{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCallingEmrGetClusterSessionCredentialsAPI", "Effect": "Allow", "Action": "elasticmapreduce:GetClusterSessionCredentials", "Resource": "", "Condition": { "StringLike": { "elasticmapreduce:ExecutionRoleArn": [ "arn:aws:iam::
emr_account_id
:role/emr-execution-role-name
" ] } } } ] } -
Siapkan jaringan lintas akun sehingga lalu lintas dapat bergerak bolak-balik antar akun Anda. Untuk instruksi terpandu, lihat Konfigurasikan akses jaringan untuk kluster EMR Amazon AndaMengatur. Langkah-langkah di bagian ini membantu Anda menyelesaikan tugas-tugas berikut:
-
VPC-peer akun Studio Anda dan akun EMR Amazon Anda untuk membuat koneksi.
-
Tambahkan rute secara manual ke tabel rute subnet pribadi di kedua akun. Ini memungkinkan pembuatan dan koneksi cluster EMR Amazon dari akun Studio ke subnet pribadi akun jarak jauh.
-
Siapkan grup keamanan yang dilampirkan ke domain Studio Anda untuk mengizinkan lalu lintas keluar dan grup keamanan node utama EMR Amazon untuk mengizinkan lalu lintas TCP masuk dari grup keamanan instans Studio.
-
-
Memuat peran runtime IAM agar Anda dapat memilih peran yang akan digunakan saat terhubung ke klaster EMR Amazon. Untuk detail tentang cara pramuat peran IAM Anda, lihat. Memuat peran eksekusi Anda ke Studio atau Studio Classic
Konfigurasikan akses Lake Formation
Saat mengakses data dari data lake yang dikelola oleh AWS Lake Formation, Anda dapat menerapkan akses tingkat tabel dan tingkat kolom menggunakan kebijakan yang dilampirkan pada peran runtime Anda. Untuk mengonfigurasi izin akses Lake Formation, lihat Mengintegrasikan Amazon EMR dengan. AWS Lake Formation
Memuat peran eksekusi Anda ke Studio atau Studio Classic
Anda dapat melakukan pramuat peran runtime IAM sehingga Anda dapat memilih peran yang akan digunakan saat terhubung ke klaster EMR Amazon. Pengguna JupyterLab di Studio dapat menggunakan konsol SageMaker AI atau skrip yang disediakan.