Kubernetes 命令速查表
Kubernetes 常用命令速查:kubectl get、apply、delete、scale、rollout、port-forward 等高频命令对照,附中文说明,集群运维与排障时快速查阅。
| 命令 | 说明 |
|---|---|
| kubectl version | 查看客户端 / 服务端版本 |
| kubectl cluster-info | 查看集群控制面地址 |
| kubectl get nodes | 列出集群节点(-o wide 详情) |
| kubectl get pods | 列出 Pod(-A 所有命名空间) |
| kubectl get services | 列出 Service |
| kubectl get deployments | 列出 Deployment |
| kubectl describe pod | 查看 Pod 详情与事件 |
| kubectl logs | 查看 Pod 日志(-f 跟踪) |
| kubectl exec | 在容器内执行命令(-it 交互) |
| kubectl apply -f | 用清单文件创建 / 更新资源 |
| kubectl create | 从命令式参数创建资源 |
| kubectl delete | 删除资源(-f 或 资源名) |
| kubectl edit | 在线编辑资源定义 |
| kubectl scale | 扩缩容副本数(--replicas) |
| kubectl rollout status | 查看滚动更新进度 |
| kubectl rollout undo | 回滚到上一版部署 |
| kubectl port-forward | 把本地端口转发到 Pod |
| kubectl expose | 把资源暴露为 Service |
| kubectl config get-contexts | 列出 kubeconfig 上下文 |
| kubectl config use-context | 切换当前集群上下文 |
| kubectl top nodes | 查看节点 CPU / 内存占用 |
| kubectl top pods | 查看 Pod 资源占用 |
| kubectl cp | 容器与本地间拷贝文件 |
| kubectl cordon | 标记节点不可调度 |
| kubectl uncordon | 恢复节点可调度 |
| kubectl drain | 驱逐节点上的 Pod(维护用) |
| kubectl get all | 列出命名空间内全部资源 |
常见问题
kubectl apply 和 create 有什么区别?
`apply` 是声明式,比对清单与集群现状后做增量变更,可重复执行、适合 GitOps;`create` 是命令式,直接新建资源,重复执行会报错。
如何查看 Pod 一直重启 / 崩溃的原因?
先用 `kubectl describe pod <名>` 看 Events 与 Last State(Exit Code、Reason);再用 `kubectl logs --previous` 看上一次容器崩溃前的日志。
如何把本地端口转发到 Pod 来调试?
用 `kubectl port-forward pod/<名> 8080:80` 把本机 8080 映射到 Pod 的 80 端口,然后访问 `localhost:8080` 即可本地联调,无需暴露 Service。
如何回滚一次失败的滚动更新?
`kubectl rollout undo deployment/<名>` 回滚到上一版;`kubectl rollout history deployment/<名>` 看历史,`--to-revision=N` 可指定回滚到某版本。