K8S 如何使用 kubectl top 查看 Pod 资源使用情况?

作者: 王炳明 分类: Kubernetes 发布时间: 2022-02-11 20:59 热度:4,893

1. 部署 metrics-server

下载文件

wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.5.2/components.yaml

然后修改两个地方:

  1. 镜像地址改为国内的代理镜像仓库:image: registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server:v0.5.2
  2. spec.template.containers.args字段中加上–kubelet-insecure-tls选项,表示不验证客户端证书;

然后直接安装即可

kubectl apply -f components.yaml

完成后,若如果两条命令都正常,说明部署完成

[root@master01 ~]# kubectl api-versions|grep metrics
metrics.k8s.io/v1beta1
[root@master01 ~]# 
[root@master01 ~]# kubectl get pods -n=kube-system |grep metrics
metrics-server-858cbd588d-ftqqv                       1/1     Running     0          3h59m

2. 使用 kubectl top

kubectl top 只能查看 pod 和 node 的资源占用

[root@master01 ~]# kubectl top node
NAME       CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%   
master01   1203m        4%     6327Mi          5%        
worker01   386m         1%     4198Mi          3%        
worker02   375m         1%     2494Mi          2%  
[root@master01 ~]# 
[root@master01 ~]# kubectl top pod
NAME                               CPU(cores)   MEMORY(bytes)   
kubevirt-web-ops-949595595-rgbzg   1m           43Mi 

参考文档

文章有帮助,请作者喝杯咖啡?

发表评论