首页 > 数据库 >Prometheus+Grafana+Jmeter监控服务器资源及中间件(Prometheus & node_exporter &mysql_exporter & Grafana)

Prometheus+Grafana+Jmeter监控服务器资源及中间件(Prometheus & node_exporter &mysql_exporter & Grafana)

时间:2024-01-31 15:24:41浏览次数:46  
标签:node 10.1 exporter Grafana Prometheus 10.10

一、Prometheus & node_exporter & Grafana 的原理

  1. Prometheus:Prometheus是一个开源的系统监控和报警工具包,它负责定时从各种数据源(如Node Exporter)中获取指标数据,并将其存储在自己的时间序列数据库中。Prometheus支持灵活的查询和报警功能,用户可以方便地对这些指标数据进行查询和分析,以及设置相关的报警规则。
  2. Node Exporter:Node Exporter是一个独立的组件,它负责收集目标节点(如服务器、主机或容器等)上的各种指标数据,如CPU、内存、磁盘、网络等,并将这些数据以Prometheus支持的格式暴露出来。Prometheus Server通过HTTP协议定时从Node Exporter中获取这些数据。
  3. Grafana:Grafana是一个开源的可视化平台,它可以与Prometheus无缝集成,将Prometheus中的指标数据以图表的形式展示出来。用户可以通过Grafana创建各种自定义的仪表板,以便更好地理解和分析系统的性能和行为。

这三个组件的结合使用可以实现全面的系统监控和可视化。具体来说,Prometheus负责收集指标数据,Node Exporter则提供指标数据的来源,而Grafana则负责将指标数据以图表的形式展示出来。这样,用户就可以通过Grafana方便地查看系统的各种指标数据,并对系统进行全面的监控和分析。

原理图:

二、环境与配置关系

环境与配置关系
ip 角色 系统
10.10.10.1 node_exporter Linux Centos7 4核
10.10.10.1 mysql_exporter Linux Centos7 4核
10.10.10.1 Prometheus Linux Centos7 4核
10.10.10.1 Grafana Linux Centos7 4核
10.10.10.1 redis_exporter Linux Centos7 4核

 

 

三、node_exporter介绍、下载、解压、启动

1、node_exporter介绍

  Node Exporter是Prometheus的一个指标数据收集组件,用于采集目标节点(如服务器、主机或容器等)的各种运行指标,如CPU、内存、磁盘、网络等。

  Node Exporter是由Prometheus官方提供并维护的,它是一个用Go语言编写的独立组件。它通过各种系统命令或者访问操作系统的接口来获取指标数据,然后将这些数据转换成Prometheus支持的格式并暴露出来。

2、下载node_exporter

下载地址:https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz

下载完成后,MobaXterm工具上传压缩包上传到【10.10.10.1】服务器的/root/ 目录中。

 

 

3、解压node_exporter

 

tar -xvzf node_exporter-1.7.0.linux-amd64.tar.gz 

4、启动node_exporter

node_exporter默认监听端口为9100,我们启动可以指定监听端口为:8100

nohup ./node_exporter --web.listen-address=:8100 &

查看进程

ps -ef |grep node_exporter

四、mysql_exporter介绍、下载、解压、启动

1、mysql_exporter介绍

MySQL Exporter是一个专门用于监控MySQL数据库的Prometheus Exporter。它可以提供有关MySQL的各种指标,以便对数据库进行全面、深入的分析和了解。

MySQL Exporter的工作原理是,通过查询MySQL服务器的状态变量、内存使用情况、锁状态、QPS等信息,将这些数据转换成Prometheus支持的格式并暴露出来。Prometheus Server通过HTTP协议定时从MySQL Exporter中获取这些数据,并将其存储在自己的时间序列数据库中。

2、下载mysql_exporter

下载地址:https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-amd64.tar.gz

下载完成后,MobaXterm工具上传压缩包上传到【10.10.10.1】服务器的/root 目录中。

3、解压mysql_exporter

tar -xzvf mysqld_exporter-0.15.1.linux-amd64.tar.gz 

4、启动mysql_exporter

mysql_exporter默认监听端口为9104,我们启动可以指定监听端口为:8200,新建my.cnf文件。

my.cnf 配置文件输入如下内容

启动mysql_exporter命令

./mysqld_exporter --config.my-cnf='/root/mysqld_exporter-0.15.1.linux-amd64/my.cnf' --web.listen-address=:8200 &

 

六、Prometheus下载,配置,启动

1、下载Prometheus

详见:Prometheus(普罗米修斯)常用exporter类下载地址大全

下载地址:prometheus-2.49.1.linux-amd64.tar.gz

下载完成后,MobaXterm工具上传压缩包上传到【10.10.10.1】服务器的/root  目录 

2、解压Prometheus

tar -xzvf prometheus-2.49.1.linux-amd64.tar.gz 

 

