Konfigurasikan daftar kluster EMR Amazon - Amazon SageMaker

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

Konfigurasikan daftar kluster EMR Amazon

Administrator dapat mengonfigurasi Studio untuk memungkinkan pengguna melihat daftar kluster EMR Amazon yang dapat mereka akses, memungkinkan mereka untuk terhubung ke cluster ini. Cluster dapat digunakan di AWS akun yang sama dengan Studio (pilih tab Akun tunggal) atau di akun terpisah (pilih tab Cross account).

catatan

Studio saat ini tidak mendukung akses kluster EMR Amazon yang dibuat di akun yang AWS berbeda dari akun tempat Studio digunakan. Akses lintas akun hanya tersedia di Studio Classic.

Single account

Jika klaster EMR Amazon dan Studio atau Studio Classic digunakan di AWS akun yang sama, lampirkan izin berikut ke peran SageMaker eksekusi yang mengakses klaster Anda.

catatan

Peran eksekusi apa yang harus Anda pertimbangkan?

UI Studio menentukan izinnya dari peran eksekusi yang terkait dengan profil pengguna yang meluncurkannya. UI menetapkan izin ini pada saat peluncuran. Namun, ruang yang meluncurkan JupyterLab atau aplikasi Studio Classic dapat memiliki izin terpisah.

