EvoBSD/roles/collectd/tasks/main.yml

117 lines
2.6 KiB
YAML

# yamllint disable rule:line-length
---
- name: "Install Collectd package"
openbsd_pkg:
name: "collectd"
tags:
- collectd
- name: "Deploy Collectd configuration"
template:
src: "collectd.conf.j2"
dest: "/etc/collectd.conf"
notify: restart collectd
tags:
- collectd
- name: "Enabling Collectd"
service:
name: collectd
enabled: true
tags:
- collectd
- name: "Create scripts directory for exec plugins"
file:
path: /usr/local/share/collectd/scripts
state: directory
when: collectd_plugin_exec_ifq_drops or collectd_plugin_exec_dns_stats or collectd_plugin_exec_dhcp_pool
tags:
- collectd
- name: "Copy ifq_drops.sh"
copy:
src: ifq_drops.sh
dest: /usr/local/share/collectd/scripts/ifq_drops.sh
mode: 0755
force: true
when: collectd_plugin_exec_ifq_drops
tags:
- collectd
- name: "Remove ifq_drops.sh"
file:
path: /usr/local/share/collectd/scripts/ifq_drops.sh
state: absent
when: not collectd_plugin_exec_ifq_drops
tags:
- collectd
- name: "Copy dns_stats.sh"
copy:
src: dns_stats.sh
dest: /usr/local/share/collectd/scripts/dns_stats.sh
mode: 0755
force: true
when: collectd_plugin_exec_dns_stats
tags:
- collectd
- name: "Add stats DNS on unbound"
lineinfile:
path: /var/unbound/etc/unbound.conf
regexp: 'statistics-interval'
line:
' statistics-interval: {{ collectd_plugin_exec_dns_stats_interval }}'
insertafter: 'hide-version:'
backup: true
notify: reload unbound
when: collectd_plugin_exec_dns_stats
tags:
- collectd
- name: "Remove dns_stats.sh"
file:
path: /usr/local/share/collectd/scripts/dns_stats.sh
state: absent
when: not collectd_plugin_exec_dns_stats
tags:
- collectd
- name: "Remove stats DNS on unbound"
lineinfile:
path: /var/unbound/etc/unbound.conf
regexp: 'statistics-interval'
backup: true
state: absent
notify: reload unbound
when: not collectd_plugin_exec_dns_stats
tags:
- collectd
- name: "Add doas configuration for dns_stats.sh execution"
lineinfile:
path: /etc/doas.conf
line: 'permit nopass _collectd as root cmd /bin/cat'
when: collectd_plugin_exec_dns_stats
tags:
- collectd
- name: "Copy dhcp_pool.pl"
copy:
src: dhcp_pool.pl
dest: /usr/local/share/collectd/scripts/dhcp_pool.pl
mode: 0755
force: true
when: collectd_plugin_exec_dhcp_pool
tags:
- collectd
- name: "Remove dhcp_pool.pl"
file:
path: /usr/local/share/collectd/scripts/dhcp_pool.pl
state: absent
when: not collectd_plugin_exec_dhcp_pool
tags:
- collectd