entorno de laboratorio
IP | Servicio |
---|---|
192.168.1.10 | Prometeo 、 Grafana |
192.168.1.20 | mysqld_exporter 、 MySQL |
192.168.1.20 instalar mysqld_exporter, MySQL
- Enlace de
referencia de MySQL - mysqld_exporter
下载安装包mysqld_exporter-0.12.1.linux-amd64.tar.gz
进行解压
[root@localhost ~]# tar -zxf mysqld_exporter-0.12.1.linux-amd64.tar.gz
运行mysqld_exporter服务它会依赖于.my.cnf文件并不是MySQL的配置文件
.my.cnf文件存放的是被授权用户的账号密码,所以先去授权
mysql> grant select,replication client,process ON *.* to 'mysql'@'localhost' identified by '123.com';
(注意:授权ip为localhost,因为不是prometheus服务器来直接找mariadb 获取数据,而是prometheus服务器找mysql_exporter,mysql_exporter 再找mariadb。所以这个localhost是指的mysql_exporter的IP)
mysql> flush privileges;
mysql> quit
- Escribir archivo .my.cnf
Si comienza directamente en el directorio mysql_exporter, se informará un error. De forma predeterminada, vuelva al directorio raíz para encontrar el archivo .my.cnf,
- Puede editar el archivo directamente en el directorio raíz, no está especificado de forma predeterminada
[root@localhost mysqld_exporter-0.12.1.linux-amd64]# ./mysqld_exporter
- Puede personalizar el directorio para especificar la ruta del archivo al iniciar
/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/root/mysqld_exporter-0.12.1.linux-amd64/.my.cnf
Lo creé directamente debajo de la raíz
[root@localhost ~]# cat .my.cnf
[client]
user=mysql
password=123.com
[root@localhost ~]# ls -a #这是一个隐藏文件需要使用ls -a查看
- Iniciar el
inicio de fondo de mysqld_exporter
[root@localhost mysqld_exporter-0.12.1.linux-amd64]# nohup ./mysqld_exporter &
或者
./mysqld_exporter &
Inicio en primer plano
[root@localhost mysqld_exporter-0.12.1.linux-amd64]# ./mysqld_exporter
INFO[0000] Starting mysqld_exporter (version=0.12.1, branch=HEAD, revision=48667bf7c3b438b5e93b259f3d17b70a7c9aff96) source="mysqld_exporter.go:257"
INFO[0000] Build context (go=go1.12.7, user=root@0b3e56a7bc0a, date=20190729-12:35:58) source="mysqld_exporter.go:258"
INFO[0000] Enabled scrapers: source="mysqld_exporter.go:269"
INFO[0000] --collect.slave_status source="mysqld_exporter.go:273"
INFO[0000] --collect.global_status source="mysqld_exporter.go:273"
INFO[0000] --collect.global_variables source="mysqld_exporter.go:273"
INFO[0000] --collect.info_schema.innodb_cmp source="mysqld_exporter.go:273"
INFO[0000] --collect.info_schema.innodb_cmpmem source="mysqld_exporter.go:273"
INFO[0000] --collect.info_schema.query_response_time source="mysqld_exporter.go:273"
INFO[0000] Listening on :9104 source="mysqld_exporter.go:283"
没有报错就是启动成功
[root@localhost mysqld_exporter-0.12.1.linux-amd64]# netstat -tunlp | grep 9104
tcp6 0 0 :::9104 :::* LISTEN 12844/./mysqld_expo
192.168.1.10 instalar Prometheus y Grafana
- Descarga e instala Prometheus
[root@localhost ~]# wget https://github.com/prometheus/prometheus/releases/download/v2.10.0/prometheus-2.10.0.linux-amd64.tar.gz
[root@localhost ~]# tar -zxf prometheus-2.10.0.linux-amd64.tar.gz
[root@localhost ~]# mv prometheus-2.10.0.linux-amd64 /usr/local/prometheus
- Configurar Prometheus
[root@localhost ~]# vim /usr/local/prometheus/prometheus.yml
# 修改如下
- job_name: 'mysql'
static_configs:
- targets: ['192.168.1.20:9104']
- Iniciar Prometheus
[root@localhost ~]# /usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml &
- Grafana
[root@localhost ~]# wget https://dl.grafana.com/oss/release/grafana-5.4.2-1.x86_64.rpm
[root@localhost ~]# yum -y install initscripts urw-fonts
[root@localhost ~]# rpm -Uvh grafana-5.4.2-1.x86_64.rpm
- Iniciar Grafana
[root@localhost ~]# systemctl start grafana-server
Configuración de la página de Grafana,
visite http://192.168.1.10:3000
La contraseña de usuario predeterminada es admin para
importar un panel de MySQL e importar el archivo json. Hay muchos en el sitio web oficial como referencia , o puede usar mi archivo json directamente