自学内容网 自学内容网

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

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

原文地址:https://blog.csdn.net/gahsfjshf/article/details/145173445

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!