Kubernetes集群安装kube-prometheus后无法执行kubectl top node

Posted saynaihe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kubernetes集群安装kube-prometheus后无法执行kubectl top node相关的知识,希望对你有一定的参考价值。

背景:

Kubernetes 1.20.5 安装Prometheus-Oprator嗯,我的集群是1.21.3了虽然是…
执行kubectl top nodes如下:

解决问题过程:

网上一堆各种说法的,但是没有一个是适用于我的。把monitoring下所有的pod的日志看了一个遍,然后在prometheus-adapter中发现日志如下:

嗯想起来了我的集群都不是默认的cluster.local!如果有跟我一样自定义命名集群的需要注意修改这个这个配置!
然后找一下配置文件中哪个文件有此项配置:
比较笨的方式:

grep -A2 -B2  cluster.local 


一个一个前缀的排除。最后确认是prometheus-adapter-deployment.yaml配置文件,修改一下:

kubectl apply -f prometheus-adapter-deployment.yaml
kubectl get pods -n monitoring

等待pod更新重新启动验证:

[root@k8s-master-01 manifests]# kubectl top nodes
W0731 11:24:57.758043 1760118 top_node.go:119] Using json format to get metrics. Next release will switch to protocol-buffers, switch early by passing --use-protocol-buffers flag
NAME            CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%   
k8s-master-01   231m         5%     2497Mi          31%       
k8s-master-02   227m         5%     1989Mi          25%       
k8s-master-03   235m         5%     2071Mi          26%       
k8s-node-01     490m         3%     4023Mi          12%       
k8s-node-02     221m         1%     4854Mi          15%       
k8s-node-03     616m         3%     10671Mi         33%       
k8s-node-04     644m         4%     6238Mi          19%       
k8s-node-05     620m         3%     9058Mi          28%       
k8s-node-06     196m         4%     5436Mi          69

尽信书则不如无书。还是多看一下个人环境的日志。然后标注一下个人集群的修改地方。更快的定位问题,并解决问题!

以上是关于Kubernetes集群安装kube-prometheus后无法执行kubectl top node的主要内容,如果未能解决你的问题,请参考以下文章

快速搭建kubernetes高可用集群(3master+3worker+负载均衡)

kubernetes集群安装helm教程

Kubernetes 学习总结(27)—— Kubernetes 安装 Redis 集群的两个方案

Kubernetes 学习总结(27)—— Kubernetes 安装 Redis 集群的两个方案

Docker&Kubernetes ❀ Kubernetes集群安装部署过程与常见的错误解决方法

Docker&Kubernetes ❀ Kubernetes集群安装部署过程与常见的错误解决方法