kubectl 命令速查表 - Kubernetes 常用命令大全

kubectl 排障最常用的命令都在这里了,按查询、诊断、伸缩、上下文分组整理,CrashLoop 和访问不通时按组往下查。

容器与编排·共 24 条命令·最后更新 2026-07-21
返回 容器与编排

查询资源 Get 5

kubectl get pods -n prod
列出指定命名空间的 Pod
kubectl get pods -o wide
额外显示节点和 Pod IP
kubectl get pods -A
列出所有命名空间的 Pod
kubectl get svc,ingress -n prod
一次查 Service 和 Ingress
kubectl get events --sort-by=.lastTimestamp
按时间排序看事件,定位调度/拉镜像失败

描述与诊断 Describe 5

kubectl describe pod <pod> -n prod
看事件、容器状态、探针,排查 CrashLoop/Pending
kubectl logs <pod> -n prod
查看 Pod 日志
kubectl logs <pod> --previous
查看上一次崩溃容器的日志,CrashLoop 必用
kubectl logs <pod> -c <container>
多容器 Pod 指定容器日志
kubectl exec -it <pod> -- sh
进入 Pod 容器调试

伸缩与更新 Scale & Rollout 5

kubectl scale deploy/app --replicas=3
调整副本数
kubectl rollout status deploy/app
查看滚动更新进度
kubectl rollout undo deploy/app
回滚到上一个版本
kubectl set image deploy/app c=app:1.1
更新镜像触发滚动更新
kubectl delete pod <pod>
删除 Pod,由控制器自动重建

上下文与配置 Context 4

kubectl config get-contexts
列出所有集群上下文
kubectl config use-context <ctx>
切换当前操作的集群,多集群必看
kubectl config set-context --current --namespace=prod
设置默认命名空间,省去每次 -n
kubectl top pod -n prod
查看 Pod CPU/内存用量,需 metrics-server

常见问题 FAQ 5

Q: 如何查看所有命名空间的 Pod?
A: kubectl get pods -A 或 kubectl get pods --all-namespaces,可查看集群中所有命名空间的 Pod。
Q: kubectl apply 和 kubectl create 有什么区别?
A: kubectl apply 是声明式(推荐),支持创建和更新;kubectl create 是命令式,重复执行会报错已存在。
Q: 如何查看 Pod 的日志?
A: kubectl logs <pod> -n <namespace>,加 -f 实时跟踪,--previous 查看上一次崩溃容器的日志。
Q: 如何进入 Pod 的容器?
A: kubectl exec -it <pod> -- sh(或 /bin/bash),多容器 Pod 用 -c <container> 指定容器。
Q: 如何查看集群节点状态?
A: kubectl get nodes 查看所有节点状态,kubectl describe node <name> 查看节点详细信息。

💡 提示

  • 排障顺序:get 看状态 → describe 看事件 → logs 看应用错误,CrashLoop 加 --previous。
  • 操作前先 kubectl config get-contexts 确认当前集群,避免在生产集群误操作。
  • kubectl top 报错通常是没装 metrics-server,不是命令写错。

官方参考来源

命令整理自以下官方文档,点击核对最新用法。

由 LaoHand 维护

公开更新于 2026年7月21日,内容持续校对官方文档。

发现错误?反馈给我们

命令或描述有误?提交 issue 帮助我们修正。

发现错误?反馈给我们