3、启动Prometheus及添加Node_exporter、redis_exporter、mysq_exporterl配置

Prometheus默认端口:9090,支持修改端口,进入 vi prometheus.yml 

 

进入 vi prometheus.yml ,分别追加Node_exporter 、mysq_exporterlredis_exporter配置如下内容(注意Yaml格式):

 

 

启动prometheus命令 -- 默认监听端口9090
./prometheus --config.file='/home/tools/prometheus/prometheus.yml' --web.listen-address='10.10.10/1:9090' &

 

进入http://10.10.10.1:9090/targets 查看 Prometheus 启动显示

 

 http://10.10.10.1:9090/metrics 、 http://10.10.10.1:8100/metrics 、 http://110.10.10.1:8200/metrics  地址查看收集数据源

 

七、Grafana下载,启动,配置数据源,导入模板

1、Grafana下载,启动,请参考此篇文章:【干货最详细】Jmeter + Grafana + InfluxDB 性能测试监控平台搭建 

2、Prometheus 配置数据源

进入 Configuration -> Data Sources ,点击 Prometheus 

 

 

 

导入服务器主机模板,选择模板ID:12633,导入Mysql监控模板,选择模板ID:17320,导入Redis监控模板,选择模板ID:11835

 

服务器资源展示

 数据库资源展示

 

 

标签:node,10.1,exporter,Grafana,Prometheus,10.10
From: https://www.cnblogs.com/ningy1009/p/17994300

相关文章

  • Prometheus结合Consul采集多个MySQL实例的监控指标
    本文主要介绍如何利用Prometheus官网提供的mysqld_exporter进行多MySQL实例的监控指标采集建议安装最新版的mysqld_exporter,因为从’2022-09-01’之后才支持多实例功能的。具体的官网说明详见 Supportforscrapingmultiplemysqldhosts(#651)[1]ok,开始今天的教程~1、下载安......
  • 07.搭建prometheus
    yaml文件内容及权限:global:scrape_interval:15s#定义抓取指标的时间间隔evaluation_interval:15s#定义评估规则的时间间隔scrape_configs:-job_name:'prometheus'#设置监控任务的名称static_configs:#定义静态目标配置-targets:['localhost:9......
  • prometheus+alertmanager告警消息对接企业微信、飞书、钉钉
    前言  很多公司都在使用prometheus作为监控,并使用alertmanager发送告警消息,然而有的公司内部通讯软件使用的是企业微信,或者是飞书,或者是钉钉,那么如何让监控告警消息发送到这些通讯软件呢。  本文主要通过讲解自己开发的工具alertmanager-webhook来实现该功能,该工具已经支持......
  • prometheus 配置文件汇总
    prometheusprometheus.yaml#myglobalconfigglobal:scrape_interval:15s#Setthescrapeintervaltoevery15seconds.Defaultisevery1minute.evaluation_interval:15s#Evaluaterulesevery15seconds.Thedefaultisevery1minute.#scrape_......
  • Prometheus 主机监控管理模板
    systemd管理node_exporterhttps://prometheus.io/download/#node_exporterwgethttps://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz~]#tar-xfnode_exporter-1.7.0.linux-amd64.tar.gznode_exporter-1.7.......
  • grafana版本升级
    将grafana从8.0升级到8.0.7#下载新版本wgethttps://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/Packages/grafana-8.0.7-1.x86_64.rpm--no-check-certificate#停止grafana服务,并进行备份systemctlstopgrafana-servercp-rp/var/lib/grafana/var/lib/grafana_2024012......
  • prometheus服务发现
    基于文件的自动发现JSON或者yaml的文件都可以,[{"targets":["localhost:8080"],"labels":{"env":"localhost","job":"cadvisor"}},{"targets":["l......
  • Kubernets安装Prometheus
    安装在目标集群上,执行如下命令:kubectlapply-fhttps://github.com/512team/dhorse/raw/main/conf/kubernetes-prometheus.yml使用1.在浏览器访问地址:http://master_ip:30000,如下图所示:2.查看k8s自带的指标数据,如下图所示:3.点击“Execute”按钮,并切换到“Graph”选项卡,......
  • grafana密码忘记
    说明:K8S部署的grafana1.找到grafana.db和sqlite3位置 2.修改密码 /usr/bin/sqlite3/data/grafana/grafana.db.tables查看表select*fromuser; 查看用户updateusersetpassword='59acf18b94d7eb0694c61e60ce44c110c7a683ac6a8f09580d626f90f4a242000746579358......
  • prometheus告警
    Alermanager特性Alermanager除了提供基本的告警通知能力外,还提供了分组,一直,静默等告警特性分组分组机制可以将详细的告警信息合并成一个通知。在某些情况下,比如由于系统宕机导致大量的告警被同时触发,在这种情况下分组机制可以将这些被触发的告警合并为一个告警通知,避免一次......