检查集群并排查故障
使用 kubectl 检查节点和 Pod 的健康状况、读取日志、描述事件并进入容器,从而诊断您第一个集群中的问题
检查集群并排查故障 是 CoddyKit 上的免费 DevOps Bootcamp 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 DevOps Bootcamp 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 DevOps Bootcamp 课程共包含 4 节课。
出现问题时
您的第一次部署有时会运行异常。好消息是:kubectl 提供了所需的一切,让您了解正在发生什么并有条理地修复问题。
检查节点
先从整体开始。集群节点是否健康并处于 Ready 状态?
kubectl get nodes -o wide列出容器组并查看状态
查看容器组阶段。Running 表示正常;Pending、CrashLoopBackOff 或 ImagePullBackOff 则指向特定问题。
kubectl get pods -o wide使用 describe 查看详情
kubectl describe 是您最好的帮手——它会显示规格、当前状态,以及解释调度和拉取失败原因的事件列表。
kubectl describe pod my-app-abc123读取日志
应用错误通常会在日志中暴露出来。使用 -f 持续查看日志,或者使用 --previous 读取已崩溃容器的上一实例日志。
kubectl logs -f my-app-abc123崩溃后的日志
如果一个容器组持续重启,当前容器可能还没有有用的日志。请改为查看上一实例的日志。
kubectl logs my-app-abc123 --previous进入容器执行命令
打开一个正在运行的容器内的命令行,从内部检查文件、环境变量和连通性。
kubectl exec -it my-app-abc123 -- sh集群范围内的事件
查看整个命名空间中的近期事件,并按时间排序,以发现逐个容器组视图中容易遗漏的模式。
kubectl get events --sort-by=.lastTimestamp常见故障:ImagePullBackOff
这表示 Kubernetes 无法拉取镜像——可能是名称或标签错误、私有镜像仓库缺少凭据,或者存在拼写错误。describe 会显示确切的拉取错误。
常见故障:CrashLoopBackOff
容器启动后反复退出。请检查 logs --previous 以了解崩溃原因——通常是命令错误、配置缺失或依赖项失败。
资源和连通性检查
使用 kubectl top 查看实时 CPU 和内存使用情况(需要指标服务器),并使用 port-forward 从您的机器直接测试服务。
kubectl port-forward pod/my-app-abc123 8080:80快速检查
诊断正在重启的容器组。
回顾
您现在已经拥有一套故障排查工具:
get nodes/pods用于检查健康状况,describe用于查看事件logs(以及--previous)用于查看应用错误exec用于从内部检查,port-forward用于测试- 识别
ImagePullBackOff和CrashLoopBackOff
冷静且系统地检查这些内容,通常能快速找到问题。
常见问题解答
「检查集群并排查故障」课时是免费的吗?
是的 — 「检查集群并排查故障」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 DevOps Bootcamp 课程的其余内容,请升级到 CoddyKit PRO。 DevOps Bootcamp 课程共包含 4 节课。
「检查集群并排查故障」这节课中我会学到什么?
使用 kubectl 检查节点和 Pod 的健康状况、读取日志、描述事件并进入容器,从而诊断您第一个集群中的问题 你通过在浏览器中直接运行的动手代码来练习 DevOps Bootcamp,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 DevOps Bootcamp 需要有经验吗?
无需任何先前经验。CoddyKit 上的 DevOps Bootcamp 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。
「检查集群并排查故障」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 DevOps Bootcamp 课中编写并运行代码吗?
能。每节 DevOps Bootcamp 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- Minikube 安装与设置
- Kubeconfig 与上下文
- 部署简单应用
- 检查集群并排查故障