Prometheus 监控平台的搭建
1. 环境准备
两台ubuntu 16.04
| 服务器内网IP | 作用 | 安装软件 |
| 172.16.4.11 | 监控的服务端 | Prometheus(服务端软件) Grafana(数据展示) |
| 172.16.4.12 | 被监控的客户端 |
node_exporter(收集服务器数据) mysqld_exporter(收集mysql数据) |
2. 客户端安装 node_exporter
node_exporter 主要用于获取CPU,内存,IO,网络,硬盘等基础数据
下载安装node_exporter
#下载解压node_exporter
wget https://github.com/prometheus/node_exporter/releases/download/v0.17.0/node_exporter-0.17.0.linux-amd64.tar.gz tar zxvf node_exporter-0.17.0.linux-amd64.tar.gz mv node_exporter-0.17.0.linux-amd64 /opt/node_exporter
启动node_exporter
cd /opt/node_exporter nohup ./node_exporter &
查看启动端口
tail -f nohup.out

设置允许端口访问 sudo ufw allow 9100
可以在内网通过 http://172.16.4.12:9100/metrics 查看客户端数据
3. 客户端安装 mysqld_exporter
mysqld_exporter 主要监控Mysql数据库的稳定性、吞吐量、连接情况、缓冲池使用情况、查询性能等各项指标
下载安装mysqld_exporter
#下载解压mysqld_exporter
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.11.0/mysqld_exporter-0.11.0.linux-amd64.tar.gz tar zxvf mysqld_exporter-0.11.0.linux-amd64.tar.gz mv mysqld_exporter-0.11.0.linux-amd64 /opt/mysqld_exporter
配置数据库连接
创建监控用的mysql用户
mysql -u root -p
输入root账号密码后,创建用户
create user 'mysql_monitor'@'%' identified by 'monitor123456'; grant replication client, process on *.* to mysql_monitor@"%" identified by "monitor123456"; grant select on performance_schema.* to mysql_monitor@"localhost";
进入mysqld_exporter安装目录创建.my.cnf配置文件
cd /opt/mysqld_exporter
vim .my.cnf
添加如下配置
[client]
user=mysql_monitor
password=monitor123456
启动 mysqld_exporter
nohup ./mysqld_exporter --config.my-cnf=.my.cnf &
查看启动端口
tail -f nohup.out

设置允许端口访问 sudo ufw allow 9104
可以在内网通过 http://172.16.4.12:9104/metrics 查看mysql的相关监控数据
4. 服务端安装 Prometheus
安装 Prometheus
sudo wget https://github.com/prometheus/prometheus/releases/download/v2.8.1/prometheus-2.8.1.linux-amd64.tar.gz
tar zxvf prometheus-2.8..linux-amd64.tar.gz
mv prometheus-2.8.1.linux-amd64 /opt/prometheus
配置 Prometheus
cd /opt/prometheus vi prometheus.yml
在 配置文件中增加对客户端的节点和数据库的监控配置
- job_name: 'mysql'
static_configs:
- targets: ['172.16.4.12:9104']
labels:
instance: 'db1'
- job_name: 'node'
static_configs:
- targets: ['172.16.4.12:9100']
labels:
instance: 'nd1'
截图如下

启动 Prometheus
nohup ./prometheus --config.file=./prometheus.yml &
访问:http://172.16.4.11:9090/ 即可打开Prometheus 网页

点击 Status --》 Target 即可看到我们的node和mysql的监控数据

5. 安装可视化数据展示Grafana
下载Grafana
sudo apt-get -y install wget wget https://dl.grafana.com/oss/release/grafana_6.0.0-beta1_amd64.deb
sudo apt-get -f install
sudo dpkg -i grafana_6.0.0-beta1_amd64.deb
运行Grafana
systemctl start grafana-server 设置为开机启动 sudo systemctl enable grafana-server
打开3000端口
sudo ufw allow
启动后可以通过 http://172.16.4.11:3000/ 访问

登录设置
初始密码 admin/admin ,
1. 添加一个data source ,使Grafana从Prometheus读取数据



2. 导入对node监控的DashBoard
首先去网站 https://grafana.com/grafana/dashboards 下载对主机监控的Dashboard
搜素 Node Exporter

点开第一个 ,拷贝对应的Dashboard Id 8919

回到我们的图形监控平台Grafana,Dashboard ---> import

输入 dashboard ID 8919,选择数据源为prometheus即可

3. 导入 mysql对应的监控面板
同上面的node监控面板一样,搜索关键字 mysql overview .找到对应的dashboard id 7362


然后同上 添加Dashboard ---》 import 导入该面板
到目前为止node和mysql的面板都导入成功

4. 点击具体的面板即可查看具体的面板信息
4.1 node面板

4.2 mysql面板

