IAM-Rolle zur Ausführung von Amazon-EKS-Pod - Amazon EKS

Hilf mit, diese Seite zu verbessern

Möchten Sie zu diesem Benutzerhandbuch beitragen? Scrollen Sie zum Ende dieser Seite und wählen Sie Diese Seite bearbeiten am aus GitHub. Ihre Beiträge werden dazu beitragen, unser Benutzerhandbuch für alle zu verbessern.

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.

IAM-Rolle zur Ausführung von Amazon-EKS-Pod

Die Amazon Pod EKS-Ausführungsrolle ist für die Ausführung in Pods der AWS Fargate Infrastruktur erforderlich.

Wenn Ihr Cluster Pods auf einer AWS Fargate Infrastruktur erstellt wird, müssen die Komponenten, die auf der Fargate-Infrastruktur ausgeführt werden, in Ihrem Namen AWS API-Aufrufe tätigen. Auf diese Weise können sie Aktionen wie das Abrufen von Container-Images aus Amazon ECR oder das Weiterleiten von Protokollen an andere AWS Dienste ausführen. Die Amazon-EKS-Pod-Ausführungsrolle stellt die entsprechenden IAM-Berechtigungen bereit.

Wenn Sie ein Fargate-Profil erstellen, müssen Sie eine Pod-Ausführungsrolle für die Amazon-EKS-Komponenten angeben, die auf der Fargate-Infrastruktur mit dem Profil ausgeführt werden. Diese Rolle wird zur rollenbasierten Kubernetes-Zugriffssteuerung (RBAC) des Clusters zur Autorisierung hinzugefügt. Auf diese Weise kann sich das kubelet, das in der Fargate-Infrastruktur ausgeführt wird, bei Ihrem Amazon-EKS-Cluster registrieren, sodass es als Knoten in Ihrem Cluster angezeigt werden kann.

Anmerkung

Das Fargate-Profil muss eine andere IAM-Rolle als Amazon-EC2-Knotengruppen haben.

Wichtig

Die im Fargate-Pod ausgeführten Container können nicht die IAM-Berechtigungen annehmen, die einer Pod-Ausführungsrolle zugeordnet sind. Um den Containern in Ihrem Fargate Pod Berechtigungen für den Zugriff auf andere AWS Dienste zu erteilen, müssen Sie verwendenIAM-Rollen für Servicekonten.

Bevor Sie ein Fargate-Profil erstellen, müssen Sie eine IAM-Rolle mit AmazonEKSFargatePodExecutionRolePolicy erstellen.

Auf eine korrekt konfigurierte Pod-Ausführungsrolle prüfen

Mit dem folgenden Verfahren können Sie feststellen, ob Ihr Konto bereits über eine korrekt konfigurierte Amazon-EKS-Pod-Ausführungsrolle verfügt. Um Confused-Deputy-Sicherheitsprobleme zu vermeiden, ist es wichtig, dass die Rolle den Zugriff basierend auf SourceArn beschränkt. Sie können die Ausführungsrolle nach Bedarf ändern, um Fargate-Profile auch auf anderen Clustern zu unterstützen.

