使用 Docker 部署 Prometheus + Grafana 监控平台

news2024/11/26 22:47:41

使用 Docker 部署 Prometheus + Grafana 监控平台

默认docker 已经安装好,我使用的是CentOS7

注意一定要开启服务器对应的端口

1. 安装Prometheus

docker run -itd --name=prometheus --restart=always -p 9090:9090 prom/prometheus

image-20230808101033449

访问:http://ip:9090

image-20230808101421257

2.安装Grafana

#这里的$PWD就是你的当前位置,我当前位置在/root,那么grafana-storage就会生成在/root下
docker run -itd --name=grafana \
> --restart=always \
> -p 3000:3000 \
> -v $PWD/grafana-storage:/var/lib/grafana \
> grafana/grafana

image-20230808101909595

访问:http://ip:3000

账号密码都是admin

image-20230808102011319

登录进来后此处可以修改密码

image-20230808102158030

3. 安装Node_exporter

因为Prometheus 本身不具备监控功能,所以想要通过Prometheus 收集数据的话,需要安装对应的exporter。

docker run -itd --name=node-exporter \
--restart=always \
-p 9100:9100 \
-v "/proc:/host/proc:ro" \
-v "/sys:/host/sys:ro" \
-v "/:/rootfs:ro" \
prom/node-exporter

image-20230808102618497

http://ip:9100/metrics

image-20230808102735852

4. 配置 Prometheus 监控Node节点

4.1 修改Prometheus主配置文件

先将配置文件拷贝出来

#  $PWD 当前目录在/root
docker cp prometheus:/etc/prometheus/prometheus.yml $PWD

image-20230808102916846

在Prometheus配置文件按以下内容修改:

# my global config
global:
  scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

# Alertmanager configuration
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]
  - job_name: linux
    static_configs:
    - targets: ['Node_exporter所在ip:9100']         #被监控端的IP地址和端口号(有多个被监控端可用 逗号 隔开)
      labels:
        instance: linux01  #示例名称随便起

image-20230808103432319

修改完成后在拷贝回去

docker cp $PWD/prometheus.yml prometheus:/etc/prometheus/prometheus.yml

重启prometheus,使配置生效

docker restart prometheus

5. 配置prometheus+Grafana

使用浏览器访问http:/ /ip:3000来将Node节点监控

  1. 添加数据源

    image-20230808104015355

  2. 选择prometheus数据源

    image-20230808104048785

  3. 配置数据源

    image-20230808104235436

  4. 滑动到底部保存

    image-20230808104356587

  5. 找到我们配置的数据源

    image-20230808104704014

  6. 为该数据源 导入仪表盘,当然你可以用自己创建

    image-20230808105119632

    image-20230808105139562

  7. 导入仪表盘

    模板网站https://grafana.com/grafana/dashboards/

    image-20230808105319659

    打开模板网站找到自己喜欢的仪表盘导入即可

    因为我们现在只导出了Node_exporter,所以找Node_exporter仪表盘就行了

    image-20230808105558397

    复制仪表盘id

    image-20230808105646174

    粘贴回来导入

    image-20230808105733534

  8. 为仪表板选择数据源

    image-20230808105834472

  9. 导入成功

    image-20230808105901369

    image-20230808105912805

6. 配置 Prometheus 监控Mysql

  • 我们可以直接在Grafana通过配置数据源的方式监控mysql
  • 也可以通过为Prometheus配置mysql_exporter,Grafana通过Prometheus数据(本次采用)
  • mysql对应账号一定要开启远程访问
  1. 下载mysqld_exporter

    #下载
    wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.13.0/mysqld_exporter-0.13.0.linux-amd64.tar.gz
    #解压到当前目录
    tar -zxvf mysqld_exporter-0.13.0.linux-amd64.tar.gz
    
  2. 解压

    mv mysqld_exporter-0.13.0.linux-amd64 /usr/local/mysql_exporter
    cd /usr/local/mysql_exporter
    
  3. 配置

    vim /usr/local/mysql_exporter/.my.cnf
    
    [client]
    host=mysql地址
    port=3306
    user=root
    password=xxxx
    
  4. 启动

    nohup /usr/local/mysql_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysql_exporter/.my.cnf  &
    
  5. 访问测试http://ip:9104/metrics

    image-20230808115453331

  6. 修改Prometheus主配置文件 参考4.1章节,配置完成cp回去,然后重启Prometheus

      - job_name: mysql
        static_configs:
        - targets: ['ip:9104']         #被监控端的IP地址和端口号(有多个被监控端可用 逗号 隔开)
          labels:
            instance: mysql01
    

    image-20230808115855997

  7. 检查Prometheus检测mysql是否成功 http://34.92.127.194:9090/

    image-20230808163046636

  8. 导入mysql 仪表盘

    模板网站https://grafana.com/grafana/dashboards/

    搜索mysql

    image-20230808140352789

    复制id,导入仪表盘,导入方法参照之前导入nodeNode_exporter

    image-20230808142745589

    image-20230808143344427

