You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.3 KiB
38 lines
1.3 KiB
2 years ago
|
- name: fail if exporter host is missing
|
||
|
fail:
|
||
|
msg: mysql_target_host is not string
|
||
|
when: mysql_target_host is not string
|
||
|
|
||
|
|
||
|
- block:
|
||
|
- include_tasks: init_mysql.yml
|
||
|
|
||
|
|
||
|
- name: create exporter user
|
||
|
mysql_user:
|
||
|
name: "{{ mysql_exporter_username }}"
|
||
|
password: "{{ mysql_exporter_password }}"
|
||
|
plugin: mysql_native_password
|
||
|
host: "{{ container_address | d(ansible_host) }}"
|
||
|
resource_limits:
|
||
|
MAX_USER_CONNECTIONS: 3
|
||
|
priv:
|
||
|
'*.*': 'SELECT,BINLOG MONITOR,PROCESS'
|
||
|
'performance_schema.*': SELECT
|
||
|
|
||
|
login_host: "{{ hostvars[mysql_target_host]['container_address'] | d(hostvars[mysql_target_host]['ansible_host']) }}"
|
||
|
login_user: "{{ hostvars[mysql_target_host]['mysql_root_username'] | d('root') }}"
|
||
|
login_password: "{{ hostvars[mysql_target_host]['mysql_root_password'] | d(omit) }}"
|
||
|
register: result
|
||
|
|
||
|
|
||
|
- name: flush privileges
|
||
|
mysql_query:
|
||
|
query: FLUSH PRIVILEGES
|
||
|
login_host: "{{ hostvars[mysql_target_host]['container_address'] | d(hostvars[mysql_target_host]['ansible_host']) }}"
|
||
|
login_user: "{{ hostvars[mysql_target_host]['mysql_root_username'] | d('root') }}"
|
||
|
login_password: "{{ hostvars[mysql_target_host]['mysql_root_password'] | d(omit) }}"
|
||
|
when: result.changed
|
||
|
|
||
|
delegate_to: localhost
|