使用 KubernetesMetrics Server 查看资源使用情况 - Amazon EKS

帮助改进此页面

想为本用户指南做出贡献? 滚动到页面底部,然后选择在 GitHub 上编辑此页面。您的贡献有助于我们的用户指南为每个人提供更充分的参考。

使用 KubernetesMetrics Server 查看资源使用情况

Kubernetes Metrics Server 是集群中资源使用数据的聚合器,它在 Amazon EKS 集群中默认不部署。有关更多信息,请参阅 GitHub 上的 Kubernetes Metrics Server。Metrics Server 通常由其他 Kubernetes 附加组件使用,例如 使用 Horizontal Pod Autoscaler 扩展容器组部署Kubernetes 控制面板。有关详细信息,请参阅 Kubernetes 文档中的资源指标管道。本主题介绍了如何在您的 Amazon EKS 集群上部署 Kubernetes Metrics Server。

重要

这些指标是用于时间点分析,不是历史分析的准确来源。它们不能用作监控解决方案或用于其他非自动扩缩目的。有关监控工具的信息,请参阅 监控集群性能并查看日志

部署 Metrics Server
  1. 使用以下命令部署 Metrics Server:

    kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml

    如果您使用的是 Fargate,则需要更改此文件。在默认配置中,指标服务器使用端口 10250。此端口在 Fargate 上保留。将 components.yaml 中对端口 10250 的引用替换为其他端口,例如 10251。

  2. 使用以下命令验证 metrics-server 部署是否运行所需数量的 Pods。

    kubectl get deployment metrics-server -n kube-system

    示例输出如下。

    NAME READY UP-TO-DATE AVAILABLE AGE metrics-server 1/1 1 1 6m
  3. 通过显示节点的资源(CPU/内存)使用情况来测试 Metrics Server 是否正常工作。

    kubectl top nodes
  4. 如果您收到错误消息 Error from server (Forbidden),则需要更新 Kubernetes RBAC 配置。您的 Kubernetes RBAC 身份需要具有足够的权限才能读取集群指标。在 GitHub 上查看读取指标所需的最低 Kubernetes API 权限。了解如何向 AWS IAM 身份(例如角色)授予对 Kubernetes API 的访问权限