Heapster 是 Kubernetes 原生的集群监控方案。Heapster 以 Pod 的形式运行,它会自动发现集群节点、从节点上的 Kubelet 获取监控数据。Kubelet 则是从节点上的 cAdvisor 收集数据。html
Heapster 将数据按照 Pod 进行分组,将它们存储到预先配置的 backend 并进行可视化展现。Heapster 当前支持的 backend 有 InfluxDB(经过 Grafana 展现),Google Cloud Monitoring 等。Heapster 的总体架构以下图所示:git
下面咱们将实践由 Heapster、InfluxDB 和 Grafana 组成的监控方案。Kubelet 和 cAdvisor 是 Kubernetes 的自带组件,无需额外部署。github
Heapster 自己是一个 Kubernetes 应用,部署方法很简单,运行以下命令:浏览器
git clone https://github.com/kubernetes/heapster.git
kubectl apply -f heapster/deploy/kube-config/influxdb/
kubectl apply -f heapster/deploy/kube-config/rbac/heapster-rbac.yaml
Heapster 相关资源以下:网络
为便与访问,已经过 kubectl edit
将 Service monitoring-grafana
的类型修改成 NodePort
。架构
浏览器打开 Grafana 的 Web UI:http://192.168.56.105:32314/
app
Heapster 已经预先配置好了 Grafana 的 DataSource 和 Dashboard。学习
点击左上角 Home
菜单,能够看到预约义的两个 Dashboard Cluster
和 Pods
。spa
点击 Cluster
,能够查看集群中节点的 CPU、内存、网络和磁盘的使用状况。3d
在左上角能够切换查看不一样节点的数据。
切换到 Pods
Dashboard,能够查看 Pod 的监控数据,包括单个 Pod 的 CPU、内存、网络和磁盘使用状况。
在左上角能够切换到不一样 Namespace 的 Pod。
Heapster 预约义的 Dashboard 很直观也很简单。若有必要,能够在 Grafana 中定义本身的 Dashboard 知足特定的业务需求。
下一节咱们学习 Prometheus Operator。
1.《天天5分钟玩转Kubernetes》
https://item.jd.com/26225745440.html
2.《天天5分钟玩转Docker容器技术》
https://item.jd.com/16936307278.html
3.《天天5分钟玩转OpenStack》
https://item.jd.com/12086376.html