普罗米修斯&grafana监控k8s集群

640?wx_fmt=png

文/高哥/第 329 篇

运维自动化监控中基本上常用的有两大监控利器。一个是 zabbix,一个是普罗米修斯,又称Prometheus。Prometheus(普罗米修斯)是一个名字非常酷的开源监控系统。它支持多维度的指标数据模型,服务端通过HTTP协议定时拉取数据后,通过灵活的查询语言,实现监控的目的。客户端记录相关指标数据,对外提供查询接口。Prometheus服务端通过服务器发现机制找到客户端,并定时抓取存储为时间序列数据。最后通过Grafana等图表工具集成展示。


最近一直在学习,顺便搞了一下普罗米修斯&grafana监控k8s的方案。其实现原理有点类似 ELK 组合。node-exporter组件负责收集节点上的metrics监控数据,并将数据推送给prometheus, prometheus负责存储这些数据,grafana将这些数据通过网页以图形的形式展现给用户。


本次grafana+普罗米修斯全部集成在k8s中,用 pod 和 svc 的 NodePort 方式去暴露服务和端口以及登陆web界面。


pod显示如图:

640?wx_fmt=png

svc向外部暴露如下:

640?wx_fmt=png


根据 svc 的暴露端口,可以看出普罗米修斯的端口由9090 暴露为 30003,grafana 的端口由 3000 暴露为 31000。其中 192.168.43.35 这个 ip 地址是 k8s 集群的 master 节点,也就是主节点。


普罗米修斯登陆界面:http://192.168.43.35:30003

grafana登陆界面:http://192.168.43.35:31000


登陆普罗米修斯,界面如图:


需要采用如下查询语句,如果能够查询到数据,并且界面显示出来数据,则代表node-exporter向普罗米写入数据正常。


 
 

sum by (pod_name)( rate(container_cpu_usage_seconds_total{image!="", pod_name!=""}[1m] ) )

 
 

sum by (pod_name)( rate(container_cpu_usage_seconds_total{image!="", pod_name!=""}[1m] ) )

640?wx_fmt=png


grafana数据源配置如下:


640?wx_fmt=png


配置好数据源后,便可以定制监控指标来监控数据了。最终展示效果如图:


640?wx_fmt=png

640?wx_fmt=png


感觉这个监控界面还是比较炫酷的,我也尝试着装了一下 k8s 的默认 dashboard 界面,感觉还是比较单一。


640?wx_fmt=png


相比较而言,还是普罗米修斯&grafana的监控展示比较友好一些。这个用来装逼炫酷完全是一个不错的选择,这样领导就不会再说运维是吃闲饭的了。。。

  • 3
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值