metrics-server是离线监控数据组件,提供查看集群离线监控数据功能。本文介绍使用metrics-server组件时遇到的常见问题。
kubectl top pod/node全部无数据
请按照以下方式进行预检查。
按上述说明检查后,没有发现问题,请按照以下工单模板提交工单。
工单模板
- API Service是否正常?
是
- metrics-server 443与8082端口是否可达?
是
- 提供集群ID。
kubectl top pod/node部分无数据
请按照以下方式进行预检查。
- 检查是特定的Node上所有Pod无数据,还是特定的Pod无数据。如果是特定的Node上所有Pod无数据,请检查节点是否存在时区漂移,可以通过NTP服务器的date命令进行时区校验。
- 检查metrics-server Pod到特定的Node的10255端口的网络连通性。
按上述说明检查后,没有发现问题。请按照以下工单模板提交工单。
工单模板
- 单个Node上的Pod是否全部无数据?
是
- 节点时区是否有漂移?
无
- metrics-server到指定节点的连通性是否可达?
是
HPA无法获取metrics数据
请按照以下方式进行预检查。
检查对应的Pod执行kubectl top pod pod-id
的结果。如果数据异常,请参考上述kubectl top pod/node部分无数据和kubectl top pod/node全部无数据的检查方法进行检查。
按上述说明检查后,没有发现问题。请按照以下工单模板提交工单。
工单模板
- 监控数据是否有异常?
无
- 执行
kubectl describe hpa hpa-name
,提交元数据信息。
滚动发布时HPA额外弹出多余的Pod
请按照以下方式进行预检查。
检查metrics-server是否升级到了最新的版本。如果版本没有问题,在kube-system命名空间下的metrics-server配置启动参数。
--metric-resolution=15s
--enable-hpa-rolling-update-skipped=true
按上述说明检查后,没有发现问题。请按照以下工单模板提交工单。
工单模板
- 检查metrics-server的版本是否为最新?
是
- 检查配置参数是否已经增加防误弹能力?
是
- 执行
kubectl describe hpa hpa-name
,提交HPA的描述。