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

 更新时间:2022年05月10日 10:46:32   作者:chuntian_tester  
本文主要介绍了docker 搭建基于prometheus的监控体系步骤实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

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

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

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

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

1. 一个多维数据模型,其中包含通过度量标准名称和键/值对标识的时间序列数据
2.PromQL,一种灵活的查询语言 ,可利用此维度
3.不依赖分布式存储;单服务器节点是自治的
4.时间序列收集通过HTTP上的拉模型进行
5.通过中间网关支持推送时间序列
6.通过服务发现或静态配置发现目标
7.多种图形和仪表板支持模式

需要下载镜像:

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

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

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

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 run -d --name mysql-exporter -p 9104:9104 -e DATA_SOURCE_NAME="root:1qaz9ol.@(mysql主机ip:888)/mysql" prom/mysqld-exporter

配置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的监控

点击mysql---show more

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

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

a.启动grafana服务

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

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

c.选择数据源

只需要配置URL即可

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

将id粘贴后点击load

点击import

同理配置node-exporter监控

grafana中搜索

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

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

将该文件上传至宿主机后,执行以下1,2,3步,可使用nohup./node_exporter--web.listen-address=":9100"&命令后台启动

启动后公网访问9100端口即可验证是否可用

然后再访问grafana中node-exporter就有node宿主机的系统监控数据了

OK,

大功告成

后期可结合jmeter使用,可以边压测,边观察服务资源利用率等数据~~~~~

到此这篇关于docker 搭建基于prometheus的监控体系步骤实现的文章就介绍到这了,更多相关docker搭建prometheus内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • dockerfile发布springboot项目实践

    dockerfile发布springboot项目实践

    使用Docker的其中一个目的,是为了更加简单,方便的部署我们编写的服务,本文主要介绍了dockerfile发布springboot项目实践,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • Docker容器部署consul的详细步骤

    Docker容器部署consul的详细步骤

    Consul 是一个支持多数据中心分布式高可用的 服务发现和配置共享 的服务软件,接下来通过本文给大家介绍Docker consul部署的详细过程,需要的朋友可以参考下
    2022-02-02
  • Deepin使用docker安装mysql数据库过程详解

    Deepin使用docker安装mysql数据库过程详解

    这篇文章主要介绍了Deepin使用docker安装mysql数据库过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • Docker搭建Harbor公开仓库的方法示例

    Docker搭建Harbor公开仓库的方法示例

    这篇文章主要介绍了Docker搭建Harbor公开仓库的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • Docker Machine深入学习

    Docker Machine深入学习

    Docker与Docker Machine 的区别?又如当我们执行docker-machine create命令时,Docker Machine都做了些什么?这篇文章都会告诉大家,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Docker 常用命令详细整理

    Docker 常用命令详细整理

    这篇文章主要介绍了Docker 常用命令详细整理的相关资料,需要的朋友可以参考下
    2017-05-05
  • 详解SpringBoot项目docker环境运行时无限重启问题

    详解SpringBoot项目docker环境运行时无限重启问题

    这篇文章主要介绍了详解SpringBoot项目docker环境运行时无限重启问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 教你如何从正在运行的容器创建 Docker 映像

    教你如何从正在运行的容器创建 Docker 映像

    这篇文章主要介绍了如何从正在运行的容器创建 Docker 映像,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02
  • Docker容器迁移到其他服务器的5种方法详解

    Docker容器迁移到其他服务器的5种方法详解

    这篇文章主要介绍了Docker容器迁移到其他服务器的5种方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • Docker常见命令整理汇总(包括镜像命令、容器命令)

    Docker常见命令整理汇总(包括镜像命令、容器命令)

    这篇文章主要给大家介绍了关于Docker常见命令整理汇总的相关资料,包括镜像命令、容器命令等等,通过一个个示例来加深各位看官对docker相关命令的理解以及记忆,需要的朋友可以参考下
    2022-07-07

最新评论