This repository has been archived by the owner on Mar 14, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 30
/
Copy pathinstall.yml
72 lines (66 loc) · 2.57 KB
/
install.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
---
- name: Create the MySQL Exporter group
group:
name: "{{ __mysqld_exporter_group }}"
state: present
system: true
- name: Create the MySQL Exporter user
user:
name: "{{ __mysqld_exporter_user }}"
groups: "{{ __mysqld_exporter_group }}"
append: true
shell: /usr/sbin/nologin
system: true
createhome: false
home: /
- block:
- name: Download mysqld_exporter binary to local folder
become: false
get_url:
url: "https://github.com/prometheus/mysqld_exporter/releases/download/v{{ mysqld_exporter_version }}/mysqld_exporter-{{ mysqld_exporter_version }}.linux-{{ go_arch_map[ansible_architecture] | default(ansible_architecture) }}.tar.gz"
dest: "/tmp/mysqld_exporter-{{ mysqld_exporter_version }}.linux-{{ go_arch_map[ansible_architecture] | default(ansible_architecture) }}.tar.gz"
checksum: "sha256:{{ __mysqld_exporter_checksum }}"
register: _download_binary
until: _download_binary is succeeded
retries: 5
delay: 2
delegate_to: localhost
check_mode: false
- name: Unpack mysqld_exporter binary
become: false
unarchive:
src: "/tmp/mysqld_exporter-{{ mysqld_exporter_version }}.linux-{{ go_arch_map[ansible_architecture] | default(ansible_architecture) }}.tar.gz"
dest: "/tmp"
creates: "/tmp/mysqld_exporter-{{ mysqld_exporter_version }}.linux-{{ go_arch_map[ansible_architecture] | default(ansible_architecture) }}/mysqld_exporter"
delegate_to: localhost
check_mode: false
- name: Propagate mysqld_exporter binaries
copy:
src: "/tmp/mysqld_exporter-{{ mysqld_exporter_version }}.linux-{{ go_arch_map[ansible_architecture] | default(ansible_architecture) }}/mysqld_exporter"
dest: "/usr/local/bin/mysqld_exporter"
mode: 0755
owner: root
group: root
notify:
- restart mysqld exporter
when: not ansible_check_mode
when: mysqld_exporter_binary_local_dir | length == 0
- name: propagate locally distributed mysqld_exporter binary
copy:
src: "{{ mysqld_exporter_binary_local_dir }}/mysqld_exporter"
dest: "/usr/local/bin/mysqld_exporter"
mode: 0755
owner: root
group: root
when: mysqld_exporter_binary_local_dir | length > 0
notify: restart mysqld exporter
- name: Copy the mysqld_exporter systemd service file
template:
src: mysqld_exporter.service.j2
dest: /etc/systemd/system/mysqld_exporter.service
owner: root
group: root
mode: 0644
no_log: "{{ not lookup('env', 'ANSIBLE_DEBUG') | bool }}"
notify:
- restart mysqld exporter