Anzeigen Kubernetes Ressourcen in der AWS Management Console - 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.

Anzeigen Kubernetes Ressourcen in der AWS Management Console

Sie können die ansehen Kubernetes Ressourcen, die in Ihrem Cluster mit dem bereitgestellt wurden AWS Management Console. Sie können es nicht ansehen Kubernetes Ressourcen mit dem AWS CLI oder eksctl. Zum Ansehen Kubernetes Verwenden Sie mithilfe eines Befehlszeilentools Ressourcen. kubectl

Voraussetzung

Um die Registerkarte Ressourcen und den Abschnitt Knoten auf der Registerkarte Compute in der anzuzeigen AWS Management Console, muss der von Ihnen verwendete IAMPrincipal über spezifische und IAM Kubernetes Berechtigungen. Weitere Informationen finden Sie unter Erforderliche Berechtigungen.

Zum Ansehen Kubernetes Ressourcen mit dem AWS Management Console
  1. Öffnen Sie die EKS Amazon-Konsole unter https://console.aws.amazon.com/eks/home#/clusters.

  2. Wählen Sie in der Clusterliste den Cluster aus, der Folgendes enthält Kubernetes Ressourcen, die Sie anzeigen möchten.

  3. Wählen Sie die Registerkarte für Resources (Ressourcen).

  4. Wählen Sie eine Resource type-Gruppe (Ressourcentyp) aus, für die Sie Ressourcen anzeigen möchten, z. B. Workloads. Ihnen wird eine Liste der Ressourcentypen in dieser Gruppe angezeigt.

  5. Wählen Sie einen Ressourcentyp aus, z. B. Deployments (Bereitstellungen) in der Gruppe Workloads. Sie sehen eine Beschreibung des Ressourcentyps, einen Link zu Kubernetes Dokumentation mit weiteren Informationen zum Ressourcentyp und einer Liste der Ressourcen dieses Typs, die auf Ihrem Cluster bereitgestellt werden. Wenn die Liste leer ist, werden keine Ressourcen dieses Typs in Ihrem Cluster bereitgestellt.

  6. Wählen Sie eine Ressource aus, um weitere Informationen dazu anzuzeigen. Probieren Sie die folgenden Beispiele aus:

    • Wählen Sie die Gruppe Workloads aus, dann den Ressourcentyp Deployments (Bereitstellungen) gefolgt von der Ressource coredns. Wenn Sie eine Ressource auswählen, befinden Sie sich standardmäßig in der strukturierten Ansicht. Für einige Ressourcentypen wird in der strukturierten Ansicht der Abschnitt Pods angezeigt. In diesem Abschnitt werden die Pods wird vom Workload verwaltet. Sie können eine beliebige auswählen Pod aufgeführt, um Informationen über die anzuzeigen Pod. Nicht alle Ressourcentypen zeigen Informationen in der strukturierten Ansicht an. Wenn Sie in der oberen rechten Ecke der Seite für die Ressource die Option Rohansicht auswählen, sehen Sie die vollständige JSON Antwort von Kubernetes APIfür die Ressource.

    • Wählen Sie die Cluster-Gruppe aus und dann den Ressourcentyp Nodes (Knoten). Eine Liste aller Knoten in Ihrem Cluster wird angezeigt. Bei den Knoten kann es sich um einen beliebigen EKSAmazon-Knotentyp handeln. Das ist die gleiche Liste, die Sie im Abschnitt Nodes (Knoten) sehen, wenn Sie die Registerkarte Compute (Datenverarbeitung) für Ihren Cluster auswählen. Wählen Sie eine Knotenressource aus der Liste aus. In der strukturierten Ansicht sehen Sie ebenfalls einen Abschnitt Pods. Dieser Abschnitt zeigt Ihnen alles Pods läuft auf dem Knoten.

Erforderliche Berechtigungen

