2025-12-23 19:56:26 +08:00

69 lines
1.8 KiB
YAML

---
- name: Create ProxySQL Directory
become: yes
become_user: jingrow
file:
dest: /home/jingrow/proxysql
state: directory
- name: Copy ProxySQL TLS (Private Key)
copy:
src: /home/jingrow/agent/tls/privkey.pem
dest: /home/jingrow/proxysql/proxysql-key.pem
mode: 0600
remote_src: yes
- name: Copy ProxySQL TLS (CA Certificate)
copy:
src: /home/jingrow/agent/tls/chain.pem
dest: /home/jingrow/proxysql/proxysql-ca.pem
mode: 0600
remote_src: yes
- name: Copy ProxySQL TLS (Server Certificate)
copy:
src: /home/jingrow/agent/tls/fullchain.pem
dest: /home/jingrow/proxysql/proxysql-cert.pem
mode: 0600
remote_src: yes
- name: Create ProxySQL config
template:
src: proxysql.cnf
dest: /home/jingrow/proxysql/proxysql.cnf
mode: 0644
- name: Start ProxySQL
become: yes
become_user: jingrow
command: "docker run -d --name proxysql --hostname proxysql --restart always -p 3306:6033 -p 127.0.0.1:6032:6032 -p 127.0.0.1:6070:6070 -v /home/jingrow/proxysql:/var/lib/proxysql -v /home/jingrow/proxysql/proxysql.cnf:/etc/proxysql.cnf proxysql/proxysql:2.3.2"
- name: Update APT Cache
apt:
update_cache: yes
- name: Install MariaDB Client
apt:
pkg:
- mariadb-client
- python3-mysqldb
state: present
- name: Enable ProxySQL Auditing
mysql_query:
login_user: jingrow
login_password: "{{ proxysql_admin_password }}"
login_host: 127.0.0.1
login_port: 6032
query:
- INSERT INTO mysql_query_rules(active, match_digest, log) VALUES (1, '.', 1);
- LOAD MYSQL QUERY RULES TO RUNTIME;
- SAVE MYSQL QUERY RULES TO DISK;
- name: Setup Agent ProxySQL
become: yes
become_user: jingrow
command: "/home/jingrow/agent/env/bin/agent setup proxysql --password {{ proxysql_admin_password }}"
args:
chdir: /home/jingrow/agent