Prometheus部署及linux、mysql、monog、redis、RocketMQ、java_jvm监控配置

ops/2025/1/23 19:38:10/

Prometheus部署及linux、mysql、monog、redis、RocketMQ、java_jvm监控配置

    • 1.Prometheus部署
      • 1.2.Prometheus修改默认端口
    • 2.grafana可视化页面部署
    • 3.alertmanager部署
    • 4.监控配置
      • 4.1.主机监控node-exporter
      • 4.2.监控mysql数据库mysqld_exporter
      • 4.3.监控mongod数据库mongodb_exporter
      • 4.4.监控redis-redis_exporter
      • 4.5.监控RocketMQ-rocketmq-exporter
      • 4.6.监控java程序

1.Prometheus部署

  1. 到官网中进行下载安装后上传到服务器,或者直接执行命令进行下载:https://prometheus.io/download/
wget https://github.com/prometheus/prometheus/releases/download/v3.1.0/prometheus-3.1.0.linux-arm64.tar.gz
  1. 安装包下载成功后输入命令进行解压即可;
tar xvf prometheus-3.1.0.linux-arm64.tar.gz
#移动修改一下目录名字,也可以不修改
mv prometheus-3.1.0.linux-arm64 prometheus

在这里插入图片描述
在这里插入图片描述
3. 编写启动脚本,在prometheus目录中创建start.sh脚本文件;

cd prometheus/
vim start.sh

在文件中插入以下内

nohup ./prometheus --config.file=prometheus.yml > log 2>&1 &

以后需要启动的时候,执行这个脚本即可;
prometheus默认端口是9090,通过浏览器访问 http://IP:9090即可;

  1. 配置解析

如图默认的配置如下:

#全局配置
global:scrape_interval: 15s #设置抓取数据的时间间隔,默认1分钟evaluation_interval: 15s #设置执行告警规则的时间间隔,默认1分钟#告警配置
alerting:alertmanagers:- static_configs:- targets:# - alertmanager:9093 #配置告警服务的ip和端口#告警规则和阈值的配置
rule_files:# - "first_rules.yml"# - "second_rules.yml"#收集数据配置
scrape_configs:- job_name: "prometheus" #设置收集数据的job名字,名字不能重复# metrics_path defaults to '/metrics'# scheme defaults to 'http'.static_configs:- targets: ["localhost:9090"] #prometheus的服务job
#示例:
#需要添加其他的数据采集任务时就在下面加一个job,如:- job_name: "centos"      static_configs:- targets: ["192.168.1.111:9100"]

1.2.Prometheus修改默认端口

修改默认端口方法
如果需要修改默认端口,则可以在启动时增加参数--web.listen-address=":端口号",其他的job服务也可以通过这种方式修改默认端口:

注意:
需要注意的是修改了默认的端口后,要到prometheus.yml文件中将对应的job – targets的值修改为与之对应的;

--web.listen-address=":端口号"
#如:--web.listen-address=":8080"

在这里插入图片描述

2.grafana可视化页面部署

  1. 到官网中进行下载安装后上传到服务器,或者直接执行命令进行下载:https://grafana.com/grafana/download
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-11.4.0.linux-amd64.tar.gz
  1. 安装包下载成功后输入命令进行解压即可;
tar xvf grafana-enterprise-11.4.0.linux-amd64.tar.gz
#移动修改一下目录名字,也可以不修改
mv grafana-enterprise-11.4.0.linux-amd64 grafana
  1. 编写启动脚本,在prometheus目录中创建start.sh脚本文件;
cd grafana/
vim start.sh

在文件中插入以下内

nohup grafana server --config=./conf/defaults.ini > log 2>&1 &

以后需要启动的时候,执行这个脚本即可;
grafana默认端口是3000,通过浏览器访问 http://IP:grafana即可;
默认账号:admin
密码:admin

3.alertmanager部署

后续补充