Um die Registerkarte Ressourcen und den Abschnitt Knoten auf der Registerkarte Compute in der anzuzeigen AWS Management Console, muss der von Ihnen verwendete IAMPrincipal über ein bestimmtes Minimum verfügen IAM und Kubernetes Berechtigungen. Gehen Sie wie folgt vor, um Ihren IAM Prinzipalen die erforderlichen Berechtigungen zuzuweisen.

  1. Stellen Sie sicher, dass die eks:AccessKubernetesApi und andere erforderliche IAM Berechtigungen zum Anzeigen Kubernetes Ressourcen, sind dem IAM Prinzipal zugewiesen, den Sie verwenden. Weitere Informationen zum Bearbeiten von Berechtigungen für einen IAM Prinzipal finden Sie unter Steuern des Zugriffs für Prinzipale im IAM Benutzerhandbuch. Weitere Informationen zum Bearbeiten von Berechtigungen für eine Rolle finden Sie unter Ändern einer Rollenberechtigungsrichtlinie (Konsole) im IAM Benutzerhandbuch.

    Die folgende Beispielrichtlinie enthält die erforderlichen Berechtigungen, die ein Principal einsehen kann Kubernetes Ressourcen für alle Cluster in Ihrem Konto. Ersetzen Sie 111122223333 durch Ihre AWS -Konto-ID.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "eks:ListFargateProfiles", "eks:DescribeNodegroup", "eks:ListNodegroups", "eks:ListUpdates", "eks:AccessKubernetesApi", "eks:ListAddons", "eks:DescribeCluster", "eks:DescribeAddonVersions", "eks:ListClusters", "eks:ListIdentityProviderConfigs", "iam:ListRoles" ], "Resource": "*" }, { "Effect": "Allow", "Action": "ssm:GetParameter", "Resource": "arn:aws:ssm:*:111122223333:parameter/*" } ] }

    Um Knoten in verbundenen Clustern anzuzeigen, sollte die EKSIAMAmazon-Connector-Rolle in der Lage sein, die Identität des Prinzipals im Cluster anzunehmen. Dies ermöglicht es demConnect Amazon EKS Connector einen Kubernetes Cluster mit einer Amazon EKS Management Console, den Principal einem zuzuordnen Kubernetes Benutzer.

  2. Erstellen Sie ein Kubernetes rolebindingoder clusterrolebinding das ist an ein gebunden Kubernetes roleoder clusterrole das über die erforderlichen Berechtigungen verfügt, um das anzusehen Kubernetes Ressourcen schätzen. Für weitere Informationen über Kubernetes Rollen und Rollenbindungen finden Sie unter Verwenden der RBAC Autorisierung im Kubernetes -Dokumentation. Sie können eines der folgenden Manifeste auf Ihren Cluster anwenden, das ein role Und rolebinding oder ein clusterrole Und clusterrolebinding mit den erforderlichen Kubernetes Berechtigungen:

    Anzeigen Kubernetes Ressourcen in allen Namespaces

    Der Gruppenname in der Datei lautet eks-console-dashboard-full-access-group. Wenden Sie das Manifest mit dem folgenden Befehl auf Ihren Cluster an:

    kubectl apply -f https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-full-access.yaml
    Anzeigen Kubernetes Ressourcen in einem bestimmten Namespace

    Der Namespace in dieser Datei ist default. Der Gruppenname in der Datei lautet eks-console-dashboard-restricted-access-group. Wenden Sie das Manifest mit dem folgenden Befehl auf Ihren Cluster an:

    kubectl apply -f https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-restricted-access.yaml

    Wenn Sie das ändern müssen Kubernetes Gruppenname, Namespace, Berechtigungen oder eine andere Konfiguration in der Datei. Laden Sie dann die Datei herunter und bearbeiten Sie sie, bevor Sie sie auf Ihren Cluster anwenden:

    1. Laden Sie die Datei mit einem der folgenden Befehle herunter.

      curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-full-access.yaml
      curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-restricted-access.yaml
    2. Bearbeiten Sie die Datei nach Bedarf.

    3. Wenden Sie das Manifest mit einem der folgenden Befehle auf Ihren Cluster an:

      kubectl apply -f eks-console-full-access.yaml
      kubectl apply -f eks-console-restricted-access.yaml
  3. Ordnen Sie den IAMPrincipal dem zu Kubernetes Benutzer oder Gruppe in der aws-authConfigMap. Sie können ein Tool wie eksctl verwenden, um die ConfigMap zu aktualisieren, oder Sie können sie durch manuelle Bearbeitung aktualisieren.

    Wichtig

    Wir empfehlen die Verwendung von eksctl oder einem anderen Tool, um die ConfigMap zu bearbeiten. Informationen zu anderen Tools, die Sie verwenden können, finden Sie unter Verwenden von Tools, um Änderungen an den vorzunehmen aws-authConfigMap in den EKS Amazon-Best-Practices-Handbüchern. Ist aws-auth ConfigMap falsch formatiert, können Sie den Zugriff auf Ihren Cluster verlieren.

    eksctl
    Voraussetzung

    Version 0.191.0 oder höher des eksctl-Befehlszeilen-Tools, das auf Ihrem Computer oder in der AWS CloudShell installiert ist. Informationen zum Installieren und Aktualisieren von eksctl finden Sie in der Dokumentation zu eksctl unter Installation.

    1. Zeigen Sie die aktuellen Mappings in der ConfigMap an. Ersetzen Sie my-cluster mit dem Namen Ihres Clusters. region-codeErsetzen Sie es durch AWS-Region das, in dem sich Ihr Cluster befindet.

      eksctl get iamidentitymapping --cluster my-cluster --region=region-code

      Eine Beispielausgabe sieht wie folgt aus.

      ARN USERNAME GROUPS ACCOUNT arn:aws:iam::111122223333:role/eksctl-my-cluster-my-nodegroup-NodeInstanceRole-1XLS7754U3ZPA system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes
    2. Fügen Sie ein Mapping für eine Rolle hinzu. In diesem Beispiel wird davon ausgegangen, dass Sie die IAM Berechtigungen im ersten Schritt einer Rolle mit dem Namen zugewiesen habenmy-console-viewer-role. Ersetzen Sie 111122223333 durch Ihre Konto-ID.

      eksctl create iamidentitymapping \ --cluster my-cluster \ --region=region-code \ --arn arn:aws:iam::111122223333:role/my-console-viewer-role \ --group eks-console-dashboard-full-access-group \ --no-duplicate-arns
      Wichtig

      Die Rolle ARN darf keinen Pfad wie enthaltenrole/my-team/developers/my-role. Das Format von ARN muss seinarn:aws:iam::111122223333:role/my-role. In diesem Beispiel muss my-team/developers/ entfernt werden.

      Eine Beispielausgabe sieht wie folgt aus.

      [...] 2022-05-09 14:51:20 [ℹ] adding identity "arn:aws:iam::111122223333:role/my-console-viewer-role" to auth ConfigMap
    3. Fügen Sie ein Mapping für einen Benutzer hinzu. IAMEs wird empfohlen, Rollen statt Benutzern Berechtigungen zu erteilen. In diesem Beispiel wird davon ausgegangen, dass Sie die IAM Berechtigungen im ersten Schritt einem Benutzer mit dem Namen zugewiesen habenmy-user. Ersetzen Sie 111122223333 durch Ihre Konto-ID.

      eksctl create iamidentitymapping \ --cluster my-cluster \ --region=region-code \ --arn arn:aws:iam::111122223333:user/my-user \ --group eks-console-dashboard-restricted-access-group \ --no-duplicate-arns

      Eine Beispielausgabe sieht wie folgt aus.

      [...] 2022-05-09 14:53:48 [ℹ] adding identity "arn:aws:iam::111122223333:user/my-user" to auth ConfigMap
    4. Zeigen Sie wieder die Mappings in der ConfigMap an.

      eksctl get iamidentitymapping --cluster my-cluster --region=region-code

      Eine Beispielausgabe sieht wie folgt aus.

      ARN USERNAME GROUPS ACCOUNT arn:aws:iam::111122223333:role/eksctl-my-cluster-my-nodegroup-NodeInstanceRole-1XLS7754U3ZPA system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes arn:aws:iam::111122223333:role/my-console-viewer-role eks-console-dashboard-full-access-group arn:aws:iam::111122223333:user/my-user eks-console-dashboard-restricted-access-group
    Edit ConfigMap manually

    Weitere Informationen zum Hinzufügen von Benutzern oder Rollen zur aws-auth ConfigMap finden Sie unter Fügen Sie Ihrem EKS Amazon-Cluster IAM Principals hinzu.

    1. Öffnen Sie die aws-auth ConfigMap zum Bearbeiten.

      kubectl edit -n kube-system configmap/aws-auth
    2. Fügen Sie die Mappings zur aws-auth ConfigMap hinzu, aber ersetzen Sie keine der vorhandenen Mappings. Im folgenden Beispiel werden Zuordnungen zwischen IAMPrinzipalen mit im ersten Schritt hinzugefügten Berechtigungen und den Kubernetes Gruppen, die im vorherigen Schritt erstellt wurden:

      • Die my-console-viewer-role-Rolle und eks-console-dashboard-full-access-group.

      • Der my-user-Benutzer und eks-console-dashboard-restricted-access-group.

      In diesen Beispielen wird davon ausgegangen, dass Sie die IAM Berechtigungen im ersten Schritt einer Rolle mit dem Namen my-console-viewer-role und einem Benutzer mit dem Namen zugewiesen habenmy-user. 111122223333Ersetzen Sie es durch Ihre AWS Konto-ID.

      apiVersion: v1 data: mapRoles: | - groups: - eks-console-dashboard-full-access-group rolearn: arn:aws:iam::111122223333:role/my-console-viewer-role username: my-console-viewer-role mapUsers: | - groups: - eks-console-dashboard-restricted-access-group userarn: arn:aws:iam::111122223333:user/my-user username: my-user
      Wichtig

      Die Rolle ARN darf keinen Pfad wie enthaltenrole/my-team/developers/my-console-viewer-role. Das Format von ARN muss seinarn:aws:iam::111122223333:role/my-console-viewer-role. In diesem Beispiel muss my-team/developers/ entfernt werden.

    3. Speichern Sie die Datei und beenden Sie den Text-Editor.