查看节点
Amazon EKS 控制台显示集群所有节点的信息。这包括 Amazon EKS 托管节点、自行管理节点、连接的节点和 Fargate。节点表示从 Kubernetes API 的角度为您的集群预置的计算资源。有关更多信息,请参阅 Kubernetes 文档中的节点
先决条件
您登录 Amazon Web Services Management Console 所用的 IAM 用户或 IAM 角色必须满足以下要求。
-
拥有
eks:AccessKubernetesApi
和其他必要的 IAM 权限来查看连接到它的节点。有关 IAM 策略示例,请参阅 在 Amazon Web Services Management Console 中查看所有集群的节点和工作负载。 -
对于已连接集群中的节点,Amazon EKS Connector Service 账户能够模拟集群中的 IAM 或角色。这让 eks-connector 将 IAM 用户或角色映射到 Kubernetes 用户。
-
映射到
aws-auth
configmap
中的 Kubernetes 用户或组。有关更多信息,请参阅 让 IAM 用户和角色有权访问您的集群。 -
IAM 用户或角色在 configmap 中映射到的 Kubernetes 用户或组必须绑定到 Kubernetes
role
或clusterrole
。此外,此role
或clusterrole
必须具有查看要查看的命名空间中的资源的权限。有关更多信息,请参阅 Kubernetes 文档中的使用 RBAC 授权。您可以下载以下示例清单,这些清单创建 clusterrole
和clusterrolebinding
或role
和rolebinding
:-
查看所有命名空间中的 Kubernetes 资源 - 文件中的组名称为
eks-console-dashboard-full-access-group
。这是aws-auth
configmap 中您的 IAM 用户或角色必须映射到的组。如果需要,可以更改组的名称,然后将组应用到集群。然后,您可以将 IAM 用户或组映射到 configmap 中的组。要下载文件,请选择集群所在 Amazon Web Services 区域 的相应链接。 -
查看特定命名空间中的 Kubernetes 资源 - 此文件中的命名空间为
default
。因此,如果要指定其他命名空间,请先编辑该文件,然后再将其应用于集群。文件中的组名为eks-console-dashboard-restricted-access-group
。这是aws-auth
configmap 中您的 IAM 用户或角色必须映射到的组。如果需要,可以更改组的名称,然后将组应用到集群。然后,将您的 IAM 用户或角色映射到 configmap 中的组。要下载文件,请选择集群所在 Amazon Web Services 区域 的相应链接。
-
使用 Amazon Web Services Management Console 查看节点
从以下位置打开 Amazon EKS 控制台:https://console.aws.amazon.com/eks/home#/clusters
。 -
在左侧导航窗格中,选择 Amazon EKS Clusters(集群),然后在 Clusters(集群)列表中选择要查看其计算资源的集群。
-
在 Overview(概览)选项卡上,您可以看到您的集群的所有计算 Nodes(节点),以及节点的状态。
重要 如果您在概览选项卡上看不到任何节点,或者看到错误消息您的当前用户或角色无权访问此 EKS 集群上的 Kubernetes 对象,请参阅本主题的先决条件。如果您不解决这一问题,仍可以在 Configuration(配置)选项卡上查看和管理 Amazon EKS 集群。
注意 在 Fargate 上运行的每个 Pod 都注册为集群中的独立 Kubernetes 节点。这是因为 Fargate 在隔离的计算环境中运行每个 Pod,并独立连接到集群控制层面。有关更多信息,请参阅 Amazon Fargate。
-
在节点列表中,您将看到集群的所有托管节点、自行管理的节点、连接的节点和 Fargate 节点的列表。选择其中一个节点的链接将会显示有关该节点的以下信息:
-
托管和自行管理节点的 Amazon EC2 Instance type(实例类型)、Kernel version(内核版本)、Kubelet version(Kubelet 版本)、Container runtime(容器运行时)、OS(操作系统)和 OS image(操作系统映像)。已连接的集群不显示 Instance type(实例类型)。
-
指向该节点的 Amazon EC2 控制台和 Amazon EKS 托管节点组(如果适用)的深度链接。
-
资源分配,其中显示节点的基准容量和可分配容量。
-
条件描述节点的当前运行状态。这是对节点上的问题进行故障排除的有用信息。
在每个节点上本地运行的 Kubernetes 代理
kubelet
会将条件报告给 Kubernetes 控制层面。有关更多信息,请参阅 Kubernetes 文档中的 kubelet。节点上的条件始终作为节点详细信息的一部分报告,每个条件的状态以及它的消息指示节点在该状态下的运行状况。将报告节点的以下常见条件: -
Ready – 如果节点正常运行并可以接受 Pod,则此条件为 TRUE。如果节点未就绪并且无法接受 Pod,则此条件为 FALLSE。UNKNOWN 表示 Kubernetes 控制层面最近没有从该节点接收到心跳信号。对于 Amazon EKS 集群,心跳信号超时周期设置为 Kubernetes 默认值 40 秒。
-
Memory pressure – 正常操作下此条件为 FALSE,如果节点内存不足则为 TRUE。
-
Disk pressure – 正常操作下此条件为 FALSE,如果节点磁盘容量不足,则为 TRUE。
-
PID pressure – 正常操作下此条件为 FALSE,如果节点上运行的进程过多则为 TRUE。在节点上,每个容器作为一个进程运行,具有唯一的进程 ID 或 PID。
-
NetworkUnavailable – 在正常操作下,此条件为 FALSE 或不存在。如果为 TRUE,则说明节点的网络未正确配置。
-
-
分配给节点的 Kubernetes 标签和注释。创建节点时,可能由您、Kubernetes 或 Amazon EKS API 分配了这些资源。您的工作负载可以使用这些值来调度 Pod。
-