4.监控配置

4.1.主机监控node-exporter

  1. 到官网中进行下载安装后上传到服务器,或者直接执行命令进行下载:node_exporter-1.8.2.linux-amd64.tar.gz
wget https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz
  1. 安装包下载成功后输入命令进行解压即可;
tar xvf node_exporter-1.8.2.linux-amd64.tar.gz
#移动修改一下目录名字,也可以不修改
mv node_exporter-1.8.2.linux-amd64 node_exporter
  1. 编写启动脚本,在prometheus目录中创建start.sh脚本文件;
cd node_exporter/
vim start.sh

在文件中插入以下内

# --web.listen-address=":9191"用来修改默认端口
nohup ./node_exporter --web.listen-address=":9191" > log 2>&1 &

服务启动后只需要将服务地址端口加入到prometheus.yml配置文件中即可,重启Prometheus即可,如图:
编辑文件并插入内容;

vim prometheus.yml
- job_name: "centos"static_configs:- targets: ["192.168.1.23:9191"]

在这里插入图片描述

4.2.监控mysql数据库mysqld_exporter

  1. 到官网中进行下载安装后上传到服务器,或者直接执行命令进行下载:mysqld_exporter
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-amd64.tar.gz
  1. 安装包下载成功后输入命令进行解压即可;
tar xvf mysqld_exporter-0.15.1.linux-amd64.tar.gz
#移动修改一下目录名字,也可以不修改
mv mysqld_exporter-0.15.1.linux-amd64 mysqld_exporter
  1. 编写mysql相关的配置信息
vim .my.cnf
[client]
host=127.0.0.1
port=3306
user=root
password=123456
  1. 编写启动脚本,在prometheus目录中创建start.sh脚本文件;
cd mysqld_exporter/
vim start.sh

在文件中插入以下内

# --web.listen-address=":9191"用来修改默认端口
nohup ./mysqld_exporter --config.my-cnf=./.my.cnf --web.listen-address=":9192" > log 2>&1 &

服务启动后只需要将服务地址端口加入到prometheus.yml配置文件中即可,重启Prometheus即可
编辑文件并插入内容;

vim prometheus.yml
- job_name: "mysql"static_configs:- targets: ["192.168.1.23:9192"]

4.3.监控mongod数据库mongodb_exporter

  1. 到官网中进行下载安装后上传到服务器,或者直接执行命令进行下载:mongodb_exporter
wget https://github.com/percona/mongodb_exporter/releases/download/v0.43.1/mongodb_exporter-0.43.1.linux-amd64.tar.gz
  1. 安装包下载成功后输入命令进行解压即可;
tar xvf mongodb_exporter-0.43.1.linux-amd64.tar.gz
#移动修改一下目录名字,也可以不修改
mv mongodb_exporter-0.43.1.linux-amd64 mongodb_exporter
  1. 编写启动脚本,在prometheus目录中创建start.sh脚本文件;
cd mongodb_exporter/
vim start.sh

在文件中插入以下内

# --web.listen-address=":9193"用来修改默认端口
nohup ./mongodb_exporter --mongodb.uri=mongodb://root:123456@127.0.0.1:27017/?authSource=admin --collect-all --compatible-mode --web.listen-address=":9193"> log 2>&1 &

服务启动后只需要将服务地址端口加入到prometheus.yml配置文件中即可,重启Prometheus即可
编辑文件并插入内容;

vim prometheus.yml
- job_name: "mongo"static_configs:- targets: ["192.168.1.23:9193"]

4.4.监控redis-redis_exporter

  1. 到官网中进行下载安装后上传到服务器,或者直接执行命令进行下载:redis_exporter
wget https://github.com/oliver006/redis_exporter/releases/download/v1.67.0/redis_exporter-v1.67.0.linux-amd64.tar.gz
  1. 安装包下载成功后输入命令进行解压即可;
