Amazon-EKS-Cluster-IAM-Rolle - Amazon EKS

Unterstützung für die Verbesserung dieser Seite beitragen

Um zu diesem Benutzerhandbuch beizutragen, klicken Sie auf den Link Diese Seite auf GitHub bearbeiten, der sich im rechten Bereich jeder Seite befindet.

Amazon-EKS-Cluster-IAM-Rolle

Für jeden Cluster ist eine IAM-Rolle für Amazon-EKS-Cluster erforderlich. Von Amazon EKS verwaltete Kubernetes-Cluster verwenden diese Rolle zur Verwaltung von Knoten, und der veraltete Cloud-Anbieter nutzt diese Rolle, um Load Balancer mit Elastic Load Balancing für Services zu erstellen.

Bevor Sie Amazon-EKS-Cluster erstellen können, müssen Sie eine IAM-Rolle mit einer der folgenden IAM-Richtlinien erstellen:

  • AmazonEKSClusterPolicy

  • Eine benutzerdefinierten IAM-Richtlinie. Die folgenden Mindestberechtigungen ermöglichen es dem Kubernetes-Cluster, Knoten zu verwalten, erlauben es dem alten Cloud-Anbieter jedoch nicht, Load Balancer mit Elastic Load Balancing zu erstellen. Ihre benutzerdefinierte IAM-Richtlinie muss mindestens folgende Berechtigungen haben:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "ForAnyValue:StringLike": { "aws:TagKeys": "kubernetes.io/cluster/*" } } }, { "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeAvailabilityZones", "ec2:DescribeInstanceTopology", "kms:DescribeKey" ], "Resource": "*" } ] }
Anmerkung

Vor dem 3. Oktober 2023 war AmazonEKSClusterPolicy für die IAM-Rolle für jeden Cluster erforderlich.

Vor dem 16. April 2020 waren AmazonEKSServicePolicy und AmazonEKSClusterPolicy erforderlich und der vorgeschlagene Name für die Rolle war eksServiceRole. Mit der serviceverknüpften AWSServiceRoleForAmazonEKS-Rolle ist die AmazonEKSServicePolicy-Richtlinie für Cluster, die am oder nach dem 16. April 2020 erstellt wurden, nicht mehr erforderlich.

Überprüfen, ob eine Clusterrolle vorhanden ist

Mit dem folgenden Verfahren können Sie feststellen, ob Ihr Konto bereits über die Amazon-EKS-Clusterrolle verfügt.

  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 in der Liste der Rollen nach eksClusterRole. Wenn keine Rolle mit eksClusterRole vorhanden ist, informieren Sie sich unter Erstellen der Amazon-EKS-Cluster-Rolle, wie Sie die Rolle erstellen können. Wenn eine Rolle mit eksClusterRole vorhanden ist, wählen Sie die Rolle aus, um die angefügten Richtlinien anzuzeigen.

  4. Wählen Sie Permissions (Berechtigungen).

  5. Stellen Sie sicher, dass die von AmazonEKSClusterPolicy verwaltete Richtlinie an die Rolle angefügt ist. Wenn die Richtlinie angefügt ist, ist Ihre Amazon-EKS-Clusterrolle korrekt konfiguriert.

  6. Wählen Sie Trust Relationships (Vertrauensstellungen) und dann Edit trust policy (Vertrauensrichtlinie bearbeiten) aus.

  7. Überprüfen Sie, dass die Vertrauensstellung die folgende Richtlinie enthält. Wenn die Vertrauensstellung mit der folgenden Richtlinie übereinstimmt, wählen Sie Cancel (Abbrechen) aus. Andernfalls kopieren Sie die Richtlinie in das Fenster Vertrauensrichtlinie bearbeiten und wählen Sie Richtlinie aktualisieren aus.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Erstellen der Amazon-EKS-Cluster-Rolle

Sie können die AWS-Managementkonsole oder die AWS CLI verwenden, um die Cluster-Rolle zu erstellen.

AWS-Managementkonsole
  1. Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/.

  2. Wählen Sie Roles (Rollen) und anschließend Create Role (Rolle erstellen) aus.

  3. Wählen Sie unter Typ der vertrauenswürdigen Entität die Option AWS-Service aus.

  4. Wählen Sie aus der Dropdown-Liste Anwendungsfälle für andere AWS-Services die Option EKS aus.

  5. Wählen Sie EKS - Cluster (EKS – Cluster) für Ihren Anwendungsfall und dann Next (Weiter) aus.

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

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

  8. Geben Sie unter Description (Beschreibung) einen beschreibenden Text wie Amazon EKS - Cluster role ein.

  9. Wählen Sie Create role (Rolle erstellen) aus.

AWS-CLI
  1. Kopieren Sie den folgenden Inhalt in eine Datei mit dem Namen cluster-trust-policy.json.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Erstellen Sie die -Rolle. Sie können eksClusterRole durch einen beliebigen Namen ersetzen.

    aws iam create-role \ --role-name eksClusterRole \ --assume-role-policy-document file://"cluster-trust-policy.json"
  3. Fügen Sie der Rolle die erforderliche IAM-Richtlinie an.

    aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/AmazonEKSClusterPolicy \ --role-name eksClusterRole