本文介绍适用于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脚本文件完成。
相关主题 |