查看k8s集群中pod和node的资源使用情况

1. kubectl top pod 命令

kubectl top pod 命令用于显示集群中所有 Pod 的 CPU 和内存使用情况。

示例 1: 查看所有 Pod 的资源使用情况

kubectl top pod

输出示例:

NAME CPU(cores) MEMORY(bytes)

nginx-deployment-5c6b7c8f8b-abcde 50m 128Mi

nginx-deployment-5c6b7c8f8b-fghij 60m 130Mi

my-app-7d8f9f8f8b-jklmn 100m 256Mi

示例 2: 查看特定命名空间中的 Pod 资源使用情况

kubectl top pod -n my-namespace

输出示例:

NAME CPU(cores) MEMORY(bytes)

my-app-7d8f9f8f8b-jklmn 100m 256Mi

示例 3: 查看 Pod 的详细信息

如果您想查看特定 Pod 的资源使用情况,可以使用 -o 选项输出为 JSON 或 YAML 格式:

kubectl top pod my-app-7d8f9f8f8b-jklmn -n my-namespace -o json

2. kubectl top node 命令

kubectl top node 命令用于显示集群中所有 Node 的 CPU 和内存使用情况。

示例 1: 查看所有 Node 的资源使用情况

kubectl top node

输出示例:

NAME CPU(cores) MEMORY(bytes)

node-1 200m 512Mi

node-2 300m 1Gi

node-3 150m 256Mi

示例 2: 查看特定 Node 的资源使用情况

如果您只想查看特定 Node 的资源使用情况,可以指定 Node 名称:

kubectl top node node-1

输出示例:

NAME CPU(cores) MEMORY(bytes)

node-1 200m 512Mi

3. 结合其他命令

您可以将 kubectl top 命令与其他命令结合使用,以便进行更复杂的监控和分析。例如,您可以将输出通过管道传递给 grep 或 awk 进行过滤。

示例 1: 过滤 CPU 使用率高于 100m 的 Pod

kubectl top pod --no-headers | awk '2 \> 100 {print 1, 2, 3}'

输出示例:

my-app-7d8f9f8f8b-jklmn 150m 256Mi

相关推荐
CheungChunChiu1 天前
Linux 内核设备模型与驱动框架解析 ——以 rk-pcie 为例
linux·运维·ubuntu
姚不倒1 天前
负载均衡的概念、策略以及两个核心组件 Nginx 和 Kube-proxy 的对比。
运维·nginx·云原生·kubernetes
地瓜伯伯1 天前
Nginx终极配置指南:负载均衡、限流、反向代理、IP白名单、SSL、云原生、DNS解析、缓存加速全都有
spring boot·nginx·spring·spring cloud·微服务·云原生·负载均衡
列逍1 天前
Linux进程(三)
linux·运维·服务器·环境变量·命令行参数
水天需0101 天前
VS Code Ctrl+Shift+V 预览 Markdown 无效的解决方案
linux
赖small强1 天前
【Linux C/C++开发】Linux 平台 Stack Protector 机制深度解析
linux·c语言·c++·stack protector·stack-protector·金丝雀机制
陌路201 天前
Linux42 守护进程
linux
liteblue1 天前
DEB包解包与打包笔记
linux·笔记
颜颜yan_1 天前
在openEuler上搞个云原生AI模型商店:像点外卖一样部署模型
人工智能·云原生
minji...1 天前
Linux 基础IO(一) (C语言文件接口、系统调用文件调用接口open,write,close、文件fd)
linux·运维·服务器·网络·数据结构·c++