Prometheus+Grafana监控体系搭建

一、基本介绍

  • Prometheus(由go语言(golang)开发)是一套开源的监控&报警&时间序列数据库的组合。适合监控docker容器。因为kubernetes(俗称k8s)的流行带动了prometheus的发展。被很多人称为下一代监控系统。
  • Grafana是一个开源的图表可视化系统,简单说图表配置比较方便、生成的图表比较漂亮,并能实现报警。支持五十多种数据源,Prometheus就是其中支持的一种。

 

二、实验环境准备

  • grafana服务器:192.168.41.144
  • Prometheus服务器:192.168.41.144

被监控服务器:192.168.41.102/192.168.41.115

下载promethues安装包、插件和启动脚本

下载redis_export插件 

下载granafa安装包

2.1 安装Prometheus(服务端)

[root@test144 opt]# cd /opt
# 解压安装包
[root@test144 opt]# gtar -xvf prometheus-2.23.0.linux-amd64.tar.gz 
[root@test144 opt]# mv prometheus-2.23.0.linux-amd64 prometheus
# 确认是否正常启动(默认端口9090)

启动Prometheus脚本:

[root@test144 prometheus]# cd /opt/prometheus

[root@test144 prometheus]# ./prometheus_start.sh

prometheus的主界面

查看到监控的数据

http://192.168.1.1:9090/metrics

2.2  安装node_export(客户端)

[root@test144 opt]# cd /opt
# 解压安装包
[root@test144 opt]# gtar node_exporter-1.0.1.linux-amd64.tar.gz 
[root@test144 opt]# mv node_exporter-1.0.1.linux-amd64  node_exporter
# 确认是否正常启动(默认端口9100)

prometheus服务器的配置文件里添加被监控机器的配置

#启动node_export脚本:

[root@test14 /]# cd /opt/

[root@test14 opt]# ./node_export_start.sh

如果机器重启后,需要检查防火墙是否关闭,9100端口是否开放,否则会出现此问题

systemctl status firewalld.service   【start/stop/status】

firewall-cmd --permanent --zone=public --add-port=9100/tcp

2.3安装redis_export插件

[root@test144 opt]# cd /opt
# 解压安装包
[root@test144 opt]# gtar -xvf redis_exporter-v1.6.1.linux-amd64.tar.gz
[root@test144 opt]# mv redis_exporter-v1.6.1.linux-amd64.tar.gz  redis_exporter
# 确认是否正常启动(默认端口9121)

prometheus服务器的配置文件里添加被监控机器的配置

 需要注释  check-keys: ["metrics:*"],否则节点容易down

#启动redis_export脚本:

[root@test14 /]# cd /opt/

[root@test14 opt]# ./redis_exporter.sh

2.4  安装grafana:

[root@test144 opt]# cd /opt
# 安装包
[root@test144 opt]# yum install grafana-enterprise-9.0.0-1.x86_64.rpm
# 确认是否正常启动(默认端口3000)

#启动grafana服务:

[root@test144 opt]# cd /opt

[root@test144 opt]# ./grafana_start.sh

浏览器访问 http://192.168.41.144:3000, 默认用户名/密码 admin/admin

在Grafana上添加Prometheus数据源 

Grafana导入监控模板

非常高的系统主机节点监控信息

2.5 安装alertmanager

 获取企微帐号:

访问企业微信官网:企业微信 

企业ID

注册完成之后,通过企业微信官网登录后台管理,在【我的企业】的企业信息里面,获取到Alertmanager服务配置需用到的第一个配置:企业ID

部门ID:

在【通讯录】中,添加一个子部门,用于接收告警信息,后面把人加到该部门,部门内的人就能接收到告警信息了。

子部门添加完成之后就能看到该部门ID

告警AgentId和Secret

告警AgentId和Secret的获取是需要在企业微信后台,在【应用管理】中,创建应用后才能够获得的。

填写相关消息,最后点击创建应用

点击刚才创建好的应用Prometheus,就可以看到AgentId和Secret

Secret点击查看即可获取

下载地址:https://prometheus.io/download/alertmanager
[root@test144 opt]# cd /opt
# 解压安装包
[root@test144 opt]# gtar alertmanager-0.24.0.linux-amd64.tar.gz 
[root@test144 opt]# mv alertmanager-0.24.0.linux-amd64  alertmanager
# 确认是否正常启动(默认端口9093)

2.5.1配置alertmanager.yml文件

2.5.2 告警模板(wechat.tmpl)

2.5.3  Prometheus添加rule和配置

node_status.yml配置:

Prometheus配置

#启动alert脚本:

[root@test14 /]# cd /opt/alertmanager

[root@test14 alertmanager]# ./alertmanager_start.sh

 

三、常见问题

1.启动node_exporter服务,一切正常,日志也未报错,访问地址:http://ip:9100,就是访问不了,state显示down

查看防火墙状态( systemctl status firewalld.service)

关闭防火墙(systemctl stop firewalld.service),上报数据正常

资源下载:

prometheus、node_exporter、pushgateway插件
Prometheus redis插件

Prometheus alertmanager插件

grafana资源​​​​​​​

参考文献:

Prometheus+Grafana监控_学富一车的博客-CSDN博客_grafana监控

prometheus监控redis集群_即墨澈的博客-CSDN博客_prometheus监控redis集群

Download | Prometheus

Download Grafana | Grafana Labs

Dashboards | Grafana Labs

Prometheus-Alertmanager告警对接到企业微信 - 爱码网

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值