• 【七】jmeter5.5+influxdb2.0+prometheus+grafana


    参考文章:https://blog.csdn.net/wenxingchen/article/details/126892890
    https://blog.csdn.net/Zuo19960127/article/details/119726652
    https://blog.csdn.net/shnu_cdk/article/details/132182858 promethus参考

    由于自己下载的是infuldb2.0,所以按照上面两个步骤走不通,做了如下修改,前提
    目前jmeter5.6.3还不支持,但是至少要求要求5.5,所以我弄好了一个有插件的5.5。下载地址为:
    链接: https://caiyun.139.com/m/i?0r5CL9eLSTnvg 提取码:tB38

    安装influxdb v2.0

    使用docker安装

    docker pull influxdb    # 拉取最新latest,我操作的时候2.7.8
    
    • 1

    运行infulxdb

    cd /var/lib
    docker run --name=influxdb -p 8086:8086 -v $PWD:/var/lib/influxdb -d influxdb
    
    • 1
    • 2

    访问:http://ip:8086/ 进入管理界面,点击Get Started

    输入admin、两次密码,后面这两个可以保持与上面一致,点击continue,再点击第三个绿色按钮config later


    点击view more,点击api tokens,点击GENERATE API TOKEN,选择第一个选项。
    在这里插入图片描述
    输入jmeter-Tocken, 点击保存
    在这里插入图片描述
    因为token只展示一次,所以要复制保存好。
    在这里插入图片描述

    配置jmeter5.5

    添加线程组-http请求-后端监听器,选择和填入如下:
    后端监听器实现选择第三个,influxdbUrl输入:http://ip:8086/api/v2/write?org=org-jmeter&bucket=jmeter 这后面两个参数就是进入页面时配置的
    在这里插入图片描述

    线程组先配置个500,然后http请求随便填个比如www.baidu.com,再进入influxdb web界面,点击data explorer, 选择jmeter,一开始什么都没有,现在运行jmeter的线程组
    在这里插入图片描述
    在这里插入图片描述
    刷新页面,如果数据写入成功,就会出现下面的选项
    在这里插入图片描述

    勾选后,点击右上角的submit,就会出现图形,上面会显示请求的线程数

    安装grafana

    docker pull grafana
    docker run --name grafana -p 3000:3000 -d grafana/grafana
    
    • 1
    • 2

    访问: http:ip:3000 ,初始登录账号admin,密码admin,登录成功后修改密码。进入首页后,点击add your first data source
    在这里插入图片描述
    由于influxdb当前是2.0版本,所以选择influxdb后,进入填写界面,name可以随便填,第二个红框要选择Flux,第三个URL,第五个打开
    第六个值的格式
    header:Authorization,
    value:Token W6__WKMiPJq5vAeZSk6Da_0Pv5VVmfnf-J6fut7QP3-0q3k41bOdcorBlZkk86lZQS2FOkT-F_-f93FwHXq0fg==, 中间有空格,Token也是固定的,后面就是自己的配置的api token值。
    Organization是登录是输入的,bucket也是,如果忘记了,填写jmeter的时候也有http://ip:8086/api/v2/write?org=org-jmeter&bucket=jmeter
    在这里插入图片描述
    在这里插入图片描述
    保存并测试,结果应该是绿色的,提示有一个bucket。

    配置grafana模板,https://grafana.com/grafana/dashboards/?search=jmeter
    选择:https://grafana.com/grafana/dashboards/13644-jmeter-load-test-org-md-jmeter-influxdb2-visualizer-influxdb-v2-0-flux/,复制id

    在这里插入图片描述
    进入grafana,点击右上角的+号,点击import dashboard,进入下一个页面,输入id,点击load
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    然后机会进入到这个页面,一开始是空白的,点击保存按钮,保存一下,运行jmeter后就会出现数据,我之前跑过了,选时间就可以出现数据,最终结果如图。
    在这里插入图片描述

    安装Prometheus

    在监控主机上操作

    两种安装方式,通过wget或者从网站安装包下载地址:https://github.com/prometheus/prometheus ,版本自己找合适的,下载到win本地上传到linux服务器,本文采用上传方式,上传过程需要注意文件夹目录,默认是根目录,可以通过mv指令移动文件,也可以直接选择/usr/local文件夹上传文件。若选择移动则使用如下指令:

    mv prometheus-2.45.4.linux-amd64.tar.gz /usr/local
    cd /usr/local
    tar -xvf prometheus-2.45.4.linux-amd64.tar.gz
    mv prometheus-2.45.4.linux-amd64/ prometheus
    cd prometheus
    ./prometheus --config.file=/usr/local/prometheus/prometheus.yml
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    这样就启动了:去 http://ip:9090/targets?search= ,能看到就可以了
    在这里插入图片描述
    设置开机自启动:

    vim /etc/systemd/system/prometheus.service
    
    • 1

    复制黏贴下面的,黏贴进去保存

    [Unit]
    Description=Prometheus Monitoring System
    Documentation=Prometheus Monitoring System
     
    [Service]
    ExecStart=/usr/local/prometheus/prometheus \
      --config.file=/usr/local/prometheus/prometheus.yml \
      --web.listen-address=:9090
    Restart=on-failure
    [Install]
    WantedBy=multi-user.target
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    执行下面语句

    systemctl daemon-reload
    systemctl enable prometheus
    systemctl start prometheus
    systemctl status prometheus
    
    • 1
    • 2
    • 3
    • 4

    这样就可以了
    在这里插入图片描述

    安装 node-exporter

    在被监控服务器操作
    https://github.com/prometheus/node_exporter/releases 下载自己合适的

    然后其他步骤跟上面安装Prometheus差不多,改个包名即可。

    cd node_exporter
    ./node_exporter
    
    • 1
    • 2

    进入http://被监控的服务器ip:9100/metrics,有数据打印出来就是成功的

    设置开机自启动

    vim /etc/systemd/system/node_exporter.service
    
    • 1

    复制下面黏贴进去保存

    [Unit]
    Description=node_exporter
    After=network.target 
     
    [Service]
    ExecStart=/usr/local/node_exporter/node_exporter
    Restart=on-failure
     
    [Install]
    WantedBy=multi-user.target
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    执行下面语句

     systemctl daemon-reload
     systemctl enable node_exporter
     systemctl start node_exporter
     systemctl status node_exporter
    
    • 1
    • 2
    • 3
    • 4

    到这再去刷一下网站,正常
    在这里插入图片描述
    切换服务器到监控主机上

    cd /usr/local/prometheus
    vim prometheus.yml
    
    • 1
    • 2

    在scrape_configs标签下,添加以下内容,配置监控

    - job_name: 'backend'     # 名字自己取
        static_configs:
        - targets: ['192.168.93.101:9100']
          labels:
            instance: Linux
    
    • 1
    • 2
    • 3
    • 4
    • 5

    如下
    在这里插入图片描述

    systemctl restart prometheus
    
    • 1

    在这里插入图片描述

    配置grafana

    进入data sources,然后点击add new data source,选择Prometheus,输入url,点击保存,提示成功即可。
    在这里插入图片描述

    然后根据之前同样的操作,我添加id为11074的dashboard。
    最后结果为
    在这里插入图片描述

  • 相关阅读:
    二十、SpringBoot + Jwt + Vue 权限管理系统(1)
    Cholesterol胆固醇参数说明及相关研究
    Android 导航之Navigation 组件的介绍与使用
    用python实现基本数据结构【02/4】
    TCP 和UDP通信流程
    csrf跨站请求伪造,csrf相关的装饰器,auth认证模块,auth_user表切换,基于django中间件设计项目功能
    「运维有小邓」EventLog Analyzer实时告警通知
    springboot个性化课程推荐系统毕业设计源码131805
    Elasticsearch和sboot整合
    Shell 结构化命令
  • 原文地址:https://blog.csdn.net/weixin_42916710/article/details/138074009