IAMRolle des EKS Amazon-Knotens - Amazon EKS

Helfen Sie mit, diese Seite 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.

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.

IAMRolle des EKS Amazon-Knotens

Der Amazon EKS Node kubelet Daemon ruft in Ihrem Namen AWS APIs an. Knoten erhalten über ein IAM Instance-Profil und zugehörige Richtlinien Berechtigungen für diese API Aufrufe. Bevor Sie Knoten starten und sie in einem Cluster registrieren können, müssen Sie eine IAM Rolle erstellen, die diese Knoten beim Start verwenden können. Diese Anforderung gilt für Knoten, die mit dem von Amazon AMI bereitgestellten Amazon EKS Optimized Node oder mit einem anderen NodeAMIs, den Sie verwenden möchten, gestartet wurden. Darüber hinaus gilt diese Anforderung sowohl für verwaltete Knotengruppen als auch für selbstverwaltete Knoten.

Anmerkung

Sie können nicht dieselbe Rolle verwenden, die zum Erstellen von Clustern verwendet wird.

Bevor Sie Knoten erstellen, müssen Sie eine IAM Rolle mit den folgenden Berechtigungen erstellen:

  • Berechtigungen für die kubelet zur Beschreibung von EC2 Amazon-Ressourcen in derVPC, wie sie in der mazonEKSWorkerNodePolicyA-Richtlinie vorgesehen sind. Diese Richtlinie stellt auch die Berechtigungen für den Amazon EKS Pod Identity Agent bereit.

  • Berechtigungen für die kubelet Verwendung von Container-Images aus Amazon Elastic Container Registry (AmazonECR), wie sie in der EC2ContainerRegistryPullOnlyAmazon-Richtlinie vorgesehen sind. Die Berechtigungen zur Verwendung von Container-Images aus Amazon Elastic Container Registry (AmazonECR) sind erforderlich, da die integrierten Add-Ons für Netzwerke Pods ausführen, die Container-Images von Amazon verwendenECR.

  • (Optional) Berechtigungen für den Amazon EKS Pod Identity Agent, die eks-auth:AssumeRoleForPodIdentity Aktion zum Abrufen von Anmeldeinformationen für Pods zu verwenden. Wenn Sie das A nicht verwenden mazonEKSWorkerNodePolicy, müssen Sie diese Berechtigung zusätzlich zu den EC2 Berechtigungen zur Verwendung von EKS Pod Identity erteilen. `

  • (Optional) Wenn Sie EKS Pod Identity nicht verwendenIRSA, um den VPC CNI Pods Berechtigungen zu erteilen, müssen Sie Berechtigungen für die Rolle VPC CNI on the instance bereitstellen. Sie können entweder die von `Amazon EKS _ CNI _Policy` verwaltete Richtlinie (wenn Sie Ihren Cluster mit der IPv4 `-Familie erstellt haben) oder eine von Ihnen erstellte IPv6 Richtlinie (wenn Sie Ihren Cluster mit der IPv6 Familie erstellt haben) verwenden. Anstatt die Richtlinie dieser Rolle zuzuordnen, empfehlen wir jedoch, die Richtlinie einer separaten Rolle zuzuordnen, die speziell für das VPC CNI Amazon-Add-on verwendet wird. Weitere Informationen zum Erstellen einer separaten Rolle für das VPC CNI Amazon-Add-on finden Sie unterKonfigurieren Sie VPC CNI das zu verwendende Amazon-Plugin IRSA.

Anmerkung

Die EC2 Amazon-Knotengruppen müssen eine andere IAM Rolle als das Fargate-Profil haben. Weitere Informationen finden Sie unter Amazon EKS Pod IAMRolle bei der Ausführung.

Nach einer vorhandenen Knotenrolle suchen

Mithilfe des folgenden Verfahrens können Sie überprüfen, ob Ihr Konto bereits über die EKS Amazon-Knotenrolle 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 eksNodeRole, AmazonEKSNodeRole oder NodeInstanceRole. Wenn eine Rolle mit einem dieser Namen nicht existiert, finden Sie weitere Informationen Die EKS IAM Amazon-Knotenrolle erstellen zum Erstellen der Rolle. Wenn eine Rolle mit eksNodeRole, AmazonEKSNodeRole oder NodeInstanceRole vorhanden ist, wählen Sie die Rolle aus, um die angehängten Richtlinien anzuzeigen.

  4. Wählen Sie Permissions (Berechtigungen).

  5. Stellen Sie sicher, dass die von A mazonEKSWorker NodePolicy und Amazon EC2ContainerRegistryPullOnly verwalteten Richtlinien an die Rolle angehängt sind oder dass eine benutzerdefinierte Richtlinie mit den Mindestberechtigungen angehängt ist.

    Anmerkung

    Wenn die Amazon EKS _ CNI _Policy-Richtlinie an die Rolle angehängt ist, empfehlen wir, sie zu entfernen und sie einer IAM Rolle zuzuordnen, die der Rolle zugeordnet ist aws-node Kubernetes Stattdessen ein Servicekonto. Weitere Informationen finden Sie unter Konfigurieren Sie VPC CNI das zu verwendende Amazon-Plugin IRSA.

  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. Wenn die Vertrauensstellung nicht übereinstimmt, kopieren Sie die Richtlinie in das Fenster Vertrauensrichtlinie bearbeiten und wählen Sie Richtlinie aktualisieren aus.

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