tar xvf redis_exporter-v1.67.0.linux-amd64.tar.gz
#移动修改一下目录名字,也可以不修改
mv redis_exporter-v1.67.0.linux-amd64 redis_exporter
  1. 编写启动脚本,在prometheus目录中创建start.sh脚本文件;
cd redis_exporter/
vim start.sh

在文件中插入以下内

#-redis.addr用来指定地址、端口
#-redis.password=123456用来指定认证密码
# --web.listen-address=":9194"用来修改默认端口
nohup ./redis_exporter -redis.addr=localhost:6379 -redis.password=123456 --web.listen-address=":9194" > log 2>&1 &

服务启动后只需要将服务地址端口加入到prometheus.yml配置文件中即可,重启Prometheus即可
编辑文件并插入内容;

vim prometheus.yml
- job_name: "redis"static_configs:- targets: ["192.168.1.23:9194"]

4.5.监控RocketMQ-rocketmq-exporter

官网的rocketmq-exporter需要将代码拉下来进行编写生成jar文件,编译依赖于git、mvaen环境;

也可以通过网盘分享的文件进行下载:rocketmq-exporter-0.0.3-SNAPSHOT-exec.jar
链接: https://pan.baidu.com/s/1MdqHaDAfYmPL5jPKHYp3bA?pwd=diqc 提取码: diqc
–来自百度网盘超级会员v2的分享
官网下载方法:

#通过wget获取源码,也可以:git clone https://github.com/apache/rocketmq-exporter.git
wget https://codeload.github.com/apache/rocketmq-exporter/zip/refs/heads/master
#修改获取文件的名字并解压,git clone方式获取的不需要要这两个步骤,我这里由于网络原因无法通过只能使用wget方式
mv master master.zip
unzip master.zip#进入到解压后的目录中
cd rocketmq-exporter-master
#将源码编译打包为jar文件
mvn clean install -D maven.test.skip=true

编译完成后,在源码的rocketmq-exporter-master/target目录中会生成一个rocketmq-exporter-0.0.3-SNAPSHOT-exec.jar文件即编译成功;
接下来就是编写启动脚本

vim rocketmq-exporter-master/start.sh

然后插入以下内容即可

#--rocketmq.config.namesrvAddr=127.0.0.1:9876指定nameSrv地址
#--server.port=9195指定程序端口
nohup java -jar target/rocketmq-exporter-0.0.3-SNAPSHOT-exec.jar --rocketmq.config.namesrvAddr=127.0.0.1:9876 --server.port=9195 > log 2>&1 &

同样的,服务启动后只需要将服务地址端口加入到prometheus.yml配置文件中即可,重启Prometheus即可
编辑文件并插入内容;

vim prometheus.yml
- job_name: "redis"static_configs:- targets: ["192.168.1.23:9195"]

4.6.监控java程序

  1. 到官网中进行下载安装后上传到服务器,或者直接执行命令进行下载:jmx_prometheus_javaagent
wget https://github.com/prometheus/jmx_exporter/releases/download/1.1.0/jmx_prometheus_javaagent-1.1.0.jar

然后,在启动需要监控的java程序时,添加启动参数即可

-javaagent:/data/smsv1/counter/JMX_exporter/jmx_prometheus_javaagent-0.3.1.jar=9196:/data/smsv1/counter/JMX_exporter/config.yml

同样的,服务启动后只需要将服务地址端口加入到prometheus.yml配置文件中即可,重启Prometheus即可
编辑文件并插入内容;

vim prometheus.yml
- job_name: "redis"static_configs:- targets: ["192.168.1.23:9196"]

config.yaml是你想要的JMX指标。例子如下:

例一

lowercaseOutputName: true
rules:- pattern: 'Catalina<type=(\w+), name=(\w+)><>(\w+):'name: tomcat_$3_$2labels:server: "$1"name: "$2"- pattern: 'java.lang<type=Memory><>(\w+):'name: java_lang_memory_$1- pattern: 'java.lang<type=GarbageCollector, name=(\w+), error=(\w+)><>CollectionCount:'name: java_lang_garbagecollector_$1_collection_countlabels:error: "$2"

