Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasikan CloudFormation template Amazon EMR di Service Catalog
Topik ini mengasumsikan administrator akrab dengan AWS CloudFormation, portofolio dan produk di AWS Service Catalog, serta Amazon EMR.
Untuk menyederhanakan pembuatan cluster EMR Amazon dari Studio, administrator dapat mendaftarkan template CloudFormation EMR Amazon sebagai produk dalam portofolio. AWS Service Catalog Untuk membuat template tersedia bagi ilmuwan data, mereka harus mengaitkan portofolio dengan peran eksekusi SageMaker AI yang digunakan di Studio atau Studio Classic. Terakhir, untuk memungkinkan pengguna menemukan templat, menyediakan kluster, dan terhubung ke kluster EMR Amazon dari Studio atau Studio Classic, administrator perlu menetapkan izin akses yang sesuai.
AWS CloudFormation Template EMR Amazon dapat memungkinkan pengguna akhir untuk menyesuaikan berbagai aspek cluster. Misalnya, administrator dapat menentukan daftar jenis instans yang disetujui yang dapat dipilih pengguna saat membuat klaster.
Petunjuk berikut menggunakan end-to-end CloudFormation tumpukan
catatan
GitHub Repositori aws-samples/ sagemaker-studio-emr
Repositori sagemaker-studio-emr/cloudformation/emr_servicecatalog_templates berisi berbagai contoh templat
Lihat detail tentang metode otentikasi yang dapat Anda gunakan untuk terhubung ke klaster EMR Amazon. Connect ke kluster EMR Amazon dari SageMaker Studio atau Studio Classic
Untuk memungkinkan ilmuwan data menemukan CloudFormation templat EMR Amazon dan klaster penyediaan dari Studio atau Studio Classic, ikuti langkah-langkah berikut.
Langkah 0: Periksa jaringan Anda dan siapkan CloudFormation tumpukan Anda
Sebelum Anda mulai:
-
Pastikan Anda telah meninjau persyaratan jaringan dan keamanan diKonfigurasikan akses jaringan untuk kluster EMR Amazon Anda.
-
Anda harus memiliki end-to-end CloudFormation tumpukan yang ada yang mendukung metode otentikasi pilihan Anda. Anda dapat menemukan contoh CloudFormation template tersebut di sagemaker-studio-emr GitHub aws-samples/
repositori. Langkah-langkah berikut menyoroti konfigurasi spesifik di end-to-end tumpukan Anda untuk mengaktifkan penggunaan templat EMR Amazon dalam Studio atau Studio Classic.
Langkah 1: Kaitkan portofolio Service Catalog Anda dengan SageMaker AI
Dalam portofolio Service Catalog Anda, kaitkan ID portofolio Anda dengan peran eksekusi SageMaker AI yang mengakses klaster Anda.
Untuk melakukannya, tambahkan bagian berikut (di sini dalam format YAMAL) ke tumpukan Anda. Ini memberikan akses peran eksekusi SageMaker AI ke portofolio Service Catalog tertentu yang berisi produk seperti template Amazon EMR. Ini memungkinkan peran yang diasumsikan oleh SageMaker AI untuk meluncurkan produk tersebut.
Ganti SageMakerExecutionRole.Arn
dan SageMakerStudioEMRProductPortfolio.ID
dengan nilai aktualnya.
SageMakerStudioEMRProductPortfolioPrincipalAssociation: Type: AWS::ServiceCatalog::PortfolioPrincipalAssociation Properties: PrincipalARN:
SageMakerExecutionRole.Arn
PortfolioId:SageMakerStudioEMRProductPortfolio.ID
PrincipalType: IAM
Untuk detail tentang set izin IAM yang diperlukan, lihat bagian izin.
Langkah 2: Referensi template EMR Amazon dalam produk Service Catalog
Dalam produk Service Catalog portofolio Anda, rujuk sumber daya template EMR Amazon dan pastikan visibilitasnya di Studio atau Studio Classic.
Untuk melakukannya, rujuk sumber daya template Amazon EMR dalam definisi produk Service Catalog, lalu tambahkan kunci tag berikut yang "sagemaker:studio-visibility:emr"
disetel ke nilai "true"
(lihat contoh dalam format YAMM).
Dalam definisi produk Service Catalog, AWS CloudFormation template cluster direferensikan melalui URL. Tag tambahan yang disetel ke true memastikan visibilitas template EMR Amazon di Studio atau Studio Classic.
catatan
Template EMR Amazon yang direferensikan oleh URL yang disediakan dalam contoh tidak memberlakukan persyaratan otentikasi apa pun saat diluncurkan. Opsi ini dimaksudkan untuk tujuan demonstrasi dan pembelajaran. Hal ini tidak direkomendasikan dalam lingkungan produksi.
SMStudioEMRNoAuthProduct: Type: AWS::ServiceCatalog::CloudFormationProduct Properties: Owner: AWS Name: SageMaker Studio Domain No Auth EMR ProvisioningArtifactParameters: - Name: SageMaker Studio Domain No Auth EMR Description: Provisions a SageMaker domain and No Auth EMR Cluster Info: LoadTemplateFromURL:
Link to your CloudFormation template. For example, https://aws-blogs-artifacts-public.s3.amazonaws.com/artifacts/astra-m4-sagemaker/end-to-end/CFN-EMR-NoStudioNoAuthTemplate-v3.yaml
Tags: - Key: "sagemaker:studio-visibility:emr" Value: "true"
Langkah 3: Parameterisasi template EMR Amazon CloudFormation
CloudFormation Template yang digunakan untuk menentukan klaster EMR Amazon dalam produk Service Catalog memungkinkan administrator menentukan parameter yang dapat dikonfigurasi. Administrator dapat menentukan Default
nilai dan AllowedValues
rentang untuk parameter ini dalam Parameters
bagian template. Selama proses peluncuran cluster, ilmuwan data dapat memberikan input khusus atau membuat pilihan dari opsi yang telah ditentukan untuk menyesuaikan aspek tertentu dari cluster EMR Amazon mereka.
Contoh berikut menggambarkan parameter input tambahan yang administrator dapat mengatur saat membuat template Amazon EMR.
"Parameters": { "EmrClusterName": { "Type": "String", "Description": "EMR cluster Name." }, "MasterInstanceType": { "Type": "String", "Description": "Instance type of the EMR master node.", "Default": "m5.xlarge", "AllowedValues": [ "m5.xlarge", "m5.2xlarge", "m5.4xlarge" ] }, "CoreInstanceType": { "Type": "String", "Description": "Instance type of the EMR core nodes.", "Default": "m5.xlarge", "AllowedValues": [ "m5.xlarge", "m5.2xlarge", "m5.4xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge" ] }, "CoreInstanceCount": { "Type": "String", "Description": "Number of core instances in the EMR cluster.", "Default": "2", "AllowedValues": [ "2", "5", "10" ] }, "EmrReleaseVersion": { "Type": "String", "Description": "The release version of EMR to launch.", "Default": "emr-5.33.1", "AllowedValues": [ "emr-5.33.1", "emr-6.4.0" ] } }
Setelah administrator membuat templat CloudFormation EMR Amazon tersedia di Studio, ilmuwan data dapat menggunakannya untuk menyediakan sendiri kluster EMR Amazon. Parameters
Bagian yang didefinisikan dalam template diterjemahkan ke dalam bidang input pada formulir pembuatan cluster dalam Studio atau Studio Classic. Untuk setiap parameter, ilmuwan data dapat memasukkan nilai khusus ke dalam kotak input atau memilih dari opsi yang telah ditentukan yang tercantum dalam menu tarik-turun, yang sesuai dengan yang AllowedValues
ditentukan dalam templat.
Ilustrasi berikut menunjukkan bentuk dinamis yang dirakit dari template EMR CloudFormation Amazon untuk membuat cluster EMR Amazon di Studio atau Studio Classic.