5. 插件安装
上面的node面板,有个图片显示不全需要安装插件
# 列出所有的可用插件 grafana-cli plugins list-remote #安装我们需要的插件 grafana-cli plugins install bargauge #插件安装后重启grafana
systemctl restart grafana-server
至此,对node和mysql的监控平台搭建完成,后续也可以配置一些alert,当符合一定条件时可以邮件或者钉钉通知告警
Prometheus 监控平台的搭建的更多相关文章
- 基于Prometheus和Grafana的监控平台 - 环境搭建
相关概念 微服务中的监控分根据作用领域分为三大类,Logging,Tracing,Metrics. Logging - 用于记录离散的事件.例如,应用程序的调试信息或错误信息.它是我们诊断问题的依据. ...
- cat监控平台环境搭建
项目地址:https://github.com/dianping/cat 编译步骤: 这个项目比较另类,把编译需要的jar包,单独放在git分支mvn-repo里了,而且官方文档里给了一个错误的命令提 ...
- cat监控平台环境搭建 专题
项目地址:https://github.com/dianping/cat 编译步骤: 这个项目比较另类,把编译需要的jar包,单独放在git分支mvn-repo里了,而且官方文档里给了一个错误的命令提 ...
- Docker系列——Grafana+Prometheus+Node-exporter服务器监控平台(一)
在最近的博文中,都是介绍监控平台的搭建,其实并不难,主要是需要自己动手操作,实践一番就会了. 有天在想,云上的服务器,是不是也可以搭建一个监控平台,所以就捣鼓了一下,不过遗憾的是,使用阿里云开源的插件 ...
- 使用Prometheus监控SpringBoot应用
通过之前的文章我们使用Prometheus监控了应用服务器node_exporter,数据库mysqld_exporter,今天我们来监控一下你的应用.(本文以SpringBoot 2.1.9.REL ...
- Grafana+Prometheus监控mysql性能
#cmd /usr/local 今天讲一下如何监控服务器中的mysql数据库的性能 一.数据库操作 1.mysql启动 #service mysqld start #启动数据库 #service my ...
- 性能测试监控平台Grafana的使用
Grafana的监控是基于数据库的,通过插件获取到服务器性能并存储到数据库中,然后使用Grafana连接数据库形成可视化的图表.本篇给大家介绍对服务器的性能的监控,下一篇会介绍对于mysql数据库的监 ...
- cAdvisor0.24.1+InfluxDB0.13+Grafana4.0.2搭建Docker1.12.3 Swarm集群性能监控平台
目录 [TOC] 1.基本概念 既然是对Docker的容器进行监控,我们就不自己单独搭建cAdvisor.InfluxDB.Grarana了,本文中这三个实例,主要以Docker容器方式运行. 本 ...
- 基于Prometheus和Grafana的监控平台 - 运维告警
通过前面几篇文章我们搭建好了监控环境并且监控了服务器.数据库.应用,运维人员可以实时了解当前被监控对象的运行情况,但是他们不可能时时坐在电脑边上盯着DashBoard,这就需要一个告警功能,当服务器或 ...
随机推荐
- 结构体struct,类class
1.struct,值类型,结构体会自动生成初始化方法,class是引用类型 struct Person { var name : String var age : Int func simpleDes ...
- as和强制类型转换的区别
之前一直以为as就是强制类型转换,只是as是AS3中新的语法,之前用在有继承关系的对象之间的转换也无甚区别,但是今天却让我领悟到了它俩之间的区别. 原起:今天要给ColorPicker控件动态赋值,它 ...
- Qt QLabel show 显示图像、填充、缩放
主要成员函数: 1.void setText(QString); //设置label框内的文本. 2.void hide(); //隐藏label框. 3.void setBuddy(QWidget* ...
- ArcGIS Server10.2忘记密码怎么办?重置ArcGIS Server Manager密码
忘记了ArcGIS Server Manager的密码不要慌张,下面简单的几步就可以重置密码. 第一步:找到ArcGIS Server的安装目录,然后找到..\ArcGIS\Server\tools\ ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-跳过测试用例(6)
初始化.跳过测试用例 # test_class_6.py import unittest from mock import mock from day_20200208_mooc.base.inter ...
- Java 9 新特性 – 内部类的方块操作符
方块操作符 ( <> ) 在 Java 7 中就引入了,目的是为了使代码更可读. 但是呢,这个操作符一直不能在匿名内部类中使用 Java 9 修正了这个问题,就是可以在匿名内部类中使用方块 ...
- t分布|F分布|点估计与区间估计联系|
应用统计学 推断统计需要样本形容总体,就要有统计量.注意必须总体是正态分布,否则统计量的分布不能得到.卡方分布和t分布只要样本大于30都近似于正态分布. t分布和F分布推导及应用(图): 总体比例是π ...
- HTML table表头固定
HTML table表头固定 说说我在最近项目中碰到的css问题吧,作为问题知识集合总结笔记: <!DOCTYPE html> <html> <head> < ...
- 图论初步-Tarjan算法及其应用
暑假刷了一堆Tarjan题到头来还是忘得差不多. 这篇博客权当复习吧. 一些定义 无向图 割顶与桥 (划重点) 图G是连通图,删除一个点表示删除此点以及所有与其相连的边. 若删除某点u后G不再连通,那 ...
- redis保存dataset
公司统一走redis缓存,也将之前的memcache迁移到redis碰到问题是redis的dataset缓存. memcache底层封装了dataset的序列化. 而redis引的DLL包,未支持.所 ...