本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Studio 中设置 Amazon EKS 集群
以下说明介绍如何在 Studio 中设置 Amazon EKS 集群。
-
创建一个域,或准备好一个已有的域。有关创建域的信息,请参阅 亚马逊 A SageMaker I 入门指南。
-
将以下权限添加到执行角色。
有关 SageMaker AI 执行角色以及如何对其进行编辑的信息,请参阅了解域空间权限和执行角色。
要了解如何将策略附加到 IAM 用户或组,请参阅添加和移除 IAM 身份权限。
-
使用 EKS 访问条目向 IAM 用户授予 Kubernetes 访问权限。
-
导航到与您的集群关联的 Amazon EKS HyperPod 集群。
-
选择访问选项卡,然后所创建的执行角色创建访问条目。
-
在步骤 1 中,在 IAM 主体下拉列表中选择您在上面创建的执行角色。
-
在步骤 2 中,选择策略名称,并选择您希望用户有权访问的访问范围。
-
-
-
(可选)我们建议您向集群添加标签,以确保更加顺畅的体验。有关如何添加标签的信息,请参阅编辑集 SageMaker HyperPod 群使用 SageMaker AI 控制台更新集群。
-
为 Amazon Managed Grafana 工作区添加标签,使其关联到 Studio 域。这将用于直接在 Studio 中从集群快速链接到 Grafana 工作区。为此,请向集群添加以下标签,以便使用 Grafana 工作区 ID
ws-id标识集群。标签键 =“
grafana-workspace”,标签值 =“ws-id”。
-
-
(可选)在 Studio 中限制 EKS 集群的任务视图。有关 Studio 中的可查看任务的信息,请参阅任务。
在 Studio 中限制 EKS 集群的任务视图
您可以限制用户的 Kubernetes 命名空间权限,使他们仅有权查看属于指定命名空间的任务。下文介绍如何在 Studio 中限制 EKS 集群的任务视图。有关 Studio 中的可查看任务的信息,请参阅任务。
默认情况下,用户将能看到所有 EKS 集群任务。您可以将用户对 EKS 集群任务的可见范围限制在指定的命名空间内,这样既能确保用户可访问他们所需的资源,又能保持严格的访问控制。完成以下设置后,您需要提供命名空间,以便用户查看该命名空间下的作业。
应用限制后,您需要为代入该角色的用户提供命名空间。仅在用户提供他们有权在任务选项卡中查看的输入命名空间后,Studio 才会显示命名空间的作业。
以下配置可让管理员向数据科学家授予特定的、有限的访问权限,以便其查看集群内的任务。此配置授予以下权限:
-
列出并获取容器组(pod)
-
列出并获取事件
-
获取自定义资源定义 (CRDs)
YAML 配置
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
-
将 YAML 配置保存到名为
cluster-role.yaml的文件中。 -
使用
kubectl应用配置: kubectl apply -f cluster-role.yaml -
验证配置:
kubectl get clusterrole pods-events-crd-cluster-role kubectl get clusterrolebinding pods-events-crd-cluster-role-binding -
通过身份提供者或 IAM 将用户分配到
pods-events-crd-cluster-level组。