十三、Heapster
1,基本介绍
(1)Heapster 是 Kubernetes 原生的集群监控方案。Heapster 以 Pod 的形式运行,它会自动发现集群节点、从节点上的 Kubelet 获取监控数据。Kubelet 则是从节点上的 cAdvisor 收集数据。
(2)Heapster 将数据按照 Pod 进行分组,将它们存储到预先配置的 backend 并进行可视化展示。Heapster 当前支持的 backend 有 InfluxDB(通过 Grafana 展示)、Google Cloud Monitoring 等。Heapster 的整体架构如下图所示:
2,安装步骤
(1)首先我们下载最新版本的 heapster(1.5.0),并解压,解压出来的文件夹为 heapster-1.5.0。
1 2 | wget https: //github.com/kubernetes/heapster/archive/v1.5.0.zip unzip v1.5.0.zip |
(2)接着我们还需要编辑 grafana.yaml 文件。
1 | vi heapster-1.5.0/deploy/kube-config/influxdb/grafana.yaml |
(3)将 type: NodePort 注释去除,这样我们后面就可以从外网对其进行访问。
(4)接着分别执行如下代码进行安装部署:
1 2 | kubectl apply -f heapster-1.5.0/deploy/kube-config/influxdb/ kubectl apply -f heapster-1.5.0/deploy/kube-config/rbac/heapster-rbac.yaml |
(5)部署成功后,我们可以执行如下命令查看安装了哪些组件:
1 2 3 | kubectl get pod -- namespace =kube-system | grep -e heapster -e monitor kubectl get svc -- namespace =kube-system | grep -e heapster -e monitor kubectl get deploy -- namespace =kube-system | grep -e heapster -e monitor |
3,使用说明
(1)从上面可以看到 Scope 在节点上监听的端口是 32521,因此我们使用浏览器访问如下地址即可打开监控页面:
http://YOUR_MASTER_IP:32521/
(2)打开后可以看到 Heapster 已经预先配置好了 Grafana 的 DataSource 和 Dashboard。
(3)点击左上角 Home 菜单,可以看到预定义的两个 Dashboard Cluster 和 Pods。
(4)点击 Cluster,可以查看集群中节点的 CPU、内存、网络和磁盘的使用情况。
(5)在左上角可以切换查看不同节点的数据。
(6)切换到 Pods Dashboard,可以查看 Pod 的监控数据,包括单个 Pod 的 CPU、内存、网络和磁盘使用情况。
(7)在左上角可以切换到不同 Namespace 的 Pod。
原文链接:https://www.hangge.com/blog/cache/detail_2443.html