centos

k8s故障排查在centos中的方法

小樊
46
2025-08-12 23:22:17
栏目: 智能运维

以下是在CentOS上排查K8s故障的常用方法:

  1. 检查集群状态

    • kubectl get nodes:查看节点是否处于Ready状态,若为NotReady需进一步排查节点服务。
    • kubectl get pods --all-namespaces:获取所有Pod状态,关注Pending、CrashLoopBackOff等异常状态。
  2. 查看事件与日志

    • kubectl get events:查看集群事件,定位异常发生时间点及可能原因。
    • kubectl logs <pod-name>:查看Pod内容器日志,若Pod有多个容器需指定-c <container-name>
    • journalctl -u kubelet:查看kubelet服务日志,排查节点级错误。
  3. 网络排查

    • kubectl get pods -o wide:检查Pod IP及所在节点,确认网络连通性。
    • ping/traceroute:测试节点间、Pod间网络连通性。
    • 检查网络插件(如Calico、Flannel)状态:kubectl get pods -n kube-system,确保相关Pod正常运行。
  4. 资源与配置检查

    • kubectl top nodes/pods:监控资源使用情况,排查资源不足或限制问题。
    • 检查存储配置:kubectl get pv,pvc,storageclass,确认PV与PVC绑定状态及存储类是否正确。
    • 验证Service与DNS:nslookup <service-name>,检查CoreDNS是否正常解析。
  5. 系统级排查

    • 检查节点系统资源:top/free -m,确保CPU、内存、磁盘空间充足。
    • 确认防火墙规则:firewall-cmd --list-all,确保K8s所需端口(如6443、10250等)开放。
  6. 高级调试工具

    • kubectl debug:在Pod中启动临时调试容器,安装工具进行深入排查。
    • 使用监控工具(如Prometheus+Grafana):可视化集群状态,分析性能瓶颈。

参考来源

0
看了该问题的人还看了