Die EKS IAM Amazon-Knotenrolle erstellen

Sie können die IAM Knotenrolle mit dem AWS Management Console oder dem erstellen AWS CLI.

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 Vertrauenswürdiger Entitätstyp die Option AWS Service aus.

    2. Wählen Sie unter Use case (Anwendungsfall) EC2 aus.

    3. Wählen Sie Weiter.

  5. Führen Sie auf der Seite Add permissions (Berechtigungen hinzufügen) die folgenden Schritte aus:

    1. Geben Sie im Feld Filter policies (Filterrichtlinien) AmazonEKSWorkerNodePolicy ein.

    2. Aktivieren Sie mazonEKSWorker NodePolicy in den Suchergebnissen das Kontrollkästchen links von A.

    3. Wählen Sie Clear filters (Filter löschen) aus.

    4. Geben Sie im Feld Filter policies (Filterrichtlinien) AmazonEC2ContainerRegistryPullOnly ein.

    5. Aktivieren Sie EC2ContainerRegistryPullOnly in den Suchergebnissen das Kontrollkästchen links neben Amazon.

      Entweder die von Amazon EKS _ CNI _Policy verwaltete Richtlinie oder eine von Ihnen erstellte IPv6Richtlinie muss ebenfalls entweder dieser Rolle oder einer anderen Rolle zugewiesen werden, die der aws-node Kubernetes Servicekonto. Wir empfehlen, die Richtlinie der Rolle zuzuweisen, die dem zugeordnet ist Kubernetes Dienstkonto, anstatt es dieser Rolle zuzuweisen. Weitere Informationen finden Sie unter Konfigurieren Sie VPC CNI das zu verwendende Amazon-Plugin IRSA.

    6. Wählen Sie Weiter.

  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. AmazonEKSNodeRole.

    2. Ersetzen Sie unter Description (Beschreibung) den aktuellen Text durch beschreibenden Text wie beispielsweise Amazon EKS - Node role.

    3. 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 im IAMBenutzerhandbuch unter IAMRessourcen taggen.

    4. Wählen Sie Rolle erstellen.

AWS CLI
  1. Führen Sie den folgenden Befehl aus, um die Datei node-role-trust-relationship.json zu erstellen.

    cat >node-role-trust-relationship.json <<EOF { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sts:AssumeRole" ], "Principal": { "Service": [ "ec2.amazonaws.com" ] } } ] } EOF
  2. Erstellen Sie die IAM-Rolle.

    aws iam create-role \ --role-name AmazonEKSNodeRole \ --assume-role-policy-document file://"node-role-trust-relationship.json"
  3. Fügen Sie der IAM Rolle zwei erforderliche IAM verwaltete Richtlinien hinzu.

    aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/AmazonEKSWorkerNodePolicy \ --role-name AmazonEKSNodeRole aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/AmazonEC2ContainerRegistryPullOnly \ --role-name AmazonEKSNodeRole
  4. Fügen Sie der IAM Rolle eine der folgenden IAM Richtlinien hinzu, je nachdem, mit welcher IP-Familie Sie Ihren Cluster erstellt haben. Die Richtlinie muss dieser Rolle oder einer Rolle zugeordnet sein, die der Rolle zugeordnet ist Kubernetes aws-nodeDienstkonto, das verwendet wird für Amazon VPC CNI plugin for Kubernetes. Wir empfehlen, die Richtlinie der Rolle zuzuweisen, die dem zugeordnet ist Kubernetes Dienstkonto. Um die Richtlinie der Rolle zuzuweisen, die dem zugeordnet ist Kubernetes Dienstkonto, sieheKonfigurieren Sie VPC CNI das zu verwendende Amazon-Plugin IRSA.

    • IPv4

      aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/AmazonEKS_CNI_Policy \ --role-name AmazonEKSNodeRole
    • IPv6

      1. Kopieren Sie den folgenden Text und speichern Sie ihn in einer Datei mit dem Namen vpc-cni-ipv6-policy.json.

        { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:AssignIpv6Addresses", "ec2:DescribeInstances", "ec2:DescribeTags", "ec2:DescribeNetworkInterfaces", "ec2:DescribeInstanceTypes" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": [ "arn:aws: ec2:*:*:network-interface/*" ] } ] }
      2. Erstellen Sie die IAM Richtlinie.

        aws iam create-policy --policy-name AmazonEKS_CNI_IPv6_Policy --policy-document file://vpc-cni-ipv6-policy.json
      3. Hängen Sie die IAM Richtlinie an die IAM Rolle an. Ersetzen Sie 111122223333 durch Ihre Konto-ID.

        aws iam attach-role-policy \ --policy-arn arn:aws: iam::111122223333:policy/AmazonEKS_CNI_IPv6_Policy \ --role-name AmazonEKSNodeRole

📝 Bearbeiten Sie diese Seite auf GitHub