Kunjungi Luncurkan kluster EMR Amazon dari Studio atau Studio Classic untuk mempelajari cara meluncurkan klaster dari Studio atau Studio Classic menggunakan template Amazon EMR tersebut.
Langkah 4: Siapkan izin untuk mengaktifkan daftar dan meluncurkan kluster EMR Amazon dari Studio
Terakhir, lampirkan izin IAM yang diperlukan untuk mengaktifkan daftar kluster EMR Amazon yang sedang berjalan dan menyediakan sendiri cluster baru dari Studio atau Studio Classic.
Peran yang harus Anda tambahkan izin tersebut bergantung pada apakah Studio atau Studio Classic dan Amazon EMR digunakan di akun yang sama (pilih Akun Tunggal) atau di akun yang berbeda (pilih Akun Lintas).
penting
Anda hanya dapat menemukan dan terhubung ke cluster EMR Amazon untuk JupyterLab dan aplikasi Studio Classic yang diluncurkan dari ruang pribadi. Pastikan bahwa kluster EMR Amazon berada di AWS wilayah yang sama dengan lingkungan Studio Anda.
Jika klaster EMR Amazon dan Studio atau Studio Classic digunakan di AWS akun yang sama, lampirkan izin berikut ke peran eksekusi SageMaker AI yang mengakses klaster Anda.
-
Langkah 1: Ambil ARN dari peran eksekusi AI SageMaker yang digunakan oleh ruang pribadi Anda.
Untuk informasi tentang spasi dan peran eksekusi di SageMaker AI, lihatMemahami izin ruang domain dan peran eksekusi.
Untuk informasi lebih lanjut tentang cara mengambil ARN SageMaker peran eksekusi AI, lihat. Dapatkan peran eksekusi Anda
-
Langkah 2: Lampirkan izin berikut ke peran eksekusi SageMaker AI yang mengakses kluster EMR Amazon Anda.
-
Arahkan ke konsol IAM
. -
Pilih Peran dan kemudian cari peran eksekusi berdasarkan nama di kolom Pencarian. Nama peran adalah bagian terakhir dari ARN, setelah garis miring terakhir (/).
-
Ikuti tautan ke peran Anda.
-
Pilih Tambahkan izin, lalu Buat kebijakan sebaris.
-
Di tab JSON, tambahkan izin EMR Amazon yang memungkinkan akses dan operasi EMR Amazon. Untuk detail tentang dokumen kebijakan, lihat Daftar kebijakan EMR Amazon di. Kebijakan referensi Ganti
region
, danaccountID
dengan nilai aktualnya sebelum menyalin daftar pernyataan ke kebijakan inline peran Anda. -
Pilih Berikutnya dan kemudian berikan nama Kebijakan.
-
Pilih Buat kebijakan.
-
Ulangi langkah Buat kebijakan sebaris untuk menambahkan kebijakan lain yang memberikan izin kepada peran eksekusi untuk menyediakan kluster EMR Amazon baru menggunakan templat. AWS CloudFormation Untuk detail tentang dokumen kebijakan, lihat Membuat EMRclusters kebijakan Amazon diKebijakan referensi. Ganti
region
danaccountID
dengan nilai aktualnya sebelum menyalin daftar pernyataan ke kebijakan inline peran Anda.
-
catatan
Pengguna konektivitas kontrol akses berbasis peran (RBAC) ke kluster EMR Amazon juga harus merujuk. Konfigurasikan autentikasi peran runtime saat klaster EMR Amazon dan Studio berada di akun yang sama
Sebelum Anda memulai, ambil ARN dari peran eksekusi AI SageMaker yang digunakan oleh ruang pribadi Anda.
Untuk informasi tentang spasi dan peran eksekusi di SageMaker AI, lihatMemahami izin ruang domain dan peran eksekusi.
Untuk informasi lebih lanjut tentang cara mengambil ARN SageMaker peran eksekusi AI, lihat. Dapatkan peran eksekusi Anda
Jika kluster EMR Amazon dan Studio atau Studio Classic digunakan di AWS akun terpisah, Anda mengonfigurasi izin di kedua akun.
catatan
Pengguna konektivitas kontrol akses berbasis peran (RBAC) ke kluster EMR Amazon juga harus merujuk. Konfigurasikan autentikasi peran runtime saat klaster dan Studio Anda berada di akun yang berbeda
Di akun cluster Amazon EMR
Ikuti langkah-langkah ini untuk membuat peran dan kebijakan yang diperlukan pada akun tempat Amazon EMR digunakan, juga disebut sebagai akun kepercayaan:
-
Langkah 1: Ambil ARN dari peran layanan cluster EMR Amazon Anda.
Untuk mempelajari cara menemukan ARN peran layanan kluster, lihat Mengonfigurasi peran layanan IAM untuk izin EMR Amazon ke layanan dan sumber daya. AWS
-
Langkah 2: Buat peran IAM kustom bernama
AssumableRole
dengan konfigurasi berikut:-
Izin: Berikan izin yang diperlukan
AssumableRole
untuk mengizinkan mengakses sumber daya EMR Amazon. Peran ini juga dikenal sebagai peran Access dalam skenario yang melibatkan akses lintas akun. -
Hubungan kepercayaan: Konfigurasikan kebijakan kepercayaan
AssumableRole
untuk mengizinkan asumsi peran eksekusi (SageMakerExecutionRole
Dalam diagram lintas akun) dari akun Studio yang memerlukan akses.
Dengan mengasumsikan peran tersebut, Studio atau Studio Classic dapat memperoleh akses sementara ke izin yang dibutuhkan di Amazon EMR.
Untuk petunjuk terperinci tentang cara membuat yang baru
AssumableRole
di AWS akun EMR Amazon Anda, ikuti langkah-langkah berikut:-
Arahkan ke konsol IAM
. -
Di panel navigasi kiri, pilih Kebijakan, lalu Buat kebijakan.
-
Di tab JSON, tambahkan izin EMR Amazon yang memungkinkan akses dan operasi EMR Amazon. Untuk detail tentang dokumen kebijakan, lihat Daftar kebijakan EMR Amazon di. Kebijakan referensi Ganti
region
, danaccountID
dengan nilai aktualnya sebelum menyalin daftar pernyataan ke kebijakan inline peran Anda. -
Pilih Berikutnya dan kemudian berikan nama Kebijakan.
-
Pilih Buat kebijakan.
-
Di panel navigasi kiri, pilih Peran dan kemudian Buat peran.
-
Pada halaman Buat peran, pilih Kebijakan kepercayaan khusus sebagai entitas tepercaya.
-
Tempel dokumen JSON berikut di bagian Kebijakan kepercayaan kustom dan kemudian pilih Berikutnya.
-
Di halaman Tambahkan izin, tambahkan izin yang baru saja Anda buat lalu pilih Berikutnya.
-
Pada halaman Ulasan, masukkan nama untuk peran seperti
AssumableRole
dan deskripsi opsional. -
Tinjau detail peran dan pilih Buat peran.
Untuk informasi selengkapnya tentang membuat peran di AWS akun, lihat Membuat peran IAM (konsol).
-
Di akun Studio
Pada akun tempat Studio digunakan, juga disebut sebagai akun tepercaya, perbarui peran eksekusi SageMaker AI yang mengakses kluster Anda dengan izin yang diperlukan untuk mengakses sumber daya di akun kepercayaan.
-
Langkah 1: Ambil ARN dari peran eksekusi AI SageMaker yang digunakan oleh ruang pribadi Anda.
Untuk informasi tentang spasi dan peran eksekusi di SageMaker AI, lihatMemahami izin ruang domain dan peran eksekusi.
Untuk informasi lebih lanjut tentang cara mengambil ARN SageMaker peran eksekusi AI, lihat. Dapatkan peran eksekusi Anda
-
Langkah 2: Lampirkan izin berikut ke peran eksekusi SageMaker AI yang mengakses kluster EMR Amazon Anda.
-
Arahkan ke konsol IAM
. -
Pilih Peran dan kemudian cari peran eksekusi berdasarkan nama di kolom Pencarian. Nama peran adalah bagian terakhir dari ARN, setelah garis miring terakhir (/).
-
Ikuti tautan ke peran Anda.
-
Pilih Tambahkan izin, lalu Buat kebijakan sebaris.
-
Di tab JSON, tambahkan kebijakan sebaris yang memberikan izin peran untuk memperbarui domain, profil pengguna, dan spasi. Untuk detail tentang dokumen kebijakan, lihat Kebijakan tindakan pembaruan domain, profil pengguna, dan spasi diKebijakan referensi. Ganti
region
danaccountID
dengan nilai aktualnya sebelum menyalin daftar pernyataan ke kebijakan inline peran Anda. -
Pilih Berikutnya dan kemudian berikan nama Kebijakan.
-
Pilih Buat kebijakan.
-
Ulangi langkah Buat kebijakan sebaris untuk menambahkan kebijakan lain yang memberikan izin kepada peran eksekusi untuk mengasumsikan
AssumableRole
dan kemudian melakukan tindakan yang diizinkan oleh kebijakan akses peran. Gantiemr-account
dengan ID akun EMR Amazon, danAssumableRole
dengan nama peran yang dapat diasumsikan dibuat di akun EMR Amazon.{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowRoleAssumptionForCrossAccountDiscovery", "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": ["arn:aws:iam::
emr-account
:role/AssumableRole
" ] }] } -
Ulangi langkah Buat kebijakan sebaris untuk menambahkan kebijakan lain yang memberikan izin kepada peran eksekusi untuk menyediakan kluster EMR Amazon baru menggunakan templat. AWS CloudFormation Untuk detail tentang dokumen kebijakan, lihat Membuat EMRclusters kebijakan Amazon diKebijakan referensi. Ganti
region
danaccountID
dengan nilai aktualnya sebelum menyalin daftar pernyataan ke kebijakan inline peran Anda. -
(Opsional) Untuk mengizinkan pencantuman klaster EMR Amazon yang diterapkan di akun yang sama dengan Studio, tambahkan kebijakan sebaris tambahan ke peran eksekusi Studio Anda seperti yang ditentukan dalam Daftar kebijakan EMR Amazon di. Kebijakan referensi
-
-
Langkah 3: Kaitkan peran yang dapat diasumsikan (peran akses) Anda dengan domain atau profil pengguna Anda. JupyterLab pengguna di Studio dapat menggunakan konsol SageMaker AI atau skrip yang disediakan.
Pilih tab yang sesuai dengan kasus penggunaan Anda.