«

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自动更新。

瞧,现在可以了

本文完结,相关标签: 监控 k8s metrics

 版权所有:Anglei
 文章标题:Metrics查看Kubernetes(k8s)集群中Pod的资源使用情况
 除非注明,本站文章如未特殊说明均为 MAXADA社区知识库 原创,且版权所有,请勿用于任何商业用途。

推荐阅读:

看完后感想如何?

路过(0)

雷人(0)

握手(0)

鲜花(0)

鸡蛋(0)
分享到: