如何监控Debian上Kubernetes部署的状态
导读:监控思路总览 在 Debian 上监控 Kubernetes 部署状态,建议采用“命令行快速巡检 + 系统服务与日志 + 可视化与告警”的组合:用 kubectl 查看资源健康与事件,用 systemd/journalctl 跟踪控制面与节...
监控思路总览 在 Debian 上监控 Kubernetes 部署状态,建议采用“命令行快速巡检 + 系统服务与日志 + 可视化与告警”的组合:用 kubectl 查看资源健康与事件,用 systemd/journalctl 跟踪控制面与节点代理,用 Kubernetes Dashboard 做可视化,用 Prometheus + Grafana 做指标与可视化告警,并配合 事件与日志 做根因定位。
快速巡检命令
- 集群连通性与基础信息
- 查看集群信息与 API 端点:kubectl cluster-info
- 查看节点状态:kubectl get nodes(关注 STATUS=Ready)
- 工作负载与网络
- 查看所有命名空间的 Pod:kubectl get pods -A(关注 STATUS=Running、READY 列)
- 查看 Deployment:kubectl get deployments -A(关注 READY/UP-TO-DATE/AVAILABLE)
- 查看 Service:kubectl get svc -A
- 查看 Ingress:kubectl get ingress -A
- 事件与日志
- 查看集群事件:kubectl get events -A --sort-by=.metadata.creationTimestamp
- 查看 Pod 详情与事件:kubectl describe pod -n
- 查看 Pod 日志:kubectl logs -n
系统与组件日志
- 节点上组件(kubelet/kube-proxy)以 systemd 管理,建议常驻查看与告警:
- 查看服务状态:sudo systemctl status kubelet、sudo systemctl status kube-proxy
- 实时查看日志:sudo journalctl -u kubelet -f、sudo journalctl -u kube-proxy -f
- 提示:若使用 kubeadm 部署,控制面组件可能以 静态 Pod 运行,优先用 kubectl logs/describe 查看其状态与事件。
可视化与长期监控
- Kubernetes Dashboard
- 一键部署:kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml
- 本地访问:kubectl proxy,浏览器打开 http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/
- Prometheus + Grafana(推荐 Helm 方式)
- 添加仓库并安装 kube-prometheus-stack:
- helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
- helm repo update
- helm install prometheus prometheus-community/kube-prometheus-stack
- 访问 Grafana(默认 3000 端口),添加 Prometheus 为数据源并导入 Kubernetes / Node / Pod 等常用仪表盘,配置告警规则实现可视化与阈值告警。
- 添加仓库并安装 kube-prometheus-stack:
关键告警与排障要点
- 节点与系统
- 告警:节点 NotReady、节点 DiskPressure/MemoryPressure/PIDPressure
- 排查:kubectl describe node 、kubectl get events -A、节点 journalctl
- 工作负载
- 告警:Pod CrashLoopBackOff/ImagePullBackOff、Deployment 的 AVAILABLE < DESIRED、ReplicaSet 未就绪
- 排查:kubectl describe pod -n (Events)、kubectl logs -n [–previous]、检查 Service selector 与 label 是否匹配
- 网络与服务发现
- 告警:Service Endpoints 为空、Ingress 规则未生效
- 排查:kubectl get endpoints -n 、kubectl describe ingress -n
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何监控Debian上Kubernetes部署的状态
本文地址: https://pptw.com/jishu/753741.html
