Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menyiapkan kluster Amazon EKS di Studio
Anda melakukan sebagian besar pengaturan ini dari halaman detail HyperPod cluster Anda di konsol SageMaker AI. Buka konsol SageMaker AI, pilih HyperPod cluster, pilih klaster Anda, lalu pilih tab Konfigurasi. Di bawah Akses klaster untuk SageMaker domain, pilih Kelola akses. Di sinilah Anda membuat atau melihat domain dan melampirkan kebijakan akses kluster yang memungkinkan pengguna Studio mencapai klaster.
Tangkapan layar berikut menunjukkan akses Cluster untuk SageMaker domain bagian pada tab Konfigurasi.
Petunjuk berikut menjelaskan cara menyiapkan kluster Amazon EKS di Studio.
-
Di bawah halaman Kelola akses, pilih domain yang ada. Akses studio ke HyperPod klaster berjalan melalui domain, dan peran eksekusi domain adalah yang digunakan Studio utama IAM untuk bertindak pada klaster Anda. Untuk informasi tentang membuat domain, lihatPanduan untuk mengatur dengan Amazon SageMaker AI.
-
Lampirkan izin berikut ke peran eksekusi Anda dari konsol IAM.
Untuk informasi tentang peran eksekusi SageMaker AI dan cara mengeditnya, lihatMemahami izin ruang domain dan peran eksekusi.
Untuk mempelajari cara melampirkan kebijakan ke pengguna atau grup IAM, lihat Menambahkan dan menghapus izin identitas IAM.
Sebelum Anda melampirkan kebijakan, ganti kedua contoh ARN dengan ARN Anda sendiri:
-
Ganti
arn:aws:sagemaker:us-east-1:111122223333:cluster/hyperpod-cluster-namedengan HyperPod ARN cluster Anda. -
Ganti
arn:aws:eks:us-east-1:111122223333:cluster/eks-cluster-namedengan ARN cluster Amazon EKS Anda. Itu muncul dua kali, di dalamUseEksClusterPermissionsdan diDescribeSpacesAddon, di mana ia membawa trailing/*.
Ini adalah dua sumber daya yang berbeda dengan dua ARN yang berbeda. Temukan ARN HyperPod cluster di konsol SageMaker AI dan ARN cluster Amazon EKS di konsol Amazon EKS. Jika Anda membiarkan nilai contoh di tempatnya, Studio tidak dapat menjelaskan klaster Anda dan tab Tugas tidak dimuat.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DescribeHyperpodClusterPermissions", "Effect": "Allow", "Action": [ "sagemaker:DescribeCluster" ], "Resource": "arn:aws:sagemaker:us-east-1:111122223333:cluster/hyperpod-cluster-name" }, { "Effect": "Allow", "Action": "ec2:Describe*", "Resource": "*" }, { "Effect": "Allow", "Action": [ "ecr:CompleteLayerUpload", "ecr:GetAuthorizationToken", "ecr:UploadLayerPart", "ecr:InitiateLayerUpload", "ecr:BatchCheckLayerAvailability", "ecr:PutImage" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData", "cloudwatch:GetMetricData" ], "Resource": "*" }, { "Sid": "UseEksClusterPermissions", "Effect": "Allow", "Action": [ "eks:DescribeCluster", "eks:AccessKubernetesApi", "eks:MutateViaKubernetesApi" ], "Resource": "arn:aws:eks:us-east-1:111122223333:cluster/eks-cluster-name" }, { "Sid": "DescribeSpacesAddon", "Effect": "Allow", "Action": "eks:DescribeAddon", "Resource": "arn:aws:eks:us-east-1:111122223333:cluster/eks-cluster-name/*" }, { "Sid": "ListClustersPermission", "Effect": "Allow", "Action": [ "sagemaker:ListClusters" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:TerminateSession" ], "Resource": "*" } ] } -
-
Lampirkan kebijakan akses cluster ke peran eksekusi. Kebijakan IAM pada langkah sebelumnya memungkinkan peran eksekusi memanggil AWS API. Itu tidak memberikan peran izin apa pun di dalam klaster Kubernetes. Cluster-access kebijakan melakukan itu, dan hanya peran dengan peran yang tepat yang terlampir yang mencapai cluster. Lampirkan dari Kelola akses, pada domain atau profil pengguna.
Pilih peran eksekusi untuk domain atau profil pengguna yang Anda berikan akses, lalu pilih kebijakan yang dibutuhkan pengguna Anda. Pilih apakah akan mengakses cakupan ke namespace atau ke seluruh klaster, pelingkupan ke namespace saat tim berbagi cluster, lalu simpan. Pelingkupan ke namespace juga membatasi tugas mana yang dapat dilihat pengguna tersebut di Studio. Untuk apa yang diizinkan oleh setiap kebijakan, cara mengakses cakupan, dan cara memberikan sekumpulan izin khusus, lihatBatasi tampilan tugas di Studio untuk kluster EKS.
Memberikan akses dengan cara ini membuat entri akses Amazon EKS untuk peran eksekusi untuk Anda, jadi tidak ada langkah terpisah di konsol Amazon EKS. Untuk konsep di balik model akses, lihat Memberi akses kepada pengguna IAM ke Kubernetes dengan entri akses EKS.
-
(Opsional) Untuk memastikan pengalaman yang lebih lancar, kami sarankan Anda menambahkan tag ke cluster Anda. Untuk informasi tentang cara menambahkan tag, lihat Mengedit SageMaker HyperPod klaster untuk memperbarui klaster Anda menggunakan konsol SageMaker AI.
Tandai ruang kerja Grafana Terkelola Amazon Anda ke domain Studio Anda. Gunakan tag ini untuk menautkan ke ruang kerja Grafana langsung dari klaster di Studio. Tambahkan tag berikut ke cluster Anda untuk mengidentifikasinya dengan ID ruang kerja Grafana Anda,.
ws-idKunci Tag = “
grafana-workspace”, Nilai Tag = “ws-id”.
Batasi tampilan tugas di Studio untuk kluster EKS
Anda dapat membatasi visibilitas pengguna ke ruang nama Kubernetes tertentu, memastikan bahwa pengguna dapat mengakses sumber daya yang mereka butuhkan sambil mempertahankan kontrol akses yang ketat.
Ada dua cara untuk melakukan ini. Mencakup kebijakan akses cluster ke namespace dilakukan sepenuhnya di konsol dan merupakan opsi yang lebih sederhana. Peran Kubernetes RBAC kustom memberi Anda kendali atas kata kerja dan sumber daya yang tepat yang didapat pengguna, dengan biaya mengelola peran itu sendiri.
Batasi dengan kebijakan akses klaster
HyperPod menyediakan kebijakan akses kluster yang Anda lampirkan dari Kelola akses pada tab Konfigurasi. Lampirkan hanya kebijakan yang dibutuhkan oleh sekumpulan pengguna, dan cakup akses ke namespace, bukan ke seluruh cluster. Ini adalah aliran yang sama dengan langkah ketiga di atas.
Kami menyarankan Anda melampirkan semua kebijakan ke peran untuk pengalaman Studio sepenuhnya HyperPod . Setiap kebijakan mencakup bagian yang berbeda dari pengalaman, jadi meninggalkannya menghilangkan kemampuan yang diberikannya. Lampirkan subset hanya jika Anda bermaksud menahan kemampuan dari kumpulan pengguna tersebut.
| Kebijakan | Apa yang memungkinkan |
|---|---|
AmazonSagemakerHyperpodTrainingPolicy |
Kirim dan kelola beban kerja pelatihan. Akses penuh keRayCluster,RayJob, dan, ke RayCronJobHyperPodPyTorchJob, ke KubeflowPyTorchJob, dan MPIJobTFJob, dan ke pekerjaan dan pod Kubernetes. Baca akses ke log pod, peta konfigurasi, peristiwa, layanan, akun layanan, kuota sumber daya, rentang batas, penerapan, set stateful, set replika, dan antrian dan beban kerja lokal Kueue. Dapat membuat aRayDashboardConnection. |
AmazonSagemakerHyperpodInferencePolicy |
Menyebarkan dan mengelola beban kerja inferensi. Akses penuh ke RayCluster danRayService, keJumpStartModel,InferenceEndpointConfig, danSageMakerEndpointRegistration, dan ke pod. Baca akses ke log pod, peta konfigurasi, peristiwa, layanan, akun layanan, kuota sumber daya, rentang batas, penerapan, set stateful, set replika, autoscaler pod horizontal, ingress, dan antrian dan beban kerja lokal Kueue. Dapat membuat aRayDashboardConnection. |
AmazonSagemakerHyperpodSpacePolicy |
Gunakan ruang untuk pengembangan interaktif. Akses penuh ke Workspace sumber daya, dan akses baca ke templat ruang kerja, strategi akses, dan templat integrasi. Baca akses ke pod, layanan, akun layanan, klaim volume persisten, peristiwa, kuota sumber daya, binding, set daemon, penerapan, dan kumpulan replika. Dapat membuatWorkspaceConnection, yang membuka ruang. |
AmazonSagemakerHyperpodSpaceTemplatePolicy |
Baca templat ruang bersama. Lampirkan cakupan cakupan ke jupyter-k8s-shared namespace, tempat template berada, bukan ke namespace yang digunakan pengguna Anda. |
AmazonSagemakerHyperpodUserClusterPolicy |
Lihat sumber daya di seluruh kluster, yang perlu dirender oleh UI Studio. Baca akses ke ruang nama dan node, dapatkan akses ke definisi sumber daya khusus, baca akses ke antrian klaster Kueue, ragam sumber daya, dan kelas prioritas beban kerja, dan izin untuk memeriksa akses pengguna sendiri. Lampirkan cakupan ke cluster daripada ke namespace. |
Akses penuh berarti mendapatkan, membuat daftar, menonton, membuat, memperbarui, menambal, dan menghapus.
Ini adalah kebijakan akses klaster Amazon EKS, bukan kebijakan yang dikelola IAM. ARN mereka mengambil formulirarn:<partition>:eks::aws:cluster-access-policy/<name>. Melampirkan satu melalui Kelola akses akan membuat entri akses Amazon EKS untuk peran eksekusi, yang menerapkan kebijakan untuk peran tersebut.
Batasi dengan peran Kubernetes RBAC kustom
Gunakan peran kustom saat Anda ingin memberikan kumpulan izin khusus, bukan yang disediakan oleh kebijakan akses kluster. Konfigurasi berikut memungkinkan administrator untuk memberikan akses spesifik dan terbatas ke ilmuwan data untuk melihat tugas dalam cluster. Konfigurasi ini memberikan izin berikut:
-
Daftar dan dapatkan pod
-
Daftar dan dapatkan acara
-
Dapatkan Definisi Sumber Daya Kustom (CRD)
Konfigurasi YAMM
apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: pods-events-crd-cluster-role rules: - apiGroups: [""] resources: ["pods"] verbs: ["get", "list"] - apiGroups: [""] resources: ["events"] verbs: ["get", "list"] - apiGroups: ["apiextensions.k8s.io"] resources: ["customresourcedefinitions"] verbs: ["get"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: pods-events-crd-cluster-role-binding subjects: - kind: Group name: pods-events-crd-cluster-level apiGroup: rbac.authorization.k8s.io roleRef: kind: ClusterRole name: pods-events-crd-cluster-role apiGroup: rbac.authorization.k8s.io
-
Simpan konfigurasi YAMB ke file bernama
cluster-role.yaml. -
Terapkan konfigurasi menggunakan
kubectldari situs web Kubernetes: kubectl apply -f cluster-role.yaml -
Verifikasi konfigurasi:
kubectl get clusterrole pods-events-crd-cluster-role kubectl get clusterrolebinding pods-events-crd-cluster-role-binding -
Tetapkan pengguna ke
pods-events-crd-cluster-levelgrup melalui penyedia identitas atau IAM Anda.