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

news2025/1/26 22:16:52

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_$2
    labels:
      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_count
    labels:
      error: "$2"

例二

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

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

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

相关文章

问题排查 - TC397 CORE2 50MS/100MS任务不运行

1、问题描述 CORE2 的任务运行次数的计数值OsTask_100ms_Core2 - task_cnt[12]、OsTask_50ms_Core2 - task_cnt[16]不在累加&#xff0c;但是其他任务OsAlarm_1ms_Core2、OsAlarm_5ms_Core2、OsAlarm_10ms_Core2、OsAlarm_20ms_Core2 任务计数值累加正常。 如果是任务栈溢出&a…

Spring FatJar写文件到RCE分析

背景 现在生产环境部署 spring boot 项目一般都是将其打包成一个 FatJar&#xff0c;即把所有依赖的第三方 jar 也打包进自身的 app.jar 中&#xff0c;最后以 java -jar app.jar 形式来运行整个项目。 运行时项目的 classpath 包括 app.jar 中的 BOOT-INF/classes 目录和 BO…

百度APP iOS端磁盘优化实践(上)

01 概览 在APP的开发中&#xff0c;磁盘管理已成为不可忽视的部分。随着功能的复杂化和数据量的快速增长&#xff0c;如何高效管理磁盘空间直接关系到用户体验和APP性能。本文将结合磁盘管理的实践经验&#xff0c;详细介绍iOS沙盒环境下的文件存储规范&#xff0c;探讨业务缓…

蓝桥杯之c++入门(一)【第一个c++程序】

目录 前言一、第⼀个C程序1.1 基础程序1.2 main函数1.3 字符串1.4 头文件1.5 cin 和 cout 初识1.6 名字空间1.7 注释 二、四道简单习题&#xff08;点击跳转链接&#xff09;练习1&#xff1a;Hello,World!练习2&#xff1a;打印飞机练习3&#xff1a;第⼆个整数练习4&#xff…

14-6-1C++STL的list

