aboutsummaryrefslogtreecommitdiff
path: root/roles/monitoring/tasks/zfs.yaml
blob: 2f18e3202d9766613630a9a167548c2b1f6efb64 (plain)
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
# https://github.com/pdf/zfs_exporter

---

# ZFS Exporter for ZFS monitoring

- name: 'Download zfs exporter tarball'
  get_url:
    url: 'https://github.com/pdf/zfs_exporter/releases/download/v2.2.5/zfs_exporter-2.2.5.linux-arm64.tar.gz'
    dest: '{{ monitoring_root_dir }}/zfs_exporter.tar.gz'
    mode: '644'

- name: 'Ensure the zfs exporter dir exists'
  file:
    path: '{{ monitoring_root_dir }}/zfs_exporter-2.2.5.linux-arm64'
    state: 'directory'
    mode: '755'

- name: 'Extract ZFS exporter to dir'
  command: 'tar -xf zfs_exporter-2.2.5.linux-arm64.tar.gz'
  args:
    chdir: '{{ monitoring_root_dir }}'

- name: 'Copy the executable to /usr/bin'
  become: true
  become_method: 'doas'
  copy:
    src: '{{ monitoring_root_dir }}/zfs_exporter-2.2.5.linux-arm64/zfs_exporter'
    dest: '/usr/bin/zfs_exporter'
    mode: '0755'
    owner: 'root'
    remote_src: true

- name: 'Create service file to start zfs_exporter on boot'
  become: true
  become_method: 'doas'
  copy:
    src: 'zfs-exporter'
    dest: '/etc/init.d/zfs-exporter'
    mode: '0755'
    owner: 'root'

- name: 'Start and enable the zfs-exporter service'
  become: true
  become_method: 'doas'
  service:
    name: 'zfs-exporter'
    state: 'started'
    enabled: true