centos k8s部署如何监控集群
导读:监控方案总览 在 CentOS 上监控 Kubernetes 通常采用“指标采集 + 可视化告警 + 日志与节点观测”的组合:用 Metrics Server 提供基础资源指标,配合 Prometheus + Grafana 做时序监控与可...
监控方案总览 在 CentOS 上监控 Kubernetes 通常采用“指标采集 + 可视化告警 + 日志与节点观测”的组合:用 Metrics Server 提供基础资源指标,配合 Prometheus + Grafana 做时序监控与可视化,使用 kube-state-metrics 与 cAdvisor 补充对象与容器指标,必要时加入 Kubernetes Dashboard、Cockpit、ELK 等增强运维与日志能力。
快速落地步骤
-
基础资源指标
- 部署 Metrics Server(为 HPA/VPA、kubectl top 提供数据):
- 安装:kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
- 验证:kubectl top nodes 与 kubectl top pods
- 说明:Heapster 已弃用,以 Metrics Server 为准。
- 部署 Metrics Server(为 HPA/VPA、kubectl top 提供数据):
-
容器与节点指标
- cAdvisor:已内置于 kubelet,自动采集节点上容器的 CPU、内存、磁盘、网络 使用。
- Node Exporter:采集节点级 硬件/OS 指标,建议以 DaemonSet 方式部署在各节点,供 Prometheus 抓取。
-
对象与状态指标
- 部署 kube-state-metrics(反映 Deployment、StatefulSet、DaemonSet、Pod 等对象的状态与数量变化):
- 安装:kubectl apply -f https://github.com/kubernetes-sigs/kube-state-metrics/releases/latest/download/components.yaml。
- 部署 kube-state-metrics(反映 Deployment、StatefulSet、DaemonSet、Pod 等对象的状态与数量变化):
-
可视化与告警
- 使用 Prometheus + Grafana 搭建监控栈(推荐 Helm 方式):
- Helm 仓库:helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
- 安装监控套件:helm install prometheus prometheus-community/kube-prometheus-stack
- 访问 Grafana(Service 类型为 NodePort 或 Ingress),添加 Prometheus 数据源并导入官方 Kubernetes / Node / Pod 仪表盘。
- 使用 Prometheus + Grafana 搭建监控栈(推荐 Helm 方式):
可视化与运维界面
- Kubernetes Dashboard:基于 Web 的集群管理/监控 UI。
- 部署:kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml
- 获取访问 Token:kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk ‘{ print $1} ’)
- 访问:https://:30000(使用上一步的 Token 登录)。
- Cockpit:CentOS 的 Web 管理工具,可查看 服务器资源、网络、用户、防火墙 等。
- 安装与启用:yum install cockpit;systemctl start cockpit;systemctl enable cockpit
- 防火墙:firewall-cmd --permanent --zone=public --add-service=cockpit;firewall-cmd --reload
- 访问:http://:9090。
日志与链路观测
- 日志:使用 ELK(Elasticsearch、Logstash、Kibana) 或 EFK(Elasticsearch、Fluent Bit、Kibana) 收集与分析容器日志,便于故障排查与审计。
- 网络与性能:如需 网络连接状态 观测,可引入 Kindling 并与 Grafana 结合展示。
告警与最佳实践
- 在 Prometheus 中配置 告警规则(如节点 CPU/内存 阈值、Pod 重启次数、Deployment 副本不可用 等),并通过 Alertmanager 对接 邮件/企业微信/钉钉/Slack 等渠道进行通知。
- 为 Prometheus 配置持久化存储(如 PVC),避免重启导致数据丢失;为 Grafana 做好 数据源与仪表盘 的备份与版本管理。
- 生产建议:为 Node Exporter、kube-state-metrics、Prometheus、Grafana 设置 资源请求/限制 与 反亲和/污点容忍,保障监控组件稳定性。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos k8s部署如何监控集群
本文地址: https://pptw.com/jishu/752158.html