(一&#xff09;list容器的基本概念 list容器简介&#xff1a; 1.list是一个双向链表容器&#xff0c;可高效地进行插入删除元素 2.list不可以随机存取元素&#xff0c;所以不支持at.(pos)函数与[ ]操作符 &#xff08;二&#xff09;list容器头部和尾部的操作 list对象的默…

【AI论文】Sigma:对查询、键和值进行差分缩放,以实现高效语言模型

摘要&#xff1a;我们推出了Sigma&#xff0c;这是一个专为系统领域设计的高效大型语言模型&#xff0c;其独特之处在于采用了包括DiffQKV注意力机制在内的新型架构&#xff0c;并在我们精心收集的系统领域数据上进行了预训练。DiffQKV注意力机制通过根据查询&#xff08;Q&…

InceptionV1_V2

目录 不同大小的感受野去提取特征 经典 Inception 网络的设计思路与运行流程 背景任务&#xff1a;图像分类&#xff08;以 CIFAR-10 数据集为例&#xff09; Inception 网络的设计思路 Inception 网络的运行流程 打个比方 多个损失函数的理解 1. 为什么需要多个损失函数&#…

ORB-SLAM2源码学习:Initializer.cc⑧: Initializer::CheckRT检验三角化结果

前言 ORB-SLAM2源码学习&#xff1a;Initializer.cc⑦: Initializer::Triangulate特征点对的三角化_cv::svd::compute-CSDN博客 经过上面的三角化我们成功得到了三维点&#xff0c;但是经过三角化成功的三维点并不一定是有效的&#xff0c;需要筛选才能作为初始化地图点。 …

【ArcGIS微课1000例】0141:提取多波段影像中的单个波段

文章目录 一、波段提取函数二、加载单波段导出问题描述:如下图所示,img格式的时序NDVI数据有24个波段。现在需要提取某一个波段,该怎样操作? 一、波段提取函数 首先加载多波段数据。点击【窗口】→【影像分析】。 选择需要处理的多波段影像,点击下方的【添加函数】。 在多…

一文大白话讲清楚webpack基本使用——17——Tree Shaking

文章目录 一文大白话讲清楚webpack基本使用——17——Tree Shaking1. 建议按文章顺序从头看&#xff0c;一看到底&#xff0c;豁然开朗2. 啥叫Tree Shaking3. 什么是死代码&#xff0c;怎么来的3. Tree Shaking的流程3.1 标记3.2 利用Terser摇起来 4. 具体使用方式4.1 适用前提…

PyCharm配置Python环境

1、打开PyCharm项目 可以从File-->Open-->选择你的项目路径-->OK&#xff0c;或者直接点击Open&#xff0c;找到项目路径-->OK&#xff0c;如图所示(点击Ok后可能有下面的弹窗&#xff0c;选择“Trust Project”即可&#xff0c;然后选择“New Window”打开项目) …

c#配置config文件

1&#xff0c;引用命名空间 Configuration 及配置信息

RDMA 工作原理 | 支持 RDMA 的网络协议

注&#xff1a;本文为 “RDMA” 相关文章合辑。 英文引文机翻未校。 图片清晰度受引文所限。 Introduction to Remote Direct Memory Access (RDMA) Written by: Dotan Barak on March 31, 2014.on February 13, 2015. What is RDMA? 什么是 RDMA&#xff1f; Direct me…

01-硬件入门学习/嵌入式教程-CH340C使用教程

前言 CH340C广泛应用于DIY项目和嵌入式开发中&#xff0c;用于USB数据转换和串口通信。本文将详细介绍CH340C的基本功能、引脚接线及使用方法。 CH340C简介 CH340C是一款USB转TTL电平转换器&#xff0c;可以将电脑的USB数据转换成串口数据&#xff0c;方便与单片机&#xff…

STM32——LCD

一、引脚配置 查看引脚 将上述引脚都设置为GPIO_Output 二、导入驱动文件 将 LCD 驱动的 Inc 以及 Src 中的 fonts.h,lcd.h 和 lcd.c 导入到自己工程的驱动文件中。 当然&#xff0c;后面 lcd 的驱动学习可以和 IMX6U 一块学。 三、LCD函数 void LCD_Clear(u16 Color); 功能…

操作系统(Linux Kernel 0.11Linux Kernel 0.12)解读整理——内核初始化(main init)之内存的划分

前言 MMU&#xff1a;内存管理单元(Memory Management Unit)完成的工作就是虚拟地址到物理地址的转换&#xff0c;可以让系统中的多个程序跑在自己独立的虚拟地址空间中&#xff0c;相互不会影响。程序可以对底层的物理内存一无所知&#xff0c;物理地址可以是不连续的&#x…

.NET MAUI进行UDP通信(二)

上篇文章有写过一个简单的demo&#xff0c;本次对项目进行进一步的扩展&#xff0c;添加tabbar功能。 1.修改AppShell.xaml文件&#xff0c;如下所示&#xff1a; <?xml version"1.0" encoding"UTF-8" ?> <Shellx:Class"mauiDemo.AppShel…

社区养老服务平台的设计与实现(代码+数据库+LW)

摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对信息管理混乱&#xff0c;出错率高&#xff0c;信息安全性差&#…

生信软件管家——conda vs pip

pip vs conda&#xff1a; 安装过python包的人自然两种管理软件都用过&#xff0c; Pip install和Conda install在Python环境中用于安装第三方库和软件包&#xff0c;但它们在多个方面存在显著的区别 总的来说&#xff1a; pip是包管理软件&#xff0c;conda既是包管理软件&…

项目文章 | PNAS 斑马鱼转录因子ChIP-seq助力解析GATA6突变相关的肝脏疾病机制

近日&#xff0c;西南大学阮华/黄红辉团队联合重庆大学邱菊辉/王贵学团队在PNAS发表了题为“An animal model recapitulates human hepatic diseases associated with GATA6 mutations”的研究论文。该研究构建了一个gata6敲除斑马鱼模型&#xff0c;它重现了gata6突变患者的大…