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.
Kubernetes-Ressourcen in AWS-Managementkonsole anzeigen
Mit der AWS-Managementkonsole können Sie die Kubernetes-Ressourcen anzeigen, die in Ihrem Cluster bereitgestellt sind. Sie können Kubernetes-Ressourcen nicht mit der AWS CLI oder eksctl
Anmerkung
Um die Registerkarte Ressourcen und den Abschnitt Knoten auf der Registerkarte Compute in der AWS-Managementkonsole anzeigen zu können, muss der von Ihnen verwendete IAM-Prinzipal über bestimmte IAM- und spezifische Kubernetes-Berechtigungen verfügen. Weitere Informationen finden Sie unter Erforderliche Berechtigungen.
-
Öffnen Sie die Amazon-EKS-Konsole
. -
Wählen Sie in der Liste Cluster den Cluster aus, der die Kubernetes-Ressourcen enthält, die Sie anzeigen möchten.
-
Wählen Sie die Registerkarte für Resources (Ressourcen).
-
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.
-
Wählen Sie einen Ressourcentyp aus, z. B. Deployments (Bereitstellungen) in der Gruppe Workloads. Sie sehen eine Beschreibung des Ressourcentyps, einen Link zur Kubernetes-Dokumentation für weitere Informationen über den Ressourcentyp und eine Liste der Ressourcen dieses Typs, die in Ihrem Cluster bereitgestellt werden. Wenn die Liste leer ist, werden keine Ressourcen dieses Typs in Ihrem Cluster bereitgestellt.
-
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 sind die Pods aufgeführt, die von der Workload verwaltet werden. Sie können jeden aufgelisteten Pod auswählen, um Informationen zu dem Pod anzuzeigen. Nicht für alle Ressourcentypen werden Informationen in der strukturierten Ansicht angezeigt. Wenn Sie die Ansicht Raw in der oberen rechten Ecke der Seite für die Ressource auswählen, sehen Sie die vollständige JSON-Antwort von der Kubernetes-API fü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. Die Knoten können von jedem Amazon-EKS-Knoten-Typ sein. 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 alle in dem Knoten ausgeführten Pods.
-
Erforderliche Berechtigungen
Um die Registerkarte Ressourcen und den Abschnitt Knoten auf der Registerkarte Compute in der AWS-Managementkonsole anzeigen zu können, muss der von Ihnen verwendete IAM-Prinzipal über bestimmte Mindestberechtigungen für IAM und Kubernetes verfügen. Führen Sie die folgenden Schritte aus, um Ihren IAM-Prinzipalen die erforderlichen Berechtigungen zuzuweisen.
-
Stellen Sie sicher, dass
eks:AccessKubernetesApiund andere erforderliche IAM-Berechtigungen zum Anzeigen von Kubernetes-Ressourcen dem von Ihnen verwendeten IAM-Prinzipal zugewiesen sind. Weitere Informationen zum Bearbeiten von Berechtigungen für einen IAM-Prinzipal finden Sie unter Zugriff für Prinzipale steuern und im IAM-Benutzerhandbuch. Weitere Informationen zum Bearbeiten von Rollenberechtigungen finden Sie unter Modifying a role permissions policy (console) (Ändern einer Rollenberechtigungsrichtlinie (Konsole)) im IAM-Benutzerhandbuch.Die folgende Beispielrichtlinie enthält die erforderlichen Berechtigungen für einen Prinzipal zum Anzeigen von Kubernetes-Ressourcen für alle Cluster in Ihrem Konto. Ersetzen Sie
111122223333durch 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 IAM-Rolle des Amazon-EKS-Connectors in der Lage sein, den Prinzipal im Cluster anzunehmen. Dadurch kann Amazon EKS Connector den Prinzipal einem Kubernetes-Benutzer zuordnen.
-
Erstellen Sie ein Kubernetes
rolebindingoderclusterrolebinding, das an ein Kubernetesroleoderclusterrolegebunden ist, das über die erforderlichen Berechtigungen zum Anzeigen der Kubernetes-Ressourcen verfügt. Informationen zu Rollen und Rollenbindungen in Kubernetes finden Sie unter Using RBAC Authorization(Verwenden der RBAC-Autorisierung) in der Kubernetes-Dokumentation. Sie können eines der folgenden Manifeste auf Ihren Cluster anwenden, die eine roleund einerolebindingoder eineclusterroleund eineclusterrolebindingmit den erforderlichen Kubernetes-Berechtigungen erstellen:- Kubernetes-Ressourcen in allen Namespaces anzeigen
-
-
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
-
- Kubernetes-Ressourcen in einem bestimmten Namespace anzeigen
-
-
Der Namespace in dieser Datei ist
default. Der Gruppenname in der Datei lauteteks-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.yamlWenn Sie den Namen, den Namespace, die Berechtigungen oder eine andere Konfiguration in der Datei der Kubernetes-Gruppe ändern müssen, laden Sie die Datei herunter und bearbeiten Sie sie, bevor Sie sie auf Ihren Cluster anwenden:
-
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.yamlcurl -O https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-restricted-access.yaml -
Bearbeiten Sie die Datei nach Bedarf.
-
Wenden Sie das Manifest mit einem der folgenden Befehle auf Ihren Cluster an:
kubectl apply -f eks-console-full-access.yamlkubectl apply -f eks-console-restricted-access.yaml
-
-
-
Ordnen Sie den IAM-Prinzipal dem Kubernetes-Benutzer oder der Kubernetes-Gruppe in
aws-authConfigMapzu. Sie können ein Tool wieeksctlverwenden, um dieConfigMapzu aktualisieren, oder Sie können sie durch manuelle Bearbeitung aktualisieren.Wichtig
Wir empfehlen die Verwendung von
eksctloder einem anderen Tool, um dieConfigMapzu bearbeiten. Informationen zu weiteren Tools, die Sie verwenden können, finden Sie unter Verwenden von Tools zum Vornehmen von Änderungen an aws-authConfigMapin den Anleitungen zu bewährten Verfahren für Amazon EKS. Ist aws-authConfigMapfalsch formatiert, können Sie den Zugriff auf Ihren Cluster verlieren.
Bearbeiten mit eksctl
-
Sie benötigen Version
0.214.0oder höher deseksctl-Befehlszeilen-Tools, das auf Ihrem Computer oder in der AWS CloudShell installiert ist. Informationen zum Installieren und Aktualisieren voneksctlfinden Sie in der Dokumentation zueksctlunter Installation. -
Zeigen Sie die aktuellen Mappings in der
ConfigMapan. Ersetzen Siemy-clusterdurch den Namen Ihres Clusters. Ersetzen Sie denregion-codedurch die AWS-Region, in der sich Ihr Cluster befindet.eksctl get iamidentitymapping --cluster my-cluster --region=region-codeEine 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 -
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 namens
my-console-viewer-rolezuweisen. Ersetzen Sie111122223333durch 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-arnsWichtig
Der Rollen-ARN darf keinen Pfad wie
role/my-team/developers/my-roleenthalten. Das Format des ARN mussarn:aws:iam::sein. In diesem Beispiel muss111122223333:role/my-rolemy-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 -
Fügen Sie ein Mapping für einen Benutzer hinzu. Bewährte Methoden für IAM empfehlen, dass Sie Rollen statt Benutzern Berechtigungen gewähren. In diesem Beispiel wird davon ausgegangen, dass Sie die IAM-Berechtigungen im ersten Schritt einem Benutzer namens
my-userzuweisen. Ersetzen Sie111122223333durch 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-arnsEine Beispielausgabe sieht wie folgt aus.
[...] 2022-05-09 14:53:48 [ℹ] adding identity "arn:aws:iam::111122223333:user/my-user" to auth ConfigMap -
Zeigen Sie wieder die Mappings in der
ConfigMapan.eksctl get iamidentitymapping --cluster my-cluster --region=region-codeEine 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
ConfigMap manuell bearbeiten
Weitere Informationen zum Hinzufügen von Benutzern oder Rollen zur aws-auth ConfigMap finden Sie unter Hinzufügen von IAM-Prinzipal zu Ihrem Amazon EKS-Cluster.
-
Öffnen Sie die
aws-authConfigMapzum Bearbeiten.kubectl edit -n kube-system configmap/aws-auth -
Fügen Sie die Zuordnungen zur
aws-auth-ConfigMaphinzu, ersetzen Sie jedoch keine der vorhandenen Zuordnungen. Im folgenden Beispiel werden Zuordnungen zwischen IAM-Prinzipalen mit Berechtigungen hinzugefügt, die im ersten Schritt hinzugefügt wurden, sowie die im vorherigen Schritt erstellten Kubernetes-Gruppen:-
Die Rolle
my-console-viewer-roleund dieeks-console-dashboard-full-access-group. -
Der Benutzer
my-userund dieeks-console-dashboard-restricted-access-group.In diesen Beispielen wird davon ausgegangen, dass Sie die IAM-Berechtigungen im ersten Schritt einer Rolle namens
my-console-viewer-roleund einem Benutzer namensmy-userzuweisen. Ersetzen Sie111122223333durch 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-userWichtig
Der Rollen-ARN darf keinen Pfad wie
role/my-team/developers/my-console-viewer-roleenthalten. Das Format des ARN mussarn:aws:iam::sein. In diesem Beispiel muss111122223333:role/my-console-viewer-rolemy-team/developers/entfernt werden.
-
-
Speichern Sie die Datei und beenden Sie den Text-Editor.