例二

lowercaseOutputLabelNames: true
lowercaseOutputName: true
whitelistObjectNames: ["java.lang:type=OperatingSystem"]
rules:- pattern: 'java.lang<type=OperatingSystem><>((?!process_cpu_time)\w+):'name: os_$1type: GAUGEattrNameSnakeCase: true

http://www.ppmy.cn/ops/152541.html

相关文章

linux下使用脚本实现对进程的内存占用自动化监测

linux系统中常用cat /proc/{pid}/status和pmap -x {pid}来监测某个进程的内存资源占用情况。 其中注意各参数的含义如下&#xff1a; VmSize&#xff1a;表示进程当前虚拟内存大小 VmPeak&#xff1a;表示进程所占用最大虚拟内存大小 VmRSS&#xff1a;表示进程当前占用物理内…

Linux 高级路由与流量控制-用 tc qdisc 管理 Linux 网络带宽

大家读完记得觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 此分享内容比较专业&#xff0c;很多与硬件和通讯规则及队列&#xff0c;比较底层需要有技术功底人员深入解读。 Linux 的带宽管理能力 足以媲美许多高端、专用的带宽管理系统。 1 队列&#xff0…

PyTorch框架——基于WebUI:Gradio深度学习ShuffleNetv2神经网络蔬菜图像识别分类系统

第一步&#xff1a;准备数据 蔬菜数据集&#xff0c;英文为Vegetable。 train 目录下有15000 张图片。 共十五种植物的幼苗图片集&#xff0c;分别为classes [Bean, Bitter_Gourd, Bottle_Gourd, Brinjal, Broccoli, Cabbage, Capsicum, Carrot, Cauliflower, Cucumber, Pa…

视频修复最强算法 部署笔记2025

目录 模型下载: 模型: 原版保存的视频,vs code不播放: 模型下载: Release ProPainter V0.1.0 Release sczhou/ProPainter GitHub huggingface-cli download --resume-download lixiaowen/diffuEraser --local-dir /mnt/pfs/models/huggingface/models--lixiaowen--d…

node_exporter 集成Prometheus+Grafana

一、配置Prometheus采集 nano /root/apisix-docker/example/prometheus_conf/prometheus.yml末尾添加一段- job_name: "nodeexporter"scrape_interval: 5smetrics_path: "metrics"static_configs:- targets: ["192.168.31.135:9100"]#192.168.3…

CentOS 7.9(linux) 设置 MySQL 8.0.30 开机启动详解

文章目录 一、运行级别简介二、MySQL 服务安装与运行验证三、通过 chkconfig 配置开机启动四、验证开机启动配置五、总结 一、运行级别简介 运行级别&#xff08;Runlevel&#xff09;定义了系统的运行模式&#xff0c;常见的运行级别如下&#xff1a; 运行级别描述0关机模式…

后端:MyBatis

文章目录 1. MyBatis1-1. Mybatis 工具类的封装1-2. Mybatis 通过集合或实体类传递参数-实现插入数据(增)1-3. MyBatis 实现删除数据(删)1-4. MyBatis 实现修改数据(改)1-5. MyBatis 实现查询数据(查) 2. MyBatis 配置文件中的一些标签和属性2-1.environments标签2-2. dataSour…

Python爬虫获取微店商品详情时如何设置请求头

在使用Python爬虫获取微店商品详情时&#xff0c;合理设置请求头是确保爬虫请求成功并避免被识别为爬虫的关键步骤。请求头&#xff08;Headers&#xff09;是HTTP请求的一部分&#xff0c;包含了关于请求的元数据&#xff0c;如客户端信息、请求来源、接受的数据类型等。通过设…