偏实战的 K8s 排查命令清单
🚀 一、Pod 查询类(你现在最常用)
1️⃣ 查 Pod(模糊匹配)
kubectl get pod -n ape | grep ape-rainbow
👉 看是否存在 / 状态是否正常
2️⃣ 查 Pod + IP + Node(定位机器问题)
kubectl get pod -n ape -o wide | grep ape-rainbow
👉 排查:
是否调度异常
是否集中在某个 node(节点炸了)
3️⃣ 查最新 Pod(🔥高频)
kubectl get pod -n ape --sort-by=.metadata.creationTimestamp | grep ape-rainbow | tail -n 1
👉 滚动发布 / 重启后特别有用
📄 二、日志类(核心)
4️⃣ 自动查 Pod + 跟日志(你刚要的)
kubectl logs -f $(kubectl get pod -n ape | grep ape-rainbow | awk '{print $1}' | head -n 1) -n ape
5️⃣ 看最近日志(防止刷屏)
kubectl logs --tail=100 $(kubectl get pod -n ape | grep ape-rainbow | awk '{print $1}' | head -n 1) -n ape
6️⃣ 看上一个容器日志(🔥排查重启必用)
kubectl logs -p $(kubectl get pod -n ape | grep ape-rainbow | awk '{print $1}' | head -n 1) -n ape
👉 Pod 重启过才有
7️⃣ 多副本统一看日志(推荐)
kubectl logs -f -l app=ape-rainbow -n ape --max-log-requests=10
👉 前提:有 label
🧠 三、状态排查(为什么挂)
8️⃣ describe(🔥最重要)
kubectl describe pod $(kubectl get pod -n ape | grep ape-rainbow | awk '{print $1}' | head -n 1) -n ape
👉 看:
Events(调度失败 / 拉镜像失败)
OOMKilled
CrashLoopBackOff
9️⃣ 看 Pod 状态(筛异常)
kubectl get pod -n ape | grep -v Running
👉 快速发现异常 Pod
10️⃣ 查看重启次数
kubectl get pod -n ape | awk '{print $1, $4}'
👉 第4列是 RESTARTS
🖥 四、节点 / 资源排查
11️⃣ 查看节点资源
kubectl top node
12️⃣ 查看 Pod 资源
kubectl top pod -n ape
👉 查是否 CPU / 内存打满
🔗 五、服务 / 网络问题
13️⃣ 查看 Service
kubectl get svc -n ape
14️⃣ 查看 Endpoints(🔥判断服务是否通)
kubectl get endpoints -n ape
👉 如果是空的 = 服务挂了
15️⃣ 进入 Pod 内部排查
kubectl exec -it $(kubectl get pod -n ape | grep ape-rainbow | awk '{print $1}' | head -n 1) -n ape -- /bin/sh
👉 常用于:
curl 内部接口
看配置
🧰 六、进阶(推荐你用)
✅ 1. 定义 alias(强烈推荐)
alias k=kubectl
之后直接:
k get pod -n ape
✅ 2. 定义函数(🔥比一行命令更爽)
klog() {
kubectl logs -f $(kubectl get pod -n $1 | grep $2 | awk '{print $1}' | head -n 1) -n $1
}
用法:
klog ape ape-rainbow
✅ 3. 自动最新 Pod 日志(推荐)
klognew() {
kubectl logs -f $(kubectl get pod -n $1 --sort-by=.metadata.creationTimestamp | grep $2 | tail -n 1 | awk '{print $1}') -n $1
}
🧠 给你一个排查思路(重点)
以后别死记命令,按这个顺序:
Pod 在不在
kubectl get pod状态正不正常
Running / CrashLoopBackOff / Pending看日志
kubectl logs看 describe
kubectl describe pod看资源
kubectl top看网络 / svc
endpoints / svc
本作品采用《CC 协议》,转载必须注明作者和本文链接
关于 LearnKu
粤公网安备 44030502004330号
推荐文章: