SysV初始化系统的Prometheus MySQL导出器初始化脚本

时间:2020-02-23 14:31:24  来源:igfitidea点击:

在路上,我们有五分钟的全面指南,介绍如何使用Prometheus监视MySQL/MariaDB。
最初的指南是为systemd服务器编写的,但是我们可能会
使MySQL/MariaDB服务器在SysV/Upstart初始化系统上运行。这个
系统需要兼容的初始化脚本来管理服务。生我将
共享SysV初始化系统I的Prometheus MySQL导出器初始化脚本
写道。

请按照以下步骤配置MySQL导出程序初始化脚本。

安装Prometheus服务器并进行守护进程

我们需要先安装和配置Prometheus服务器
我们可以开始在MySQL服务器上创建脚本。检查如何在CentOS/Ubuntu上安装Prometheus Server

另一个要求是安装守护程序软件包,该软件包将用于在后台运行进程

对于Ubuntu/Debian系统,请使用以下命令进行安装:

sudo apt-get install daemonize

对于CentOS 6.x,请使用

sudo yum -y install daemonize

创建用于运行脚本的系统用户

除非必要,否则不建议以root用户身份运行初始化脚本。让我们创建名为" prometheus"的用户和组

sudo groupadd --system prometheus
sudo useradd -s /sbin/nologin --system -g prometheus prometheus

下载并安装Prometheus MySQL Exporter:

这应该在MySQL/MariaDB服务器(从服务器和主服务器)上完成。我们可能需要检查Prometheus MySQL导出程序的发布页面以获取最新版本。

curl -s https://api.github.com/repos/prometheus/mysqld_exporter/releases/latest   | grep browser_download_url   | grep linux-amd64 | cut -d '"' -f 4   | wget -qi 
tar xvf mysqld_exporter*.tar.gz
sudo mv  mysqld_exporter-*.linux-amd64/mysqld_exporter /usr/local/bin/
sudo chmod +x /usr/local/bin/mysqld_exporter

创建Prometheus导出器数据库用户

用户应具有"过程,选择,复制客户端"赠款

CREATE USER 'mysqld_exporter'@'localhost' IDENTIFIED BY 'StrongPassword' WITH MAX_USER_CONNECTIONS 2;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysqld_exporter'@'localhost';
FLUSH PRIVILEGES;
EXIT

如果我们具有主从数据库体系结构,请仅在主服务器上创建一个用户。

" WITH MAX_USER_CONNECTIONS 2"用于为用户设置最大连接限制,以避免在重负载下监视碎片而使服务器过载。

配置数据库凭据

创建数据库凭证文件

sudo vim /etc/.mysqld_exporter.cnf

添加正确的用户名和密码以创建用户

[client]
user=mysqld_exporter
password=StrongPassword

设置所有权权限:

sudo chown root:prometheus /etc/.mysqld_exporter.cnf

创建守护程序配置文件

sudo vim /etc/sysconfig/mysqld_exporter

# Prometheus mysqld_exporter defaults
# See https://github.com/prometheus/mysqld_exporter
ARGS="--config.my-cnf /etc/.mysqld_exporter.cnf \
--collect.global_status \
--collect.info_schema.innodb_metrics \
--collect.auto_increment.columns \
--collect.info_schema.processlist \
--collect.binlog_size \
--collect.info_schema.tablestats \
--collect.info_schema.tables \
--collect.global_variables \
--collect.info_schema.query_response_time \
--collect.info_schema.userstats \
--collect.perf_schema.tablelocks \
--collect.perf_schema.file_events \
--collect.perf_schema.eventswaits \
--collect.perf_schema.indexiowaits \
--collect.perf_schema.tableiowaits \
--collect.slave_status \
--web.listen-address=0.0.0.0:9104"

创建init脚本文件

现在创建初始化脚本文件。它可以在我的Github页面上找到。

Prometheus MySQL导出器脚本github

下载脚本并将其放在/etc/init.d

git clone https://github.com/jmutai/prometheus-mysqld-exporter-init-script.git
cd prometheus-mysqld-exporter-init-script
chmod +x mysqld_exporter.init
sudo mv mysqld_exporter.init /etc/init.d/mysqld_exporter

要启动该服务,只需运行:

sudo /etc/init.d/mysqld_exporter start

将其设置为在启动时启动

$sudo chkconfig mysqld_exporter on
$sudo chkconfig --list | grep mysqld_exporter
mysqld_exporter 0:off 1:off 2:on 3:on 4:on 5:on 6:off