主页 > 游戏开发  > 

mysqld_exporter的搭建

mysqld_exporter的搭建

1、创建/data/apps目录,并且下载mysql_exporte

mkdir -p /data/apps ​ cd /data/apps ​ wget githubfast /prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz 或者 wget github /prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz

2、解压压缩包到/usr/local,并且重创建软链接

tar -zxvf mysqld_exporter-0.12.1.linux-amd64.tar.gz -C /usr/local ​ cd /usr/local ​ ln -s mysqld_exporter-0.12.1.linux-amd64 mysqld_exporter ​

3、使用systemctl管理mysqld_exporter

vi /usr/lib/systemd/system/mysqld_exporter.service ​ [Unit] ​ Description=Prometheus ​ [Service] ​ Environment=DATA_SOURCE_NAME=exporter:Prometheus@(localhost:3306)/ ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my f --web.listen-address=:9104 Restart=on-failure ​ [Install] ​ WantedBy=multi-user.target ​

4、设置开机自启并且开启mysqld_exporter服务,数据库进行添加用户和放开权限

systemctl enable mysqld_exporter && systemctl start mysqld_exporter && systemctl status mysqld_exporter ​ iptables -I INPUT -p tcp --dport 9104 -j ACCEPT && iptables-save ​ 数据库的操作 ​ cd /usr/local/mysqld_exporter ​ cat > .my f <<EOF [client] user=exporter password=Prometheus EOF ​ mysql -u root -p ​ set global validate_password_policy=LOW;   ​ CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'Prometheus' WITH MAX_USER_CONNECTIONS 5; ​ GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost'; ​

5、在prometheus服务器添加mysqld_exporter节点监控

vi /usr/local/prometheus/prometheus.yml ​ - job_name: "mysqld_exporter"   static_configs:     - targets: ['被监控设备的IP:9104']       labels:         app: mysqld_exporter role: mysqld_exporter       或者以file_sd_configs方式添加node vi /usr/local/prometheus/prometheus.yml ​ - job_name: "mysqld_exporter"   file_sd_configs:     - files:       - /usr/local/prometheus/target/mysqld_exporter.yml         # pwd /usr/local/prometheus/target # cat mysqld_exporter.yml - targets: - "被监控设备的IP:9104" labels:   app: mysqld_exporter   role: mysqld_exporter ​

6、热加载prometheus配置

curl -X POST http://127.0.0.1:9090/-/reload ​ 脚本方式部署 ---------------------------------------------------------------------------- mysqld_exporter节点 vi mysqld_exporter.sh ​ #!/bin/bash ​ setenforce 0 && iptables -I INPUT -p tcp --dport 9104 -j ACCEPT && iptables-save > /dev/null && mkdir -p /data/apps > /dev/null && cd /data/apps && wget githubfast /prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz > /dev/null && echo "下载mysqld_exporter压缩包完成" && tar -zxvf mysqld_exporter-0.12.1.linux-amd64.tar.gz -C /usr/local > /dev/null && cd /usr/local && ln -s mysqld_exporter-0.12.1.linux-amd64 mysqld_exporter && echo "[Unit] ​ Description=Prometheus ​ [Service] ​ Environment=DATA_SOURCE_NAME=exporter:Prometheus@(localhost:3306)/ ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/.my f --web.listen-address=:9104 Restart=on-failure ​ [Install] ​ WantedBy=multi-user.target" | tee -i /usr/lib/systemd/system/mysqld_exporter.service > /dev/null && systemctl enable mysqld_exporter && systemctl start mysqld_exporter && systemctl status mysqld_exporter ​ sh ./mysqld_exporter.sh ​进行上面4的数据库的操作 卸载mysqld_exporter节点 vi mysqld_exporter_uninstall.sh ​ #!/bin/bash ​ systemctl disable mysqld_exporter && systemctl stop mysqld_exporter && rm -rf /usr/lib/systemd/system/mysqld_exporter.service && setenforce 1 && iptables -D INPUT -p tcp --dport 9104 -j ACCEPT && iptables-save > /dev/null && cd /usr/local && unlink mysqld_exporter && rm -rf mysqld_exporter-0.12.1.linux-amd64 && rm -rf /data/apps/mysqld_exporter-0.12.1.linux-amd64.tar.gz > /dev/null && echo "删除mysqld_exporter压缩包完成" ​ sh ./mysqld_exporter_uninstall.sh ​ ​prometheus节点 vi mysqld_exporter_join.sh ​ #!/bin/bash ​ #对应被监控的node名称 NODENAME=$1 #对应被监控的IP地址 IPADDRESS=$2 echo " - job_name: "$NODENAME"   static_configs:     - targets: ["$IPADDRESS:9104"]   " | tee -a /usr/local/prometheus/prometheus.yml > /dev/null && /usr/local/prometheus/promtool check config /usr/local/prometheus/prometheus.yml && curl -X POST http://127.0.0.1:9090/-/reload ​ sh ./mysqld_exporter_join.sh NODENAME(对应被监控的node名称) IPADDRESS(对应被监控的IP地址) ​

标签:

mysqld_exporter的搭建由讯客互联游戏开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“mysqld_exporter的搭建