k8s中top指令使用前提:正确安装metrics-server

参考引用项目:https://www.cnblogs.com/lfl17718347843/p/14283796.html

Kubernetes Metrics Server 是 Cluster 的核心监控数据的聚合器,kubeadm 默认是不部署的。

确认metrics-server能否被使用的三个前提(验证以及修改方法https://cnblogs.com/lfl17718347843/p/14283796.html):

复制代码
1)API Server 启用 Aggregator Routing 支持
2)API Server 能访问 Metrics Server Pod IP。否则 API Server 无法访问 Metrics Server
3)启用API Aggregator,API Aggregation 允许在不修改 Kubernetes 核心代码的同时扩展 Kubernetes API,即:将第三方服务注册到 Kubernetes API 中,这样就可以通过 Kubernetes API 来访问第三方服务了,例如:Metrics Server API。注:另外一种扩展 Kubernetes API 的方法是使用 CRD(Custom Resource Definition,自定义资源定义)。

安装地址:

复制代码
wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.4.1/components.yaml

修改components.yaml文件,注意修改镜像位置,添加tls参数

安装

复制代码
kubectl apply -f components.yaml

查看metrics-server服务状态

复制代码
[root@k8s-master ~]# kubectl get pod -n kube-system | grep metrics-server
metrics-server-7f4f6575f5-m885f            1/1     Running   0          38s

检查 API Server 是否可以连通 Metrics Server

复制代码
[root@k8s-master ~]#  kubectl describe svc metrics-server -n kube-system
Name:              metrics-server
Namespace:         kube-system
Labels:            k8s-app=metrics-server
Annotations:       <none>
Selector:          k8s-app=metrics-server
Type:              ClusterIP
IP:                10.96.94.79
Port:              https  443/TCP
TargetPort:        https/TCP
Endpoints:         10.244.169.135:4443
Session Affinity:  None
Events:            <none>
[root@k8s-master ~]# ping 10.244.169.135
PING 10.244.169.135 (10.244.169.135) 56(84) bytes of data.
64 bytes from 10.244.169.135: icmp_seq=1 ttl=63 time=0.252 ms
64 bytes from 10.244.169.135: icmp_seq=2 ttl=63 time=0.233 ms
^C
--- 10.244.169.135 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.233/0.242/0.252/0.018 ms

执行以下命令,检查节点占用性能情况。

复制代码
[root@k8s-master ~]# kubectl top nodes
NAME         CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%   
k8s-master   127m         6%     2263Mi          64%       
k8s-node1    91m          4%     1955Mi          55%       
k8s-node2    93m          4%     1821Mi          51%       

查看pod上的占用性能

复制代码
[root@k8s-master ~]# kubectl top po
NAME                         CPU(cores)   MEMORY(bytes)   
front-end-6b7b5c4bfc-d9wnb   0m           1Mi             
front-end-6b7b5c4bfc-fck82   0m           1Mi             
legacy-app                   1m           13Mi            
nginx-kusc00401              0m           2Mi       
相关推荐
engchina6 小时前
WSL Ubuntu で Kubernetes v1.34.2 + Docker 環境を構築する
ubuntu·docker·kubernetes
Gold Steps.9 小时前
OpenEBS — 云原生 CNS 高性能存储
云原生·kubernetes·存储
大雨淅淅10 小时前
Eureka从入门到精通:开启微服务架构的钥匙
微服务·云原生·eureka·架构
oMcLin10 小时前
2025年必备的Docker命令指南与实战示例
docker·容器·eureka
sun cat10 小时前
Docker详细介绍(6)
docker·容器·docker-compose
AI架构全栈开发实战笔记10 小时前
Eureka 对大数据领域服务依赖关系的梳理
大数据·ai·云原生·eureka
广州中轴线16 小时前
OpenStack on Kubernetes 生产部署实战(十三)
容器·kubernetes·openstack
晚霞的不甘17 小时前
Flutter for OpenHarmony天气卡片应用:用枚举与动画打造沉浸式多城市天气浏览体验
前端·flutter·云原生·前端框架
Tadas-Gao17 小时前
TCP粘包现象的深度解析:从协议本质到工程实践
网络·网络协议·云原生·架构·tcp
礼拜天没时间.18 小时前
深入Docker架构——C/S模式解析
linux·docker·容器·架构·centos