kubectl top命令

kubectl top命令可显⽰节点和Pod对象的资源使⽤信息,它依赖于集群中的资源指标API来收集各项指标数据。它包含有node和pod两个⼦命令,可分别⽤于显⽰Node对象和Pod对象的相关资源占⽤率。

列出Node资源占⽤率命令的语法格式为kubectl top node[-l label|NAME],例如下⾯显⽰所有节点的资源占⽤状况的结果中显⽰了各节点累计CPU资源占⽤时长及百分⽐,以及内容空间占⽤量及占⽤⽐例。必要时,也可以在命令中直接给出要查看的特定节点的标识,以及使⽤标签选择器进⾏节点过滤:

# kubectl top node
NAME               CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%   
develop-master-1   1980m        50%    7220Mi          46%       
develop-worker-1   2170m        55%    6803Mi          43%       
develop-worker-2   1239m        31%    6344Mi          40%  

⽽名称空间级别的Pod对象资源占⽤率的使⽤⽅式会略有不同,使⽤时,⼀般应该限定名称空间及使⽤标签选择器过滤出⽬标Pod对象。命令的语法格式为kubectl top pod[NAME|-l label][--all-namespaces][--containers=false|true],例如,下⾯显⽰kube-system名称空间中标签为“k8s-app=kube-dns”的所有Pod资源及其容器的资源占⽤状态:

# kubectl top pod -l k8s-app=kube-dns --containers=true -n kube-system
POD                        NAME      CPU(cores)   MEMORY(bytes)   
coredns-6f9685b855-82g5x   POD       0m           0Mi             
coredns-6f9685b855-82g5x   coredns   9m           27Mi            
coredns-6f9685b855-zmvwt   POD       0m           0Mi             
coredns-6f9685b855-zmvwt   coredns   5m           29Mi   

# kubectl top pod -l k8s-app=kube-dns --containers=false -n kube-system 
NAME                       CPU(cores)   MEMORY(bytes)   
coredns-6f9685b855-82g5x   7m           28Mi            
coredns-6f9685b855-zmvwt   8m           30Mi           
posted @ 2022-03-02 17:03  哈喽哈喽111111  阅读(3896)  评论(0编辑  收藏  举报