prometheus安装部署(六)(mysql_exporter安装)

1、下载

https://prometheus.io/download/
在这里插入图片描述

2、上传服务器、解压至/usr/local/prometheus

#解压
mkdir -p /usr/local/prometheus
tar -zxvf mysqld_exporter-0.15.1.linux-amd64.tar.gz -C /usr/local/prometheus
#重命名
cd  /usr/local/prometheus
mv mysqld_exporter-0.15.1.linux-amd64 mysqld_exporter-0.15.1

3、启动

创建一个mysql配置文件,写上连接的用户名与密码

cd /usr/local/prometheus/mysqld_exporter-0.15.1
vim .my.cnf

.my.cnf文件内容:

[client]
user=root
password=111111
host=10.23.190.34
port=3306

启动:

#直接使用默认配置文件,后台启动
nohup /usr/local/prometheus/mysqld_exporter-0.15.1/mysqld_exporter --config.my-cnf=/usr/local/prometheus/mysqld_exporter-0.15.1/.my.cnf &

#确认端口(9104)
lsof -i:9104

4-1、方式一:静态注册:(配置Prometheus)

cd /usr/local/prometheus/prometheus-2.54.0
vim prometheus.yml

添加如下内容:

  - job_name: "mysql_exporter"
    static_configs:
      - targets: ["10.23.190.128:9104"]

重启Prometheus
在这里插入图片描述

4-2、方式二:动态注册(通过consul+TenSetS)

不需要配置Prometheus配置文件,只需要在TenSunS控制台添加mysql_exporter服务即可。
consul+TenSunS动态注册上一篇有讲,地址见文档最后。
在这里插入图片描述
修改配置文件/usr/local/prometheus/prometheus-2.54.0/prometheus.yml
添加如下内容:

  - job_name: 'mysql_exporter'
    consul_sd_configs:
      - server: '10.23.190.128:8500'
        token: 'aba0224c-1f6b-40f1-bb9d-7de86dea9cb5'
        services: []
    relabel_configs:
      - source_labels: [__meta_consul_tags]
        regex: .*mysql_exporter.*
        action: keep
      - regex: __meta_consul_service_metadata_(.+)
        action: labelmap

查看Prometheus控制台:
在这里插入图片描述

5、service启动(简化启动命令)

service配置

cd /usr/local/prometheus/mysqld_exporter-0.15.1/
vim mysqld_exporter.service

mysqld_exporter.service文件内容:

[Unit]
Description=mysql_exporter
[Service]
ExecStart=/usr/local/prometheus/mysqld_exporter-0.15.1/mysqld_exporter --config.my-cnf=/usr/local/prometheus/mysqld_exporter-0.15.1/.my.cnf --web.listen-address=:9104
Restart=on-failure
[Install]
WantedBy=multi-user.target

软链:

ln -s /usr/local/prometheus/mysqld_exporter-0.15.1/mysqld_exporter.service /etc/systemd/system/mysqld_exporter.service

启动命令:

systemctl daemon-reload
systemctl start mysqld_exporter
systemctl stop mysqld_exporter
systemctl status mysqld_exporter

6、Grafana可视化展示

导入模板:MySQL Exporter Quickstart and Dashboard
模板id:14057

下一篇:prometheus安装部署(七)(process_exporter安装)
上一篇:prometheus安装部署(五)(consul+ConsulManager后羿可视化平台)

要监控多个MySQL服务,可以使用docker-compose部署mysqld_exporter。在docker-compose文件中,可以定义多个mysql服务,并为每个服务指定不同的端口和环境变量。例如: version: '3' services: mysql1: image: mysql:5.7 ports: - "3306:3306" environment: - MYSQL_ROOT_PASSWORD=password mysql2: image: mysql:5.7 ports: - "3307:3306" environment: - MYSQL_ROOT_PASSWORD=password mysqlexporter: image: prom/mysqld-exporter ports: - "9104:9104" environment: - DATA_SOURCE_NAME=root:password@(mysql1:3306)/ - DATA_SOURCE_NAME=root:password@(mysql2:3306)/ 在上面的示例中,我们定义了两个mysql服务(mysql1和mysql2),并将它们分别映射到宿主机的不同端口(3306和3307)。然后,在mysqlexporter服务中,我们使用了两个不同的DATA_SOURCE_NAME环境变量来指定连接到不同的MySQL实例。 通过这种方式,你可以监控多个MySQL服务,并在/metrics端点查看mysql_up指标来判断每个MySQL实例是否正常连接到mysqld_exporter。当mysql_up指标的值为1时,表示能够正常获取监控数据。 #### 引用[.reference_title] - *1* *2* *3* [prometheus监控MySQLmysqld_exporter部署](https://blog.csdn.net/qq_37374514/article/details/129259675)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值