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,这就需要一个告警功能,当服务器或 ...
随机推荐
- Qt uchar * 转 QImage
QImage(uchar * data, int width, int height, Format format) QImage(const uchar * data, int width, int ...
- java 数组的复制
java数组的复制分为数组地址的复制和值的复制 地址的复制: int []arrA={11,22,33,44}; //创建一个数组 int [] arrB=new int[5]; System.out ...
- IOC初始化销毁的2种实现方式
IOC初始化销毁的2种实现方式 1.bean内调用init-method 和destroy-method 2.通过注解实现@PostConstruct 和@PreDestroy ----------- ...
- 基于Springboot注解的策略模式
释义 策略模式和多态很相似 可以理解为定义了一个统一的接口,有许多不同的实现类,可以自由选择不同的实时类去执行. 实现 上代码: 定义一个统一的接口: [JavaScript] 纯文本查看 复制代码 ...
- Proto3:Arena分配指南
Arena分配是仅C++有的功能,在使用Protocol Buffer时,它可以帮助你优化你的内存使用,提高性能.在.proto文件中启用Arena分配会在生成的C++代码中添加处理Arena分配的额 ...
- 阿里云服务器上搭建seafile专业版
因为官方一键安装教程在阿里云服务器上无法安装,由于水平有限,无法解决,所以选择手动安装 参考资料: 1,.腾讯云搭建seafile服务器 2.How to Install Seafile with N ...
- TCPCopy 线上流量复制工具
TCPCopy是一种重放TCP流的工具,使用真实环境来测试互联网服务器上的应用程序. 一.描述: 虽然真实的实时流量对于Internet服务器应用程序的测试很重要,但是由于生产环境中的情况很负责,测试 ...
- PAT B1080 MOOC期终成绩(C++)
PAT甲级目录 | PAT乙级目录 题目描述 B1080 MOOC期终成绩 解题思路 可利用 map 将字符串型的学号转换为整型的序号,方便查找.输入全部成绩后,遍历每个学生同时计算最终成绩,然后将成 ...
- vagrant 虚拟机配置最佳实践
Mac VirtualBox Vagrant 管理虚拟机 这篇文章定位是在理解了 vagrant 相关概念之后,教你如何灵活玩转自己的虚拟机配置 本文为 @favoorr 常用的 Mac Virtua ...
- APP倒闭:你充值的钱会蒸发吗?
有一句说到吐,但却又不得不说的话:资本大潮退去,才知道谁在裸泳.随着资本寒冬的来临,互联网上众多看起来狂飙突进的项目却呈现迅速萎靡态势.尤其是众多具有互联网元素的油卡.洗衣.保洁等成为重灾区,其中不少 ...