GPE监控预警系统(Grafana+Prometheus+Exporter)
GPE监控预警系统(Grafana+Prometheus+Exporter)
GPE监控预警系统结构图
一: Grafana
1:简介
大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具、目前已经支持绝大部分常用的时序数据库。
Grafana支持许多不同的数据源。每个数据源都有一个特定的查询编辑器,该编辑器定制的特性和功能是公开的特定数据来源。 官方支持以下数据源:Graphite,Elasticsearch,InfluxDB,Prometheus,Cloudwatch,MySQL和OpenTSDB等
2:安装
linux下安装
Step1:下载
wget https://dl.grafana.com/oss/release/grafana-6.5.1-1.x86_64.rpm
sudo yum localinstall grafana-6.5.1-1.x86_64.rpm
Step2:启动
sudo service grafana-server start
Step3:访问
安装成功后浏览器输入 localhost:3000 可以访问grafana主页,grafana默认端口3000、默认用户名和密码为admin/admin
Step1:下载
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.3.0.linux-amd64.tar.gz
tar -zxvf grafana-5.3.0.linux-amd64.tar.gz
Step2:启动
cd ./grafana/bin #必须去脚本根目录启动
./grafana-server start # 启动
Step3:访问
安装成功后浏览器输入 localhost:3000 可以访问grafana主页,grafana默认端口3000、默认用户名和密码为admin/admin
windows下安装
参考网址 https://www.jianshu.com/p/7e7e0d06709b
Step1:下载
下载地址:https://grafana.com/grafana/download?platform=windows
Step2:下载后点击安装即可
Step3:访问
安装成功后浏览器输入 localhost:3000 可以访问grafana主页,grafana默认端口3000、默认用户名和密码为admin/admin
二: Prometheus
1:简介
Prometheus是一个开源的服务监控系统,它通过HTTP协议从远程的机器收集数据并存储在本地的时序数据库上
2:安装
下载promethues 下载地址:https://prometheus.io/download/
Linux下安装
Step1:下载
Step2:解压重命名
tar -zxvf prometheus-2.14.0.linux-amd64.tar.gz
mv prometheus-2.14.0.linux-amd64 promethues
Step3:启动
./prometheus
Step4:访问
输入ip+端口号进行访问
windowns下安装
Step1:下载
Step2:解压
Step3:启动
双击解压目录下的promethues.exe文件
Step4:访问
查看配置文件中相应的端口号
地址栏输入地址进行访问、显示如下界面则表示安装成功
二: Exporter
1:简介
定义
向Prometheus提供监控样本数据的程序、Exporter的一个实例称为target,Prometheus通过轮询的方式定期从这些target中获取样本数据
来源
- 社区提供的
Prometheus社区提供了丰富的Exporter实现,涵盖了从基础设施,中间件以及网络等各个方面的监控功能。这些Exporter可以实现大部分通用的监控需求。下表列举一些社区中常用的Exporter:
范围 | 常用Exporter |
---|---|
数据库 | MySQL Exporter, Redis Exporter, MongoDB Exporter, MSSQL Exporter等 |
硬件 | Apcupsd Exporter,IoT Edison Exporter, IPMI Exporter, Node Exporter等 |
消息队列 | Beanstalkd Exporter, Kafka Exporter, NSQ Exporter, RabbitMQ Exporter等 |
存储 | Ceph Exporter, Gluster Exporter, HDFS Exporter, ScaleIO Exporter等 |
HTTP服务 | Apache Exporter, HAProxy Exporter, Nginx Exporter等 |
API服务 | AWS ECS Exporter, Docker Cloud Exporter, Docker Hub Exporter, GitHub Exporter等 |
日志 | Fluentd Exporter, Grok Exporter等 |
监控系统 | Collectd Exporter, Graphite Exporter, InfluxDB Exporter, Nagios Exporter, SNMP Exporter等 |
其它 | Blockbox Exporter, JIRA Exporter, Jenkins Exporter, Confluence Exporter等 |
- 用户自定义的
除了直接使用社区提供的Exporter程序以外,用户还可以基于Prometheus提供的Client Library创建自己的Exporter程序,目前Promthues社区官方提供了对以下编程语言的支持:Go、Java/Scala、Python、Ruby。同时还有第三方实现的如:Bash、C++、Common Lisp、Erlang,、Haskeel、Lua、Node.js、PHP、Rust等。
2:安装
以mysqld exporter 为例--此处只演示windows下的安装,linux下类同。
-
Step1:下载
地址:https://prometheus.io/download/
-
Step2:解压+新建配置文件
解压后在当前目录新建.my.conf的文件,进行如下配置:[client] host=127.0.0.1 user=test //此为mysql_exporter连接mysql需要用到的用户,自己设置 password=test
-
Step3:mysql数据库用户名配置
在mysql数据库种新增刚设置的用户名和密码并赋予相应的权限create user 'exporter'@'localhost' identified by '123456'; GRANT REPLICATION CLIENT, PROCESS ON *.* TO 'exporter'@'localhost'; GRANT SELECT ON performance_schema.* TO 'exporter'@'localhost'; ALTER USER exporter@localhost IDENTIFIED WITH mysql_native_password BY '123456'; flush privileges;
-
Step4:命令行启动
进入mysqld_exporter解压目录,命令行键入如下语句即可启动成功mysqld_exporter --config.my-cnf=.my.cnf
- Step5:访问地址
地址栏输入地址http://127.0.0.1:9104/metrics显示如下图则说明安装成功