查看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

相关推荐
酷可达拉斯几秒前
Linux操作系统-shell编程(0)
linux·运维·服务器·python·云计算
2301_7779983417 分钟前
Linux中断机制:操作系统如何高效运行
linux·运维·服务器
yunwei3720 分钟前
eBPF 教程:检查 exec 后真正安装的可执行镜像
linux·开源
Zhu75827 分钟前
在k8s环境部署Apache zookeeper3.9.5,高可用,多pod
容器·kubernetes·apache
emfuture1 小时前
工业自动化现场四大典型故障复盘:从环境适配到边缘智能的工程实践
运维·网络·自动化
笑锝没心没肺1 小时前
yum update 报错:GPG key retrieval failed: [Errno 14] HTTPS Error 404 - Not Found
linux·运维·服务器
keke.shengfengpolang1 小时前
自动化专业毕业能干什么?制造业、控制、软件、数据怎么选,2026版大实话
运维·自动化
AAA@峥1 小时前
CentOS Stream8 基于 Packstack 搭建 OpenStack 云平台全流程实战
linux·centos·openstack
汤永红1 小时前
gtk-x11-2.0.so.0
linux·运维·服务器
云烟成雨TD1 小时前
Micrometer 系列【2】可观测性:指标(Metrics)
java·云原生·micrometer