AWS Identity and Access Management für SageMaker HyperPod - Amazon SageMaker

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS Identity and Access Management für SageMaker HyperPod

AWS Identity and Access Management (IAM) ist ein AWS Dienst, der einem Administrator hilft, den Zugriff auf sicher zu kontrollieren AWS Ressourcen schätzen. IAMAdministratoren kontrollieren, wer authentifiziert (angemeldet) und autorisiert werden kann (über Berechtigungen verfügt), um EKS Amazon-Ressourcen zu nutzen. IAMist ein AWS Service, den Sie ohne zusätzliche Kosten nutzen können.

Wichtig

Benutzerdefinierte IAM Richtlinien, die es Amazon SageMaker Studio oder Amazon SageMaker Studio Classic ermöglichen, SageMaker Amazon-Ressourcen zu erstellen, müssen auch Berechtigungen zum Hinzufügen von Tags zu diesen Ressourcen gewähren. Die Berechtigung zum Hinzufügen von Tags zu Ressourcen ist erforderlich, da Studio und Studio Classic automatisch alle von ihnen erstellten Ressourcen taggen. Wenn eine IAM Richtlinie Studio und Studio Classic das Erstellen von Ressourcen, aber kein Taggen erlaubt, können "AccessDenied" Fehler auftreten, wenn versucht wird, Ressourcen zu erstellen. Weitere Informationen finden Sie unter Stellen Sie Berechtigungen für das Taggen von Ressourcen SageMaker bereit.

AWS Verwaltete Richtlinien für Amazon SageMakerdie Berechtigungen zum Erstellen von SageMaker Ressourcen gewähren, beinhalten bereits Berechtigungen zum Hinzufügen von Tags beim Erstellen dieser Ressourcen.

Nehmen wir an, dass es zwei SageMaker HyperPod Hauptnutzerschichten gibt: Cluster-Admin-Benutzer und Data-Scientist-Benutzer.

  • Cluster-Admin-Benutzer — Sind für die Erstellung und Verwaltung von SageMaker HyperPod Clustern verantwortlich. Dazu gehören die Konfiguration der HyperPod Cluster und die Verwaltung des Benutzerzugriffs auf sie.

    • Erstellen und konfigurieren Sie SageMaker HyperPod Cluster mit Slurm oder AmazonEKS.

    • Erstellen und konfigurieren Sie IAM Rollen für Data-Scientist-Benutzer und HyperPod Cluster-Ressourcen.

    • Für die SageMaker HyperPod Orchestrierung mit Amazon müssen Sie EKSZugriffseinträge EKS, rollenbasierte Zugriffskontrolle (RBAC) und Pod Identity erstellen und konfigurieren, um datenwissenschaftliche Anwendungsfälle zu erfüllen.

  • Anwender von Datenwissenschaftlern — Konzentrieren Sie sich auf das Training mit ML-Modellen. Sie verwenden den Open-Source-Orchestrator oder den, SageMaker HyperPod CLI um Schulungsjobs einzureichen und zu verwalten.

    • Nehmen Sie die von Cluster-Admin-Benutzern bereitgestellte IAM Rolle an und verwenden Sie sie.

    • Interagieren Sie mit dem Open-Source-Orchestrator, der von SageMaker HyperPod (Slurm oder Kubernetes) oder CLIs unterstützt wird, SageMaker HyperPod CLI um die Clusterkapazität zu überprüfen, eine Verbindung zum Cluster herzustellen und Workloads einzureichen.

Richten Sie IAM Rollen für Cluster-Administratoren ein, indem Sie die richtigen Berechtigungen oder Richtlinien für den Betrieb von Clustern hinzufügen. SageMaker HyperPod Cluster-Administratoren sollten außerdem IAM Rollen einrichten, um sie den SageMaker HyperPod Ressourcen zur Verfügung zu stellen, damit sie sie ausführen und mit den erforderlichen Informationen kommunizieren können AWS Ressourcen wie Amazon S3 CloudWatch, Amazon und AWS Systems Manager (SSM). Endlich, die AWS Der Kontoadministrator oder die Clusteradministratoren sollten Wissenschaftlern Berechtigungen für den Zugriff auf die SageMaker HyperPod Cluster und die Ausführung von ML-Workloads gewähren.

Je nachdem, welchen Orchestrator Sie wählen, können die für den Clusteradministrator und die Wissenschaftler erforderlichen Berechtigungen variieren. Sie können auch den Umfang der Berechtigungen für verschiedene Aktionen in den Rollen mithilfe der Bedingungsschlüssel pro Dienst steuern. Verwenden Sie die folgenden Referenzen zur Serviceautorisierung, um einen detaillierten Umfang für die Dienste hinzuzufügen, die sich auf Folgendes beziehen SageMaker HyperPod.

IAMBenutzer für den Cluster-Administrator

