首页/云/Kubernetes 速查/metrics-server 部署与自检
集群运维与排障54 条

metrics-server 部署与自检

资源指标由 metrics-server 提供:部署后用 APIService 与 top 自检;自签证书环境常需调整 kubelet 连接参数。

Kubernetes 速查云更新于 2026-10-13

资源指标从哪来

集群不原生保存资源用量数据,节点上的组件只提供实时采样。metrics-server 周期抓取这些采样并通过聚合接口暴露给集群,供命令行与自动扩缩容使用。它不存储历史数据,也不替代监控系统,作用是把实时用量变成集群内可查询的接口。

基本信息

适用平台Kubernetes 1.20+,以部署清单方式安装
部署位置系统命名空间,通常单副本运行
数据来源各节点的实时采样接口
暴露方式注册为聚合接口供命令行查询
数据特点只有近期采样,没有长期历史

典型使用场景

  • 查看节点与 Pod 的实时资源用量
  • 为自动扩缩容提供用量数据来源
  • 容量规划时快速了解当前水位
  • 排查资源相关问题时确认实际用量
  • 新集群搭建时的基础组件安装

部署与自检

部署与自检
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
kubectl -n kube-system get pods -l k8s-app=metrics-server     # 副本状态
kubectl get apiservice v1beta1.metrics.k8s.io -o jsonpath='{.status.conditions}'   # 聚合接口状态
kubectl -n kube-system logs -l k8s-app=metrics-server --tail=50   # 采集失败原因
kubectl top nodes                                            # 实际查询

自检顺序

检查项正常表现异常处理
部署副本就绪且重启次数稳定查看日志中的采集错误
聚合接口状态为可用接口不可用时命令行会直接报错
节点采样能列出全部节点用量部分节点缺失说明该节点侧不可访问
查询结果数据随时间刷新长期不变说明采集已停止
自签证书环境常见的两个参数:跳过节点证书校验(仅适合测试)与优先使用内网地址连接。生产环境应配置正确的证书链,而不是长期跳过校验。
安装完成后,用命令行查询节点用量比查看 Pod 状态更可靠:聚合接口注册失败时,组件进程仍在运行、Pod 依然显示就绪,但查询会直接返回错误。
跳过证书校验只适合实验环境。生产环境这样做会削弱节点身份验证,中间人可以在集群内部伪装成节点提供伪造用量。

易错点

  • 内网环境直接用默认清单:节点地址与证书校验不匹配,采集失败但 Pod 显示就绪
  • 把实时指标当成历史监控:数据只有近期采样,无法用于趋势分析
  • 聚合接口未就绪就依赖自动扩缩容:扩缩容拿不到数据,行为与预期不符
  • 给所有环境都跳过证书校验:生产环境削弱节点身份验证,风险长期存在

数据来源与参考

  • metrics-server 官方仓库 · 部署与参数说明
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