云网牛站
所在位置:首页 > Linux云数据库 > 适用于SysV init系统的Prometheus MySQL导出程序初始化脚本

适用于SysV init系统的Prometheus MySQL导出程序初始化脚本

2019-02-17 10:57:15作者:叶云稿源:云网牛站

本文介绍适用于SysV init/Upstart init系统的Prometheus MySQL导出程序初始化脚本,此系统需要兼容的init脚本来管理服务,我将共享一个Prometheus MySQL导出器初始化脚本。

 

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

你需要先安装并配置Prometheus服务器,然后才能开始在MySQL服务器上创建脚本,参考在CentOS 7/Ubuntu 18.04系统上安装Prometheus服务器的方法

另一个要求是安装daemonize包,它将用于在后台运行该进程。

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

sudo apt-get install daemonize

对于CentOS 6.x,请使用:

sudo yum install daemonize

 

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

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

sudo groupadd --system prometheus

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

 

三、下载并安装Prometheus MySQL Exporter、创建Prometheus导出数据库用户及配置数据库帐户

1、下载并安装Prometheus MySQL Exporter

这应该在MySQL/MariaDB服务器上完成,包括从服务器和主服务器,Prometheus MySQL Exporter当前的版本是0.11.0 / 2018-06-29:

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.11.0/mysqld_exporter-0.11.0.linux-amd64.tar.gz

tar xvf mysqld_exporter-0.11.0.linux-amd64.tar.gz

sudo mv  mysqld_exporter-0.11.0.linux-amd64/mysqld_exporter /usr/local/bin/

sudo chmod +x /usr/local/bin/mysqld_exporter

通过删除tarball和提取目录来清理安装:

rm -rf mysqld_exporter-0.11.0.linux-amd64

rm mysqld_exporter-0.11.0.linux-amd64.tar.gz

2、创建Prometheus导出数据库用户

用户应具有PROCESS,SELECT,REPLICATION CLIENT授权:

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用于为用户设置最大连接限制,以避免在负载较重的情况下使用监控擦除来使服务器过载。

3、配置数据库帐户

创建数据库帐户文件:

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脚本文件

现在创建init脚本文件,它可以在我的Github页面上找到,如下链接:

https://github.com/jmutai/prometheus-mysqld-exporter-init-script

下载脚本并将其放在/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

至此,创建init脚本文件完成。

 

相关主题

使用Prometheus和Grafana监控Linux服务器性能的方法

精选文章
热门文章