7. todo 整合AlertManager实现报警微信/邮件推送

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/847757.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【AGC】付费下载上架下载后无法安装问题

【关键字】 AGC、付费下载、应用安装 【问题描述】 有开发者反馈用户下载后无法安装&#xff0c;采用未接入sdk&#xff0c;直接勾选付费-产品上架的方案&#xff0c;以前其他产品是能够正常安装的&#xff0c;现在不知道为啥。 报错信息&#xff1a;付费后显示“订单创建失…

对等离子体的认识

认识等离子体等离子体的产生等离子体的定义等离子体并不远 认识等离子体 等离子体的产生 物质由一百多种元素组成&#xff0c;不同元素结合成各种分子。大量的分子又依靠某种作用力结合或凝聚在一起&#xff0c;由于作用力的强弱不等而表现为各种不同的存在状态。 物质的存在状…

【数学基础】矩阵行列式

行列式意义是什么&#xff1f; 行列式等于它的各个列对应的向量张成的平行2n面体的体积&#xff0c;这是因为行列式是一个交替多重线性形式&#xff0c;而我们通常理解的欧式空间中的体积也是这样一个函数&#xff08;单位立方体体积为1&#xff0c;沿某条边扩大c倍体积就扩大…

利用openTCS实现车辆调度系统(六)openTCS订单的使用

运输订单 由类的实例表示&#xff0c;描述了由车辆执行的进程。 通常&#xff0c;此过程是货物从一个地点到另一个地点的实际运输。 然而&#xff0c;A也可以只描述车辆到目的地位置的运动以及要执行的可选车辆操作。TransportOrderTransportOrder 以下所有内容都是 openTCS …

从源码层面深度剖析Spring循环依赖 | 京东云技术团队

以下举例皆针对单例模式讨论 图解参考 https://www.processon.com/view/link/60e3b0ae0e3e74200e2478ce 1、Spring 如何创建Bean&#xff1f; 对于单例Bean来说&#xff0c;在Spring容器整个生命周期内&#xff0c;有且只有一个对象。 Spring 在创建 Bean 过程中&#xff0…

DT昆虫绑定学习(没蒙皮)