Nach einer Amazon-EKS-Pod-Ausführungsrolle in der IAM-Konsole suchen
  1. Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie im linken Navigationsbereich Roles aus.

  3. Suchen Sie auf der Seite Rollen in der Rollenliste für AmazonEKS FargatePodExecutionRole. Wenn die Rolle nicht vorhanden ist, finden Sie unter Erstellen der Amazon-EKS-Pod-Ausführungsrolle Informationen zum Erstellen der Rolle. Wenn die Rolle vorhanden ist, wählen Sie sie aus.

  4. Gehen Sie auf der FargatePodExecutionRoleAmazonEKS-Seite wie folgt vor:

    1. Wählen Sie Permissions (Berechtigungen).

    2. Stellen Sie sicher, dass die von FargatePodExecutionRolePolicyAmazonEKS verwaltete Amazon-Richtlinie mit der Rolle verknüpft ist.

    3. Wählen Sie Trust Relationships (Vertrauensbeziehungen) aus.

    4. Wählen Sie Edit trust policy (Vertrauensrichtlinie bearbeiten) aus.

  5. Prüfen Sie auf der Seite Edit trust policy (Vertrauensrichtlinie bearbeiten), dass die Vertrauensbeziehung die folgende Richtlinie und eine Zeile für Fargate-Profile in Ihrem Cluster enthält. Wenn ja, wählen Sie Cancel (Abbrechen) aus.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:eks:region-code:111122223333:fargateprofile/my-cluster/*" } }, "Principal": { "Service": "eks-fargate-pods.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

    Wenn die Richtlinie übereinstimmt, aber keine Zeile mit den Fargate-Profilen in Ihrem Cluster enthält, können Sie die folgende Zeile oben im ArnLike-Objekt hinzufügen. Ersetzen Sie region-code durch die AWS-Region , in der sich Ihr Cluster befindet, 111122223333 durch die ID Ihres Kontos und my-cluster durch den Namen Ihres Clusters.

    "aws:SourceArn": "arn:aws:eks:region-code:111122223333:fargateprofile/my-cluster/*",

    Wenn die Richtlinie nicht übereinstimmt, kopieren Sie die vollständige vorherige Richtlinie in das Formular und wählen Sie Update policy (Richtlinie aktualisieren) aus. Ersetzen Sie region-code durch die AWS-Region , in der sich Ihr Cluster befindet. * Ersetzen Sie 111122223333 durch Ihre Konto-ID und my-cluster durch den Namen Ihres Clusters. Wenn Sie dieselbe Rolle für alle Cluster in Ihrem Konto verwenden möchten, ersetzen Sie my-cluster durch *.

Erstellen der Amazon-EKS-Pod-Ausführungsrolle

Wenn Sie noch nicht über die Amazon Pod EKS-Ausführungsrolle für Ihren Cluster verfügen, können Sie die AWS Management Console oder verwenden, AWS CLI um sie zu erstellen.

AWS Management Console
So erstellen Sie eine AWS Fargate-Pod-Ausführungsrolle mit der AWS Management Console
  1. Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie im linken Navigationsbereich Roles aus.

  3. Klicken Sie auf der Seite Roles (Rollen) auf Create role (Rolle erstellen).

  4. Gehen Sie auf der Seite Select trusted entity (Vertrauenswürdige Entität auswählen) wie folgt vor:

    1. Wählen Sie im Abschnitt Trusted entity type (Typ der vertrauenswürdigen Entität) die Option AWS service (-Service) aus.

    2. Wählen Sie in der Dropdown-Liste Use cases for other AWS-Services (Anwendungsfälle für andere ) die Option EKS aus.

    3. Wählen Sie EKS - Fargate-Pod aus.

    4. Wählen Sie Next (Weiter).

  5. Wählen Sie auf der Seite Add permissions (Berechtigungen hinzufügen) die Option Next (Weiter) aus.

  6. Gehen Sie auf der Seite Name, review, and create (Benennen, überprüfen und erstellen) wie folgt vor:

    1. Geben Sie unter Role name (Rollenname) einen eindeutigen Namen für die Rolle ein, z. B. AmazonEKSFargatePodExecutionRole.

    2. Fügen Sie der Rolle unter Tags hinzufügen (optional) Metadaten hinzu, indem Sie Tags als Schlüssel-Wert-Paare anfügen. Weitere Informationen zur Verwendung von Tags in IAM finden Sie unter Markieren von IAM-Ressourcen im IAM-Benutzerhandbuch.

    3. Wählen Sie Rolle erstellen aus.

  7. Suchen Sie auf der Seite Rollen in der Rollenliste für AmazonEKS FargatePodExecutionRole. Wählen Sie die Rolle aus.

  8. Gehen Sie auf der FargatePodExecutionRoleAmazonEKS-Seite wie folgt vor:

    1. Wählen Sie Trust Relationships (Vertrauensbeziehungen) aus.

    2. Wählen Sie Edit trust policy (Vertrauensrichtlinie bearbeiten) aus.

  9. Führen Sie auf der Seite Edit trust policy (Vertrauensrichtlinie bearbeiten) die folgenden Schritte aus:

    1. Kopieren Sie die folgenden Inhalte in das Formular unter Edit trust policy (Vertrauensrichtlinie bearbeiten). Ersetzen Sie den Regionalcode durch den Regionscode, in dem AWS-Region sich Ihr Cluster befindet. * Ersetzen Sie 111122223333 durch Ihre Konto-ID und my-cluster durch den Namen Ihres Clusters. Wenn Sie dieselbe Rolle für alle Cluster in Ihrem Konto verwenden möchten, ersetzen Sie my-cluster durch *.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:eks:region-code:111122223333:fargateprofile/my-cluster/*" } }, "Principal": { "Service": "eks-fargate-pods.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
    2. Wählen Sie Update policy.

AWS CLI
Um eine AWS FargatePod Ausführungsrolle zu erstellen mit AWS CLI
  1. Kopieren Sie den folgenden Inhalt in eine Datei namens pod-execution-role-trust-policy.json. Ersetzen Sie den Regionscode us-iso-east durch den Regionscode AWS-Region , in dem sich Ihr Cluster befindet. * Ersetzen Sie 111122223333 durch Ihre Konto-ID und my-cluster durch den Namen Ihres Clusters. Wenn Sie dieselbe Rolle für alle Cluster in Ihrem Konto verwenden möchten, ersetzen Sie my-cluster durch *.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:eks:region-code:111122223333:fargateprofile/my-cluster/*" } }, "Principal": { "Service": "eks-fargate-pods.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Erstellen einer IAM-Pod-Ausführungsrolle

    aws iam create-role \ --role-name AmazonEKSFargatePodExecutionRole \ --assume-role-policy-document file://"pod-execution-role-trust-policy.json"
  3. Hängen Sie die erforderliche von Amazon EKS verwaltete IAM-Richtlinie an die Rolle an.

    aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonEKSFargatePodExecutionRolePolicy \ --role-name AmazonEKSFargatePodExecutionRole