prometheus之mysqld_exporter部署

mysql_exporter部署

下载解压压缩包
mkdir /opt/mysqld_exporter/
cd /opt/mysqld_exporter/
# 修改为自己的软件下载地址
wget http://soft.download/soft/linux/prometheus/mysqld_exporter/mysqld_exporter-0.14.0.linux-amd64.tar.gz
tar -zxvf  mysqld_exporter-0.14.0.linux-amd64.tar.gz
添加mysqld_exporter配置文件
[root@shuan-node0132 mysqld_exporter-0.14.0.linux-amd64]# cat .my.cnf
[client]
host = localhost
user = reporter #mysql账号
password = 123456yuyuyut #mysql密码
port = 3308 #mysql端口
mysql授权监控账号exporter
CREATE USER 'reporter'@'localhost' IDENTIFIED BY '123456yuyuyut' WITH MAX_USER_CONNECTIONS 3;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'reporter'@'localhost';
编写service服务文件
vim /etc/systemd/system/mysqld_exporter.service

[Service]
ExecStart=/opt/mysqld_exporter/mysqld_exporter-0.14.0.linux-amd64/mysqld_exporter --config.my-cnf /opt/mysqld_exporter/mysqld_exporter-0.14.0.linux-amd64/.my.cnf
[Install]
WantedBy=multi-user.target
[Unit]
Description=mysqld_exporter
After=network.target
启动服务并设置开机自启
systemctl start mysqld_exporter
systemctl enable mysqld_exporter
防火墙开放端口
firewall-cmd --permanent --add-port=9104/tcp --zone=public&&firewall-cmd --reload
安装脚本
cat install_mysqld_exporter.sh

#!/bin/bash
InstallDir='/opt/mysqld_exporter/'
FileName='mysqld_exporter-0.14.0.linux-amd64.tar.gz'

function RedFont(){
  echo -e "\033[31mError: $1 \033[0m"
}

function GreenFont(){
  echo -e "\033[32mSuccess: $1 \033[0m"
}

function YellowFont(){
  echo -e "\033[33mWarning: $1 \033[0m"
}

if [ ! -d "$InstallDir" ];then
    mkdir $InstallDir
else
    YellowFont "${InstallDir}文件夹已经存在,请删除后重新执行"
    exit
fi

#进入安装目录
cd $InstallDir

#下载安装包
wget http://soft.download/soft/linux/prometheus/mysqld_exporter/$FileName > /dev/null 2>&1

if [ $? -eq 0 ];then
   GreenFont "$FileName download success"
else
   RedFont "$FileName download faild"
   exit
fi

#解压安装包到指定目录,解压不包含压缩一级目录
tar -zxf $FileName --strip-components 1 -C $InstallDir > /dev/null 2>&1

if [ $? -eq 0 ];then
   GreenFont "$FileName decompress success"
else
   RedFont "$FileName decompress faild"
   exit
fi

#创建配置文件
cat > ${InstallDir}.my.cnf << EOF
[client]
host = localhost
user = reporter #mysql账号
password = 123456yuyuyut #mysql密码
port = 3308 #mysql端口
EOF

#设置开机自启
cat > /etc/systemd/system/mysqld_exporter.service << EOF
[Service]
ExecStart=${InstallDir}mysqld_exporter --config.my-cnf ${InstallDir}.my.cnf
[Install]
WantedBy=multi-user.target
[Unit]
Description=mysqld_exporter
After=network.target
EOF

#防火墙放行端口
firewall-cmd --permanent --add-port=9104/tcp --zone=public&&firewall-cmd --reload

#启动服务
systemctl  daemon-reload
systemctl enable mysqld_exporter
systemctl start mysqld_exporter && GreenFont "started mysqld_exporter" || RedFont "start mysqld_exporter faild"
相关推荐
逻辑与&&1 天前
[Prometheus学习笔记]从架构到案例,一站式教程
笔记·学习·prometheus
Walden-20201 天前
构建基于 DCGM-Exporter, Node exporter,PROMETHEUS 和 GRAFANA 构建算力监控系统
docker·容器·grafana·prometheus
牛角上的男孩2 天前
部署Prometheus、Grafana、Zipkin、Kiali监控度量Istio
grafana·prometheus·istio
福大大架构师每日一题3 天前
文心一言 VS 讯飞星火 VS chatgpt (383)-- 算法导论24.5 3题
prometheus
小安运维日记6 天前
Linux云计算 |【第五阶段】CLOUD-DAY10
linux·运维·云计算·k8s·grafana·prometheus
福大大架构师每日一题6 天前
29.2 golang实战项目log2metrics架构说明
架构·prometheus
花开了¥7 天前
prometheus 快速入门
prometheus
陈小肚9 天前
k8s 1.28.2 集群部署 Thanos 对接 MinIO 实现 Prometheus 数据长期存储
kubernetes·prometheus·thanos
福大大架构师每日一题9 天前
27.9 调用go-ansible执行playbook拷贝json文件重载采集器
golang·json·ansible·prometheus
迷茫运维路10 天前
Prometheus+Telegraf实现自定义监控项配置
运维·prometheus·telegraf·自定义监控