K8S是云原生核心,下面我详解K8S常用命令@mikechen
1. 查看集群状态
kubectl cluster-info
作用:查看 API Server、DNS 等核心组件是否正常。
适用场景:
- 集群是否可用
- 排查控制面问题
2. 查看节点状态
kubectl get nodes
作用:查看所有 Node 状态(Ready / NotReady)。
扩展:
kubectl get nodes -o wide
可看到 IP、系统版本、容器运行时等信息。
3. 查看所有 Pod
kubectl get pods
查看当前 namespace 下所有 Pod。
常用扩展:
kubectl get pods -A
👉 查看所有命名空间 Pod
4. 查看 Pod 详细信息
kubectl describe pod <pod-name>
作用:排查问题的核心命令。
能看到:
- 事件(Events)
- 镜像拉取情况
- 重启原因
- 调度信息
5. 查看 Deployment
kubectl get deployment
作用:查看应用部署情况。
6. 滚动更新状态
kubectl rollout status deployment/<name>
作用:查看发布是否成功。
7. 回滚版本
kubectl rollout undo deployment/<name>
作用:快速回滚到上一个版本。
适用场景:
- 发布失败
- 线上事故回滚
8. 查看日志(非常重要)
kubectl logs <pod-name>
实时查看:
kubectl logs -f <pod-name>
多容器 Pod:
kubectl logs <pod-name> -c <container-name>
9. 进入容器内部
kubectl exec -it <pod-name> -- /bin/bash
如果是 Alpine:
kubectl exec -it <pod-name> -- /bin/sh
作用:
- 排查环境问题
- debug 容器内部状态
10. 删除 Pod / 资源
kubectl delete pod <pod-name>
删除 Deployment:
kubectl delete deployment <name>
11. 应用 YAML 配置
kubectl apply -f app.yaml
作用:
- 创建资源
- 更新资源(声明式)
K8S 推荐方式(核心)
12. 查看所有资源(最常用排查命令)
kubectl get all
作用:
快速查看:
- Pod
- Service
- Deployment
- ReplicaSet