SelectEdgeLoopSp; ConvertSelectionToVertices;selectType -ocm -alc false; selectType -ocm -polymeshVertex true; CreateCluster; 连接到物体 global proc matchTrns() { string $mtr[] ls -sl; if (size($mtr) < 2){ warning "MUST select 2 objects!"…

【C++】开源:ceres和g2o非线性优化库配置使用

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍ceres和g2o非线性优化库配置使用。 无专精则不能成&#xff0c;无涉猎则不能通。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&…

抖音里面怎么把图片做成动态图片?在线gif生成工具分享

刷抖音的时候&#xff0c;很多人在制作一些老照片&#xff0c;一些静态的照片经过制作能变成动态的照片&#xff0c;许多朋友都不知道怎么将图片做成gif&#xff0c;下面就来为大家分享一下gif动态图片制作的方法&#xff0c;利用在线gif生成&#xff08;https://www.gif.cn&am…

论文分享--On the Difficulty of Evaluating Baselines A Study on Recommender Systems

与基线比较的数值评估在判断推荐系统中的研究时起着核心作用。在本文中,我们证明了正确运行基线是困难的。我们在两个广泛研究的数据集上证明了这个问题。首先,我们表明,在过去五年中,在许多出版物中使用的基线对Movielens 10M基准的结果是次优的。通过仔细设置一个普通矩阵…

Python远程ssh登录机器检查机器信息

文章目录 Python远程ssh登录机器检查机器信息check_env.sh和hosts.yaml文件如下演示 Python远程ssh登录机器检查机器信息 需要在hosts.yaml文件中中输入ssh主机名&#xff0c;端口&#xff0c;用户名&#xff0c;密码使用python3环境&#xff0c;执行python3 check_env.py为了…

兼容性测试的正确打开方式

前几天在我创建的技术交流群&#xff0c;几位同学聊起了兼容性测试相关的话题。有测试的方法技巧&#xff0c;有如何选择测试时的切入点&#xff0c;也有在质量和投入成本之间如何做平衡的思考。 翻了翻写过的技术文章&#xff0c;大多集中在后端、中间件以及稳定性测试方面&a…

评估软件缺陷优先级的6个维度

我们在软件开发中&#xff0c;团队往往面临多个任务&#xff0c;尤其是缺陷任务&#xff0c;如果不对缺陷任务进行优先级排序&#xff0c;按部就班地解决缺陷&#xff0c;那么一旦严重缺陷不能及时解决&#xff0c;往往会对项目造成较大影响&#xff0c;甚至直接影响项目进度。…

处理器方法的参数与返回值

文章目录 前言案例 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 可以简化代码的重复性和冗长性 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 案例 新建controller类代码&#xff1a; Controller public class Parameter…

高忆管理:1800亿投资大佬投降,被散户所逼?美联储释放重磅信号

美国散户“逼疯”华尔街传奇大佬。 美国散户投资者又掀起了一场“逼空”大战。当地时刻8月6日&#xff0c;彭博社报导&#xff0c;华尔街对冲基金传奇人物Dan Loeb在一份信函中清晰向客户标明&#xff0c;他作为做空个股“大赌徒”的日子现已完毕了。当时美股商场的卖空环境“比…

LVS—DR集群的搭建

lvs-dr模式工作原理&#xff1a; 首先&#xff0c;来自客户端计算机CIP的请求被发送到Director的VIP。其次Director使用相同的VIP目的IP地址将请求发送到集群节点或真实服务器。然后&#xff0c;集群某个节点将回复该数据包&#xff0c;并将该数据包直接发送到客户端计算机&am…

有没有必要换cspm?未来的发展前景如何?

最近 CSPM 证书很热门&#xff0c;CSPM 相关问题大家都很关心&#xff0c;今天本橘座就给大家全面解答一下 CSPM到底是何方神圣&#xff1f; 文章主要是解答下面几个常见问题&#xff0c;其他问题可以留言或者私信咨询我哦~ 一、什么是 CSPM证书&#xff1f;跟PMP是什么关系&a…

1.Mysql允许远程连接访问

打开编辑器&#xff0c;输入以下sql语句 use mysql; select * from user; update user set Host % where Host localhost and Userroot;

【Ubuntu】安装docker,docker compose 以及部署一个docker应用

大家好&#xff01;在过去&#xff0c;已经分享了很多有关通过Docker部署应用的内容。今天&#xff0c;我将为大家详细介绍如何在Ubuntu系统上部署最新的Docker平台。 Docker是什么 Docker是一个开源的容器化平台&#xff0c;它允许您将应用程序及其所有依赖项打包到称为容器…

【小程序】Canvas 画布分享海报

成品效果图 可以通过切换下面图片形成不同的海报背景分享图 <template><view>// type"2d"必须加<canvas type"2d" :style"{width:Artwidth px,height:Artheight px, margin:0 auto}" canvas-id"firstCanvas"id&quo…

微前端初识

文章目录 微前端的发展历史微前端的定义微前端的特点使用微前端面临的挑战微前端常用技术方案及优缺点路由分发式微前端iframesingle-spaqiankunwebpack5: module federationWeb Component 微前端的发展历史 微前端在2016年首次出现在TWTR&#xff08;ThoughtWorks Technology…