Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasikan EMR CloudFormation template Amazon di Service Catalog
Topik ini mengasumsikan administrator akrab dengan AWS CloudFormation, portofolio dan produk di AWS Service Catalog, serta Amazon. EMR
Untuk menyederhanakan pembuatan EMR cluster Amazon dari Studio, administrator dapat mendaftarkan EMR CloudFormation template Amazon sebagai produk dalam portofolio. AWS Service Catalog Untuk membuat template tersedia bagi ilmuwan data, mereka harus mengaitkan portofolio dengan peran SageMaker eksekusi yang digunakan di Studio atau Studio Classic. Terakhir, untuk memungkinkan pengguna menemukan templat, menyediakan kluster, dan terhubung ke EMR kluster Amazon dari Studio atau Studio Classic, administrator perlu menetapkan izin akses yang sesuai.
EMR AWS CloudFormation Template 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 menyambung ke EMR klaster Amazon. Connect ke EMR klaster Amazon dari SageMaker Studio atau Studio Classic
Untuk memungkinkan ilmuwan data menemukan EMR CloudFormation templat 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 EMR klaster 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 EMR templat Amazon dalam Studio atau Studio Classic.
Langkah 1: Kaitkan portofolio Service Catalog Anda dengan SageMaker
Dalam portofolio Service Catalog Anda, kaitkan ID portofolio Anda dengan peran SageMaker eksekusi yang mengakses klaster Anda.
Untuk melakukannya, tambahkan bagian berikut (di sini dalam YAML format) ke tumpukan Anda. Ini memberikan akses peran SageMaker eksekusi ke portofolio Service Catalog tertentu yang berisi produk seperti EMR template Amazon. Ini memungkinkan peran yang diasumsikan oleh SageMaker untuk meluncurkan produk-produk tersebut.
Ganti SageMakerExecutionRole.Arn
and SageMakerStudioEMRProductPortfolio.ID
dengan nilai-nilai mereka yang sebenarnya.
SageMakerStudioEMRProductPortfolioPrincipalAssociation: Type: AWS::ServiceCatalog::PortfolioPrincipalAssociation Properties: PrincipalARN:
SageMakerExecutionRole.Arn
PortfolioId:SageMakerStudioEMRProductPortfolio.ID
PrincipalType: IAM
Untuk detail tentang kumpulan IAM izin yang diperlukan, lihat bagian izin.
Langkah 2: Referensi EMR template Amazon dalam produk Service Catalog
Dalam produk Service Catalog portofolio Anda, rujuk sumber daya EMR template Amazon dan pastikan visibilitasnya di Studio atau Studio Classic.
Untuk melakukannya, rujuk sumber daya EMR template Amazon dalam definisi produk Service Catalog, lalu tambahkan kunci tag berikut yang "sagemaker:studio-visibility:emr"
disetel ke nilai "true"
(lihat contoh dalam YAML format).
Dalam definisi produk Service Catalog, AWS CloudFormation template cluster direferensikan melaluiURL. Tag tambahan yang disetel ke true memastikan visibilitas EMR template Amazon di Studio atau Studio Classic.
catatan
EMRTemplat Amazon yang direferensikan oleh yang disediakan URL 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 Amazon EMR CloudFormation
CloudFormation Template yang digunakan untuk menentukan EMR klaster 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 Amazon mereka. EMR
Contoh berikut mengilustrasikan parameter input tambahan yang dapat diatur administrator saat membuat template AmazonEMR.
"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 EMR CloudFormation templat Amazon tersedia di Studio, ilmuwan data dapat menggunakannya untuk menyediakan sendiri klaster AmazonEMR. 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 EMR template CloudFormation Amazon untuk membuat EMR klaster Amazon di Studio atau Studio Classic.
Kunjungi Luncurkan EMR klaster Amazon dari Studio atau Studio Classic untuk mempelajari cara meluncurkan klaster dari Studio atau Studio Classic menggunakan EMR templat Amazon tersebut.
Langkah 4: Siapkan izin untuk mengaktifkan daftar dan meluncurkan EMR kluster Amazon dari Studio
Terakhir, lampirkan IAM izin yang diperlukan untuk mengaktifkan daftar EMR klaster 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 silang).
penting
Anda hanya dapat menemukan dan terhubung ke EMR cluster Amazon untuk JupyterLab dan aplikasi Studio Classic yang diluncurkan dari ruang pribadi. Pastikan EMR klaster Amazon berada di AWS wilayah yang sama dengan lingkungan Studio Anda.
Jika EMR klaster Amazon dan Studio atau Studio Classic digunakan di AWS akun yang sama, lampirkan izin berikut ke peran SageMaker eksekusi yang mengakses klaster Anda.
-
Langkah 1: Ambil peran ARN SageMaker eksekusi yang digunakan oleh ruang pribadi Anda.
Untuk informasi tentang spasi dan peran eksekusi SageMaker, lihatMemahami izin ruang domain dan peran eksekusi.
Untuk informasi selengkapnya tentang cara mengambil peran eksekusi ARN of SageMaker, lihatDapatkan peran eksekusi Anda.
-
Langkah 2: Lampirkan izin berikut ke peran SageMaker eksekusi yang mengakses kluster Amazon EMR Anda.
-
Navigasikan ke konsol IAM
tersebut. -
Pilih Peran dan kemudian cari peran eksekusi berdasarkan nama di kolom Pencarian. Nama peran adalah bagian terakhir dariARN, setelah garis miring terakhir (/).
-
Ikuti tautan ke peran Anda.
-
Pilih Tambahkan izin lalu Buat kebijakan sebaris.
-
Di JSONtab, tambahkan EMR izin Amazon yang memungkinkan EMR akses dan operasi Amazon. Untuk detail tentang dokumen kebijakan, lihat Daftar EMR kebijakan Amazon 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 menyediakan EMR klaster 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 EMR kluster Amazon juga harus merujuk. Konfigurasikan autentikasi peran runtime saat EMR klaster Amazon dan Studio berada di akun yang sama
Sebelum Anda memulai, ambil peran SageMaker eksekusi ARN yang digunakan oleh ruang pribadi Anda.
Untuk informasi tentang spasi dan peran eksekusi SageMaker, lihatMemahami izin ruang domain dan peran eksekusi.
Untuk informasi selengkapnya tentang cara mengambil peran eksekusi ARN of SageMaker, lihatDapatkan peran eksekusi Anda.
Jika EMR klaster 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 EMR kluster Amazon juga harus merujuk. Konfigurasikan autentikasi peran runtime saat klaster dan Studio Anda berada di akun yang berbeda
Di akun EMR cluster Amazon
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 peran layanan EMR klaster Amazon Anda. ARN
Untuk mempelajari cara menemukan peran layanan klaster, lihat Mengonfigurasi peran IAM layanan untuk EMR izin Amazon ke AWS layanan dan sumber daya. ARN
-
Langkah 2: Buat IAM peran kustom bernama
AssumableRole
dengan konfigurasi berikut:-
Izin: Berikan izin yang diperlukan
AssumableRole
untuk mengizinkan mengakses sumber daya AmazonEMR. 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 EMR AWS akun Amazon Anda, ikuti langkah-langkah berikut:-
Navigasikan ke konsol IAM
tersebut. -
Di panel navigasi kiri, pilih Kebijakan, lalu Buat kebijakan.
-
Di JSONtab, tambahkan EMR izin Amazon yang memungkinkan EMR akses dan operasi Amazon. Untuk detail tentang dokumen kebijakan, lihat Daftar EMR kebijakan Amazon 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.
-
Di panel navigasi kiri, pilih Peran dan kemudian Buat peran.
-
Pada halaman Buat peran, pilih Kebijakan kepercayaan khusus sebagai entitas tepercaya.
-
Tempel JSON dokumen berikut di bagian Kebijakan kepercayaan kustom, lalu 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 IAM peran (konsol).
-
Di akun Studio
Pada akun tempat Studio digunakan, juga disebut sebagai akun tepercaya, perbarui peran SageMaker eksekusi yang mengakses kluster Anda dengan izin yang diperlukan untuk mengakses sumber daya di akun terpercaya.
-
Langkah 1: Ambil peran ARN SageMaker eksekusi yang digunakan oleh ruang pribadi Anda.
Untuk informasi tentang spasi dan peran eksekusi SageMaker, lihatMemahami izin ruang domain dan peran eksekusi.
Untuk informasi selengkapnya tentang cara mengambil peran eksekusi ARN of SageMaker, lihatDapatkan peran eksekusi Anda.
-
Langkah 2: Lampirkan izin berikut ke peran SageMaker eksekusi yang mengakses kluster Amazon EMR Anda.
-
Navigasikan ke konsol IAM
tersebut. -
Pilih Peran dan kemudian cari peran eksekusi berdasarkan nama di kolom Pencarian. Nama peran adalah bagian terakhir dariARN, setelah garis miring terakhir (/).
-
Ikuti tautan ke peran Anda.
-
Pilih Tambahkan izin lalu Buat kebijakan sebaris.
-
Di JSONtab, 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 ruang 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 peran eksekusi izin untuk mengambil alih
AssumableRole
dan kemudian melakukan tindakan yang diizinkan oleh kebijakan akses peran. Gantiemr-account
dengan ID EMR akun Amazon, danAssumableRole
dengan nama peran yang dapat diasumsikan dibuat di EMR akun 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 EMR klaster 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 EMR klaster Amazon yang diterapkan di akun yang sama dengan Studio, tambahkan kebijakan sebaris tambahan ke peran eksekusi Studio Anda seperti yang ditentukan dalam Daftar kebijakan Amazon EMR 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 SageMaker konsol atau skrip yang disediakan.
Pilih tab yang sesuai dengan kasus penggunaan Anda.