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

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-EKS-Pod-Ausführungsrolle ist erforderlich, um Pods in der AWS Fargate-Infrastruktur auszuführen.

Wenn Ihr Cluster Pods in der AWS Fargate-Infrastruktur erstellt, müssen die Komponenten, die in der Fargate-Infrastruktur ausgeführt werden, in Ihrem Namen Aufrufe an AWS-APIs senden. Auf diese Weise können sie Aktionen wie das Abrufen von Container-Images aus Amazon ECR oder das Weiterleiten von Protokollen an andere AWS-Services durchfü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 IAM-Rollen für Servicekonten verwenden.

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 die Liste der Rollen für AmazonEKSFargatePodExecutionRole . 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 Seite AmazonEKSFargatePodExecutionRole wie folgt vor:

    1. Wählen Sie Permissions (Berechtigungen).

    2. Stellen Sie sicher, dass die von AmazonEKSFargatePodExecutionRolePolicy verwaltete Richtlinie an die Rolle angehängt 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. Wenn Sie dieselbe Rolle in allen AWS-Regionen in Ihrem Konto verwenden möchten, ersetzen Sie region-code durch *. 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 keine Amazon-EKS-Pod-Ausführungsrolle für Ihren Cluster haben, können Sie über die AWS Management Console oder die AWS CLI eine 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 die Liste der Rollen für AmazonEKSFargatePodExecutionRole . Wählen Sie die Rolle aus.

  8. Gehen Sie auf der Seite AmazonEKSFargatePodExecutionRole 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 region-code durch die AWS-Region, in der sich Ihr Cluster befindet. Wenn Sie dieselbe Rolle in allen AWS-Regionen in Ihrem Konto verwenden möchten, ersetzen Sie region-code durch *. 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
So erstellen Sie eine AWS Fargate-Pod-Ausführungsrolle mit der AWS CLI
  1. Kopieren Sie den folgenden Inhalt in eine Datei namens pod-execution-role-trust-policy.json. Ersetzen Sie region-code durch die AWS-Region, in der sich Ihr Cluster befindet. Wenn Sie dieselbe Rolle in allen AWS-Regionen in Ihrem Konto verwenden möchten, ersetzen Sie region-code durch *. 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