Untuk akses konsisten ke template dan cluster EMR Amazon di seluruh aplikasi (seperti UI Studio, JupyterLab dan Studio Classic), berikan subset izin yang sama ke semua peran di domain, profil pengguna, atau tingkat ruang. Izin harus memungkinkan menemukan dan menyediakan kluster EMR Amazon.

  1. Temukan peran eksekusi domain, profil pengguna, atau ruang Anda. Untuk informasi tentang cara mengambil peran eksekusi, lihatDapatkan peran eksekusi Anda.

  2. Buka konsol IAM di https://console.aws.amazon.com/sagemaker/.

  3. Pilih Peran, lalu cari peran yang Anda buat dengan mengetikkan nama peran di kolom Pencarian.

  4. Ikuti tautan ke peran Anda.

  5. Pilih Tambahkan izin lalu Buat kebijakan sebaris.

  6. Di tab JSON, tambahkan kebijakan JSON berikut dengan izin:

    • AllowSagemakerProjectManagementmemungkinkan penciptaan. Di Studio atau Studio Classic, akses ke AWS Service Catalog diberikan melalui.

    • AllowClusterDetailsDiscoverydan AllowClusterDiscovery memungkinkan penemuan dan koneksi ke cluster EMR Amazon.

    • AllowPresignedUrlmemungkinkan pembuatan URL yang telah ditandatangani sebelumnya untuk mengakses Spark UI.

    Kebijakan IAM yang ditentukan dalam JSON yang disediakan memberikan izin tersebut. Ganti wilayah studio dan akun studio dengan nilai wilayah dan ID AWS akun Anda yang sebenarnya sebelum menyalin daftar pernyataan ke kebijakan inline peran Anda.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowPresignedUrl", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeCluster", "elasticmapreduce:ListInstanceGroups", "elasticmapreduce:CreatePersistentAppUI", "elasticmapreduce:DescribePersistentAppUI", "elasticmapreduce:GetPersistentAppUIPresignedURL", "elasticmapreduce:GetOnClusterAppUIPresignedURL" ], "Resource": [ "arn:aws:elasticmapreduce:studio-region:studio-account:cluster/*" ] }, { "Sid": "AllowClusterDetailsDiscovery", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeCluster", "elasticmapreduce:ListInstances", "elasticmapreduce:ListInstanceGroups", "elasticmapreduce:DescribeSecurityConfiguration" ], "Resource": [ "arn:aws:elasticmapreduce:studio-region:studio-account:cluster/*" ] }, { "Sid": "AllowClusterDiscovery", "Effect": "Allow", "Action": [ "elasticmapreduce:ListClusters" ], "Resource": "*" }, { "Sid": "AllowSagemakerProjectManagement", "Effect": "Allow", "Action": [ "sagemaker:CreateProject", "sagemaker:DeleteProject" ], "Resource": "arn:aws:sagemaker:studio-region:studio-account:project/*" } ] }
  7. Beri nama kebijakan Anda dan pilih Buat kebijakan.

Cross account

Jika kluster EMR Amazon dan Studio atau Studio Classic digunakan di AWS akun terpisah, Anda mengonfigurasi izin di kedua akun.

Di akun EMR Amazon

Pada akun tempat Amazon EMR digunakan, juga disebut sebagai akun kepercayaan, buat peran IAM khusus bernama ASSUMABLE-ROLE dengan konfigurasi berikut:

  • Izin: Berikan izin yang diperlukan ASSUMABLE-ROLE untuk mengizinkan mengakses sumber daya EMR Amazon.

  • Hubungan kepercayaan: Konfigurasikan kebijakan kepercayaan ASSUMABLE-ROLE untuk mengizinkan asumsi peran 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.

  • Buat kebijakan baru untuk peran tersebut.

    1. Buka konsol IAM di https://console.aws.amazon.com/sagemaker/.

    2. Di menu sebelah kiri, pilih Kebijakan dan kemudian Buat kebijakan.

    3. Di tab JSON, tambahkan kebijakan JSON berikut dengan izin:

      • AllowClusterDetailsDiscoverydan AllowClusterDiscovery untuk memungkinkan penemuan dan koneksi ke cluster EMR Amazon.

      • AllowPresignedUrluntuk memungkinkan pembuatan URL yang telah ditandatangani sebelumnya untuk mengakses Spark UI.

      Ganti emr-region dan emr-account dengan wilayah aktual dan nilai ID AWS akun Anda sebelum menyalin JSON ke kebijakan Anda.

      { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowPresignedUrl", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeCluster", "elasticmapreduce:ListInstanceGroups", "elasticmapreduce:CreatePersistentAppUI", "elasticmapreduce:DescribePersistentAppUI", "elasticmapreduce:GetPersistentAppUIPresignedURL", "elasticmapreduce:GetOnClusterAppUIPresignedURL" ], "Resource": [ "arn:aws:elasticmapreduce:emr-region:emr-account:cluster/*" ] }, { "Sid": "AllowClusterDetailsDiscovery", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeCluster", "elasticmapreduce:ListInstances", "elasticmapreduce:ListInstanceGroups", "elasticmapreduce:DescribeSecurityConfiguration" ], "Resource": [ "arn:aws:elasticmapreduce:emr-region:emr-account:cluster/*" ] }, { "Sid": "AllowClusterDiscovery", "Effect": "Allow", "Action": [ "elasticmapreduce:ListClusters" ], "Resource": "*" } ] }
    4. Beri nama kebijakan Anda dan pilih Buat kebijakan.

  • Buat peran IAM kustom bernamaASSUMABLE-ROLE, lalu lampirkan kebijakan baru Anda ke peran tersebut.

    1. Di konsol IAM, pilih Peran di menu sebelah kiri, lalu Buat peran.

    2. Untuk jenis entitas Tepercaya, pilih AWS akun dan kemudian Berikutnya.

    3. Pilih izin yang baru saja Anda buat lalu pilih Berikutnya.

    4. Beri nama peran Anda ASSUMABLE-ROLE dan kemudian pilih tombol Edit di sebelah kanan Langkah 1: Pilih entitas tepercaya.

    5. Untuk jenis entitas Tepercaya, pilih Kebijakan kepercayaan khusus, lalu tempel hubungan kepercayaan berikut. Ini memberi akun tempat Studio digunakan (akun tepercaya) izin untuk mengambil peran ini.

      Ganti akun studio dengan ID AWS akun aktualnya. Pilih Selanjutnya.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::studio-account:root" }, "Action": "sts:AssumeRole" } ] }
    6. Temukan dan pilih izin yang baru saja Anda buat lagi dan kemudian pilih Berikutnya.

    7. Kebijakan kepercayaan Anda harus diperbarui dengan JSON terbaru yang Anda tempel. Pilih Buat peran.

Di akun Studio

Pada akun tempat Studio atau Studio Classic digunakan, juga disebut sebagai akun tepercaya, perbarui peran SageMaker eksekusi yang mengakses klaster Anda dengan kebijakan sebaris berikut.

Kebijakan harus memungkinkan asumsi peran lintas akun untuk menemukan sumber daya di akun lain.

catatan

Peran eksekusi apa yang harus Anda pertimbangkan?

UI Studio menentukan izinnya dari peran eksekusi yang terkait dengan profil pengguna yang meluncurkannya. UI menetapkan izin ini pada saat peluncuran. Namun, ruang yang meluncurkan JupyterLab atau aplikasi Studio Classic dapat memiliki izin terpisah.

Untuk akses konsisten ke template dan cluster EMR Amazon di seluruh aplikasi (seperti UI Studio, JupyterLab dan Studio Classic), berikan subset izin yang sama ke semua peran di domain, profil pengguna, atau tingkat ruang. Izin harus memungkinkan menemukan dan menyediakan kluster EMR Amazon.

  1. Temukan peran eksekusi domain, profil pengguna, atau ruang Anda. Untuk informasi tentang cara mengambil peran eksekusi, lihatDapatkan peran eksekusi Anda.

  2. Buka konsol IAM di https://console.aws.amazon.com/sagemaker/.

  3. Pilih Peran, lalu cari peran yang Anda buat dengan mengetikkan nama peran di kolom Pencarian.

  4. Ikuti tautan ke peran Anda.

  5. Pada halaman detail peran eksekusi, pilih Tambahkan izin, lalu Buat kebijakan sebaris.

  6. Di tab JSON, tambahkan kebijakan JSON berikut. Ganti akun emr dengan nilai ID akun Amazon EMR Anda yang sebenarnya sebelum menyalin JSON ke kebijakan Anda.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowRoleAssumptionForCrossAccountDiscovery", "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": ["arn:aws:iam::emr-account:role/ASSUMABLE-ROLE" ] }] }
  7. Pilih Berikutnya dan kemudian berikan nama Kebijakan.

  8. Pilih Buat kebijakan.

  9. Untuk mengizinkan daftar kluster EMR Amazon yang diterapkan di akun yang sama dengan Studio, tambahkan kebijakan sebaris tambahan ke peran eksekusi Studio Anda seperti yang ditentukan di tab Akun tunggal. Konfigurasikan daftar kluster EMR Amazon

Lulus ARN peran pada peluncuran server Jupyter

Terakhir, lihat Konfigurasi tambahan untuk akses lintas akun untuk mempelajari tentang cara menyediakan ARN peran eksekusi Studio Anda ASSUMABLE-ROLE ke ARN. ARN dimuat oleh server Jupyter saat diluncurkan. Peran eksekusi yang digunakan oleh Studio mengasumsikan peran lintas akun tersebut untuk menemukan klaster EMR Amazon di akun kepercayaan.

Kunjungi Daftar kluster EMR Amazon dari Studio atau Studio Classic untuk mempelajari cara menemukan dan terhubung ke kluster EMR Amazon dari notebook Studio atau Studio Classic.