74 lines
2.0 KiB
YAML
74 lines
2.0 KiB
YAML
---
|
|
- name: Create MySQL Exporter Directory
|
|
file:
|
|
path: /opt/mysqld_exporter
|
|
state: directory
|
|
mode: 0755
|
|
|
|
- name: Set Architecture
|
|
set_fact:
|
|
arch: "{{'amd64' if (ansible_architecture == 'x86_64') else 'arm64'}}"
|
|
|
|
- name: Download MySQL Exporter Archive
|
|
unarchive:
|
|
src: "http://git.jingrow.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-{{ arch }}.tar.gz"
|
|
dest: /tmp
|
|
remote_src: yes
|
|
|
|
- name: Copy MySQL Exporter Binary
|
|
copy:
|
|
src: "/tmp/mysqld_exporter-0.15.1.linux-{{ arch }}/mysqld_exporter"
|
|
dest: /opt/mysqld_exporter/mysqld_exporter
|
|
remote_src: yes
|
|
mode: 0755
|
|
owner: root
|
|
group: root
|
|
|
|
- name: Create MySQL Client Config
|
|
template:
|
|
src: monitor.cnf
|
|
dest: /home/jingrow/proxysql/monitor.cnf
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
|
|
- name: Remove ProxySQL Monitor User
|
|
mysql_query:
|
|
login_user: jingrow
|
|
login_password: "{{ proxysql_admin_password }}"
|
|
login_host: 127.0.0.1
|
|
login_port: 6032
|
|
query:
|
|
- DELETE FROM mysql_users WHERE username = "monitor"
|
|
- LOAD MYSQL USERS TO RUNTIME
|
|
- SAVE MYSQL USERS FROM RUNTIME
|
|
- SAVE MYSQL USERS TO DISK
|
|
|
|
|
|
- name: Create ProxySQL Monitoring User
|
|
mysql_query:
|
|
login_user: jingrow
|
|
login_password: "{{ proxysql_admin_password }}"
|
|
login_host: 127.0.0.1
|
|
login_port: 6032
|
|
query:
|
|
- "INSERT INTO mysql_users (username, password, default_hostgroup, default_schema, use_ssl, max_connections) VALUES ('monitor', 'monitor', {{ default_hostgroup }}, NULL, 1, 16)"
|
|
- LOAD MYSQL USERS TO RUNTIME
|
|
- SAVE MYSQL USERS FROM RUNTIME
|
|
- SAVE MYSQL USERS TO DISK
|
|
|
|
- name: Create MySQL Exporter Systemd Service File
|
|
template:
|
|
src: mysqld_exporter.service
|
|
dest: /etc/systemd/system/mysqld_exporter.service
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
|
|
- name: Restart MySQL Exporter Service
|
|
systemd:
|
|
daemon_reload: true
|
|
name: mysqld_exporter
|
|
enabled: yes
|
|
state: restarted
|