Metrics查看Kubernetes(k8s)集群中Pod的资源使用情况
时间:2025-3-14 15:47 作者:Anglei 分类: 虚拟化
Kubernetes作为容器编排的利器,其集群中Pod的资源使用情况直接关系到应用的性能与稳定性。本文将介绍如何查看Kubernetes集群中Pod的资源使用详情,帮助运维人员优化资源配置,确保应用高效运行。
一、查看Pod的CPU和内存使用情况
kubectl top pod <pod_name> --namespace=<namespace>
二、metrics-server安装以及故障解决
出现“Metrics API not available”错误通常意味着Kubernetes集群的Metrics Server没有正确安装或配置。Metrics Server是用于收集资源使用数据的组件,kubectl top命令依赖于它来获取实时的CPU和内存使用情况。
1. 检查metrics-server是否安装
kubectl get pods -n kube-system | grep metrics-server
如果没有输出,说明Metrics Server尚未安装。
2.使用kubectl安装Metrics Server
您可以使用以下命令来安装Metrics Server:
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.6.3/components.yaml
3.验证是否已安装
kubectl get pods -n kube-system | grep metrics-server
输出:
metrics-server-686658d8b7-kclv8 1/1 Running 0 5m
4.查询日志
kubectl logs <metrics-server-pod-name> -n kube-system
日志如下:
日志有错误提示:
E0314 05:50:09.628944 1 scraper.go:140] "Failed to scrape node"
err="Get \"https://192.168.1.118:10250/metrics/resource\": x509:
cannot validate certificate for 192.168.1.118
because it doesn't contain any IP SANs" node="node2"E0314 05:50:09.635009
5.禁用证书验证(不推荐):
作为临时解决方案,可以在Metrics Server的启动参数中禁用TLS证书验证。这虽然不推荐,但可以用于快速测试。编辑Metrics Server的Deployment配置:
kubectl edit deployment metrics-server -n kube-system
在容器的启动命令中添加--kubelet-insecure-tls参数:
保存退出即可,pod自动更新。

推荐阅读:
![]() 路过(0) |
![]() 雷人(0) |
![]() 握手(0) |
![]() 鲜花(0) |
![]() 鸡蛋(0) |