当在 k3s 环境中运行 kubectl top pods 命令时,如果出现 “ServiceUnavailable” 错误,通常表示度量服务器(metrics server)存在问题。度量服务器负责收集和提供集群中 Pod 和节点的资源使用情况指标。
为了解决此问题,您可以尝试以下步骤:
- 验证度量服务器部署:确保度量服务器部署在 k3s 集群中正常运行。您可以通过运行以下命令检查度量服务器部署的状态:
kubectl get deployment metrics-server -n kube-system
如果部署未运行或显示任何错误,您可能需要进行故障排除或重新安装度量服务器。
- 重启度量服务器:尝试重启度量服务器部署,以查看是否解决了问题。您可以使用以下命令重启度量服务器:
kubectl rollout restart deployment metrics-server -n kube-system
- 然后等待1分钟再运行 kubectl top pods,应该可以看到问题已经被解决
结论
遇到 k3s 的度量服务故障,我们可以通过重启该服务来解决这个问题。