每天5分钟玩转Kubernetes | Heapster

书籍来源:cloudman《每天5分钟玩转Kubernetes》

一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!

附上汇总贴:每天5分钟玩转Kubernetes | 汇总_COCOgsta的博客-CSDN博客


Heapster是Kubernetes原生的集群监控方案。Heapster以Pod的形式运行,它会自动发现集群节点,从节点上的Kubelet获取监控数据。Kubelet则是从节点上的cAdvisor收集数据。

Heapster将数据按照Pod进行分组,将它们存储到预先配置的backend并进行可视化展示。Heapster当前支持的backend有InfluxDB(通过Grafana展示)、Google Cloud Monitoring等。Heapster的整体架构如图所示。

下面我们将实践由Heapster、InfluxDB和Grafana组成的监控方案。Kubelet和cAdvisor是Kubernetes的自带组件,无须额外部署。

14.2.1 部署

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。

14.2.2 使用

浏览器打开Grafana的Web UI:
http://192.168.56.105:32314/。

Heapster已经预先配置好了Grafana的DataSource和Dashboard,如图所示。

单击左上角的Home菜单,可以看到预定义的Dashboard Cluster和Pods,如图所示。

单击Cluster,可以查看集群中节点的CPU、内存、网络和磁盘的使用情况,如图所示。

在左上角可以切换查看不同节点的数据,如图所示。

切换到Pods Dashboard,可以查看Pod的监控数据,包括单个Pod的CPU、内存、网络和磁盘使用情况,如图所示。

在左上角可以切换到不同Namespace的Pod,如图所示。

Heapster预定义的Dashboard很直观,也很简单。如有必要,可以在Grafana中定义自己的Dashboard,满足特定的业务需求。

猜你喜欢

转载自blog.csdn.net/guolianggsta/article/details/125340254