Clusteradministratoren (Admins) betreiben und konfigurieren SageMaker HyperPod Cluster und führen die Aufgaben inVerwaltung von SageMaker HyperPod Clustern, die von Slurm orchestriert wurden. Das folgende Richtlinienbeispiel umfasst die Mindestberechtigungen für Clusteradministratoren zum Ausführen des SageMaker HyperPod Kerns APIs und zur Verwaltung von SageMaker HyperPod Clustern in Ihrem AWS Konto.

Slurm
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sagemaker:CreateCluster", "sagemaker:ListClusters" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "sagemaker:DeleteCluster", "sagemaker:DescribeCluster", "sagemaker:DescribeClusterNode", "sagemaker:ListClusterNodes", "sagemaker:UpdateCluster", "sagemaker:UpdateClusterSoftware" ], "Resource": "arn:aws:sagemaker:region:account-id:cluster/*" } ] }
Amazon EKS
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": <execution-role-arn> }, { "Effect": "Allow", "Action": [ "sagemaker:CreateCluster", "sagemaker:DeleteCluster", "sagemaker:DescribeCluster", "sagemaker:DescribeCluterNode", "sagemaker:ListClusterNodes", "sagemaker:ListClusters", "sagemaker:UpdateCluster", "sagemaker:UpdateClusterSoftware", "sagemaker:DeleteClusterNodes", "eks:DescribeCluster", "eks:CreateAccessEntry", "eks:DescribeAccessEntry", "eks:DeleteAccessEntry", "eks:AssociateAccessPolicy", "iam:CreateServiceLinkedRole" ], "Resource": "*" } ] }

Um Berechtigungen für den Zugriff auf die SageMaker Konsole zu erteilen, verwenden Sie die Beispielrichtlinie unter Erforderliche Berechtigungen für die Nutzung der SageMaker Amazon-Konsole.

Um Berechtigungen für den Zugriff auf die Amazon EC2 Systems Manager Manager-Konsole zu erteilen, verwenden Sie die Beispielrichtlinie unter Verwenden von AWS Systems Manager Konsole in der AWS Systems Manager Benutzerleitfaden.

Sie könnten auch erwägen, die AmazonSageMakerFullAccessRichtlinie an die Rolle anzuhängen. Beachten Sie jedoch, dass die AmazonSageMakerFullAccess Richtlinie Berechtigungen für die gesamten SageMaker API Aufrufe, Funktionen und Ressourcen gewährt.

Hinweise zu IAM Benutzern im Allgemeinen finden Sie unter IAMBenutzer im AWS Identity and Access Management Benutzerleitfaden.

IAMNutzer für Wissenschaftler

Wissenschaftler melden sich bei ML-Workloads an und führen sie auf SageMaker HyperPod Clusterknoten aus, die von Clusteradministratoren bereitgestellt werden. Für Wissenschaftler in Ihrem AWS Für das Konto sollten Sie die Erlaubnis "ssm:StartSession" erteilen, den SSM start-session Befehl auszuführen. Das Folgende ist ein Richtlinienbeispiel für IAM Benutzer.

Slurm

Fügen Sie die folgende Richtlinie hinzu, um allen Ressourcen SSM Sitzungsberechtigungen zum Herstellen einer Verbindung mit einem SSM Ziel zu gewähren. Dadurch können Sie auf HyperPod Cluster zugreifen.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:TerminateSession" ], "Resource": "*" } ] }
Amazon EKS

Gewähren Sie Datenwissenschaftlern die folgenden IAM Rollenberechtigungen zur Ausführung hyperpod list-clusters sowie hyperpod connect-cluster Befehle unter den HyperPod CLI Befehlen. Weitere Informationen zu finden Sie HyperPod CLI unterAusführung von Jobs auf SageMaker HyperPod Clustern, die von Amazon orchestriert wurden EKS. Es umfasst auch SSM Sitzungsberechtigungen für alle Ressourcen, um eine Verbindung zu einem SSM Ziel herzustellen. Dadurch können Sie auf HyperPod Cluster zugreifen.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DescribeHyerpodClusterPermissions", "Effect": "Allow", "Action": [ "sagemaker:DescribeCluster" ], "Resource": "<hyperpod-cluster-arn>" }, { "Sid": "UseEksClusterPermissions", "Effect": "Allow", "Action": [ "eks:DescribeCluster", ], "Resource": "<eks-cluster-arn>" }, { "Sid": "ListClustersPermission", "Effect": "Allow", "Action": [ "sagemaker:ListClusters" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:TerminateSession" ], "Resource": "*" } ] }

Informationen darüber, wie Datenwissenschaftlern IAM Benutzern oder Rollen Zugriff auf Kubernetes APIs im Cluster gewährt werden, finden Sie unter IAMBenutzern und Rollen Zugriff auf Kubernetes gewähren APIs im Amazon-Benutzerhandbuch. EKS

IAMRolle für SageMaker HyperPod

Damit SageMaker HyperPod Cluster laufen und mit ihnen kommunizieren können, ist Folgendes erforderlich AWS Ressourcen, Sie müssen eine IAM Rolle erstellen, die der HyperPod Cluster übernehmen soll.

Beginnen Sie mit dem Anhängen der verwalteten RolleAWS verwaltete Richtlinie: AmazonSageMakerHyperPodServiceRolePolicy. Angesichts dessen AWS verwaltete Richtlinie, SageMaker HyperPod Cluster-Instanzgruppen übernehmen die Rolle der Kommunikation mit Amazon CloudWatch, Amazon S3 und AWS Systems Manager Agent (SSMAgent). Diese verwaltete Richtlinie ist die Mindestanforderung für den ordnungsgemäßen Betrieb von SageMaker HyperPod Ressourcen. Daher müssen Sie allen Instanzgruppen eine IAM Rolle mit dieser Richtlinie zuweisen.

Tipp

Je nachdem, was Sie bei der Gestaltung der Berechtigungsstufen für mehrere Instanzgruppen bevorzugen, können Sie auch mehrere IAM Rollen einrichten und sie verschiedenen Instanzgruppen zuordnen. Wenn Sie Ihren Cluster-Benutzerzugriff auf bestimmte SageMaker HyperPod Clusterknoten einrichten, übernehmen die Knoten die Rolle mit den selektiven Berechtigungen, die Sie manuell zugewiesen haben.

Wenn Sie den Zugriff für Wissenschaftler auf bestimmte Clusterknoten wie folgt einrichten AWS Systems Manager(siehe auchEinrichtung AWS Systems Manager und Run As für die Cluster-Benutzerzugriffskontrolle) übernehmen die Clusterknoten die Rolle mit den selektiven Berechtigungen, die Sie manuell zuweisen.

Wenn Sie mit der Erstellung der IAM Rollen fertig sind, notieren Sie sich deren Namen undARNs. Sie verwenden die Rollen bei der Erstellung eines SageMaker HyperPod Clusters und gewähren dabei jeder Instanzgruppe die richtigen Berechtigungen, um mit den erforderlichen zu kommunizieren AWS Ressourcen schätzen.

Slurm

Für „ HyperPod Orchestrated with Slurm“ müssen Sie der Rolle die folgende verwaltete Richtlinie hinzufügen. SageMaker HyperPod IAM

(Optional) Zusätzliche Berechtigungen für die Verwendung SageMaker HyperPod mit Amazon Virtual Private Cloud

Wenn Sie statt der Standardversion Ihre eigene Amazon Virtual Private Cloud (VPC) verwenden möchten SageMakerVPC, sollten Sie der IAM Rolle für die folgende zusätzliche Berechtigung hinzufügen SageMaker HyperPod.

{ "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DetachNetworkInterface" ], "Resource": "*" } { "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": [ "arn:aws:ec2:*:*:network-interface/*" ] }

In der folgenden Liste ist aufgeführt, welche Berechtigungen erforderlich sind, um SageMaker HyperPod Cluster-Funktionen zu aktivieren, wenn Sie den Cluster mit Ihrem eigenen Amazon konfigurierenVPC.

  • Die folgenden ec2 Berechtigungen sind erforderlich, um die Konfiguration eines SageMaker HyperPod Clusters mit Ihrem zu ermöglichenVPC.

    { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups" ], "Resource": "*" }
  • Die folgende ec2 Berechtigung ist erforderlich, um die SageMaker HyperPod automatische Wiederaufnahmefunktion zu aktivieren.

    { "Effect": "Allow", "Action": [ "ec2:DetachNetworkInterface" ], "Resource": "*" }
  • Die folgende ec2 Berechtigung ermöglicht SageMaker HyperPod das Erstellen von Tags auf den Netzwerkschnittstellen in Ihrem Konto.

    { "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": [ "arn:aws:ec2:*:*:network-interface/*" ] }
Amazon EKS

Für HyperPod Orchestrated with Amazon EKS müssen Sie die folgenden verwalteten Richtlinien an die SageMaker HyperPod IAM Rolle anhängen.

Fügen Sie der Rolle zusätzlich zu den verwalteten Richtlinien die folgende Berechtigungsrichtlinie hinzu.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:AssignPrivateIpAddresses", "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DetachNetworkInterface", "ec2:ModifyNetworkInterfaceAttribute", "ec2:UnassignPrivateIpAddresses", "ecr:BatchGetImage", "ecr:GetAuthorizationToken", "ecr:GetDownloadUrlForLayer", "eks-auth:AssumeRoleForPodIdentity" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:network-interface/*" ] } ] }
Anmerkung

Die "eks-auth:AssumeRoleForPodIdentity" Erlaubnis ist optional. Sie ist erforderlich, wenn Sie EKS Pod Identity verwenden möchten.

SageMaker HyperPod Mit dem Dienst verknüpfte Rolle

Für Amazon EKS Support in SageMaker HyperPod, HyperPod erstellt eine servicebezogene Rolle mit AWS verwaltete Richtlinie: AmazonSageMakerHyperPodServiceRolePolicy zur Überwachung und Unterstützung der Resilienz Ihres EKS Clusters, z. B. durch das Ersetzen von Knoten und das Neustarten von Jobs.

IAMRichtlinien für Amazon EKS