数码资讯
Promethesu单个mysqld_export监控多个mysql
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
在日常运维中经常会遇到有多个mysql要监控,如果每个mysql启动一个export显然太浪费资源了,那么其实prometheus是有通过传参给export的然后进行监控的方式,下面我们来具体介绍一下。(测试的话msyql自己安装就好)
1、安装mysqld_exporter
自己从官网下载mysqld_exporter
https://prometheus.io/download/
解压
tar xf mysqld_exporter-0.14.0.linux-amd64.tar.gz mv mysqld_exporter-0.12.1.linux-amd64 /usr/local/mysqld_exporter
2、配置数据库认证
[root@localhost ~]# cd /usr/local/mysqld_exporter/ [root@localhost mysqld_exporter]# vi mysqld_exporter.cnf [client] user=mysqld_exporter password=123456 #这个授权自己在数据库中授好对应的权限不然会报错
3、创建系统服务启动配置文件mysqld_exporter.service
root@localhost ~]# vi /usr/lib/systemd/system/mysqld_exporter.service [Unit] Description=Prometheus MySQL daemon After=network.target [Service] User=root Group=root Type=simple Restart=always ExecStart=/usr/local/mysqld_exporter/mysqld_exporter \ --config.my-cnf=/usr/local/mysqld_exporter/mysqld_exporter.cnf \ --collect.global_status \ --collect.auto_increment.columns \ --collect.info_schema.processlist \ --collect.binlog_size \ --collect.info_schema.tablestats \ --collect.global_variables \ --collect.info_schema.innodb_metrics \ --collect.info_schema.query_response_time \ --collect.info_schema.userstats \ --collect.info_schema.tables \ --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 [Install] WantedBy=multi-user.target [root@localhost ~]# systemctl daemon-reload [root@localhost ~]# systemctl start mysqld_exporter
4、与prometheus集成
- job_name: 'mysql_exporter' file_sd_configs: - files: - /prometheus/mysql.yml metrics_path: /metrics relabel_configs: - target_label: __address__ replacement: 172.16.149.216:9104 - source_labels: [host] target_label: __param_host - source_labels: [port] target_label: __param_port
5、编写mysql.yml
- targets: [172.16.149.216:3306] labels: instance_id: 216mysql role: master alias: "test" host: "172.16.149.216" prot: "3306" usr: mysqld_exporter instance: '172.16.149.216:3306' - targets: [172.16.149.217:3306] labels: instance_id: 217mysql role: master alias: "test" host: "172.16.149.217" prot: "3306" usr: mysqld_exporter instance: '172.16.149.217:3306'
6、页面查看mysql是否正常
至此我们已经部署完毕至于配置grafana 这里就不过多介绍了。官网有模板也可以自己弄
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。