docker 搭建基于prometheus的监控体系步骤实现

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享
免费资源网 – https://freexyz.cn/

目录1.启动prometheus容器服务2.启动成功后,公网访问该9090端口进入普罗米修斯主页3.部署mysqld-exporer监控mysql数据库(想监控什么就部署对应的exporter即可)4.重启prometheus服务5.访问prometheus主页查看mysql的监控6.将监控数据通过grafana面板展示

Prometheus是一个时间序列数据库。但是,它不仅仅是一个时间序列数据库。

它涵盖了可以绑定的整个生态系统工具集及其功能。

Prometheus主要用于对基础设施的监控。包括服务器,数据库,VPS,几乎所有东西都可以通过Prometheus进行监控。Prometheus希望通过对Prometheus配置中定义的某些端点执行的HTTP调用来检索度量标准。

普罗米修斯的主要特点是:

1. 一个多维数据模型,其中包含通过度量标准名称和键/值对标识的时间序列数据

2.PromQL,一种灵活的查询语言 ,可利用此维度

3.不依赖分布式存储;单服务器节点是自治的

4.时间序列收集通过HTTP上的拉模型进行

5.通过中间网关支持推送时间序列

6.通过服务发现或静态配置发现目标

7.多种图形和仪表板支持模式

需要下载镜像:

prom/mysqld-exporter(监控mysql)prom/prometheusprom/node-exporter(监控node节点整机状态)

prometheus原理

docker 搭建基于prometheus的监控体系步骤实现插图

1.启动prometheus容器服务

启动前需要先手动在当前目录下创建prometheus.yml文件:touch prometheus.yml,不然会报挂在文件创建失败的错误,因为docker run时默认创建的挂载点是目录,不是文件。

docker run -d –name prometheus -p 9090:9090 -v ${PWD}/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus

docker 搭建基于prometheus的监控体系步骤实现插图1

2.启动成功后,公网访问该9090端口进入普罗米修斯主页

docker 搭建基于prometheus的监控体系步骤实现插图2

3.部署mysqld-exporer监控mysql数据库(想监控什么就部署对应的exporter即可)

a.先部署mysql服务(有监控对象)

docker run -d –name my-mysql -v /home/gaofei/test/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1qaz9ol. -p 8888:3306 mysql:5.5

b.进入prometheus.io/download下载对应的exporter

docker 搭建基于prometheus的监控体系步骤实现插图3

docker run -d –name mysql-exporter -p 9104:9104 -e DATA_SOURCE_NAME=”root:1qaz9ol.@(mysql主机ip:888)/mysql” prom/mysqld-exporter

docker 搭建基于prometheus的监控体系步骤实现插图4

配置prometheus.yml文件

global:
scrape_interval: 15s
evaluation_interval: 15s

rule_files:
– rules/*.rules

scrape_configs:
– job_name: prometheus
scrape_interval: 5s
static_configs:
– targets: [localhost:9090]

– job_name: node_exporter
scrape_interval: 10s
static_configs:
– targets: [ip:9100]

– job_name: mysql
scrape_interval: 10s
static_configs:
– targets: [ip:9104]

4.重启prometheus服务

docker restart prometheus

5.访问prometheus主页查看mysql的监控

docker 搭建基于prometheus的监控体系步骤实现插图5

docker 搭建基于prometheus的监控体系步骤实现插图6

点击mysql—show more

docker 搭建基于prometheus的监控体系步骤实现插图7

由上可见,是通过一个metrics的接口来传输数据的,此时mysql和node都处于可监控的状态了。

6.将监控数据通过grafana面板展示

a.启动grafana服务

docker run -d –name=grafana -p 3000:3000 grafana/grafana

b.访问grafana首页(默认用户和密码:admin/admin)

docker 搭建基于prometheus的监控体系步骤实现插图8

c.选择数据源

docker 搭建基于prometheus的监控体系步骤实现插图9

docker 搭建基于prometheus的监控体系步骤实现插图10

docker 搭建基于prometheus的监控体系步骤实现插图11

只需要配置URL即可

docker 搭建基于prometheus的监控体系步骤实现插图12

d.制作对应服务的仪表盘

docker 搭建基于prometheus的监控体系步骤实现插图13

docker 搭建基于prometheus的监控体系步骤实现插图14

将id粘贴后点击load

docker 搭建基于prometheus的监控体系步骤实现插图15

docker 搭建基于prometheus的监控体系步骤实现插图16

点击import

docker 搭建基于prometheus的监控体系步骤实现插图17

同理配置node-exporter监控

grafana中搜索

docker 搭建基于prometheus的监控体系步骤实现插图18

docker 搭建基于prometheus的监控体系步骤实现插图19

配置好grafana面板后发现没有数据

docker 搭建基于prometheus的监控体系步骤实现插图20

是因为在服务端没有启动node-exporter 服务,直接下载二进制文件然后启动(方便,因为node_exporter设计用于监控主机系统。不建议将其部署为Docker容器,因为它需要访问主机系统)

docker 搭建基于prometheus的监控体系步骤实现插图21

将该文件上传至宿主机后,执行以下1,2,3步,可使用nohup./node_exporter–web.listen-address=”:9100″


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞10 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容