← 返回首页

K8s Pod 调试手册

快速检查

# Pod 状态
kubectl get pods -n <namespace>

# Pod 事件
kubectl describe pod <pod-name> -n <namespace>

# Pod 日志
kubectl logs -f <pod-name> -n <namespace> --tail=100

重启问题

# 检查重启次数
kubectl get pods | grep -v Running

# 检查存活探针/就绪探针
kubectl describe pod <pod-name> | grep -A5 "Liveness\|Readiness"

资源问题

# Pod 资源使用情况
kubectl top pod -n <namespace>

# 节点容量
kubectl describe nodes | grep -A5 "Allocated resources"

网络调试

# Pod IP
kubectl get pod -o wide

# Service 端点
kubectl get endpoints <svc-name> -n <namespace>

# DNS 解析测试
kubectl run dnsutils --rm -it --image=tutum/dnsutils --restart=Never -- nslookup <service-name>

进入 Pod Shell

kubectl exec -it <pod-name> -n <namespace> -- /bin/sh

常见修复

# 强制重启 Pod
kubectl delete pod <pod-name> -n <namespace>

# 扩容
kubectl scale deployment <deploy-name> --replicas=3 -n <namespace>