Newer
Older
---
# file: roles/netdata/tasks/configure.yml
- name: "Add User to Admins"
user:
name: 'netdata'
groups: 'adm'
append: yes
- name: "Configure Registry"
ini_file:
dest: '/etc/netdata/netdata.conf'
create: yes
section: 'registry'
option: '{{ item.option }}'
value: '{{ item.value }}'
with_items:
- option: 'enabled'
value: '{{ (netdata_registry|default("pmon1") == inventory_hostname)|ternary("yes", "no") }}'
- option: 'registry to announce'
value: 'http://{{ netdata_registry|default("pmon1") }}:19999'
notify:
- "Restart NetData"
- name: "Configure NetData"
template:
src: '{{ item }}'
dest: '/etc/netdata/{{ item }}'
owner: 'netdata'
group: 'netdata'

jurgenhaas
committed
mode: '644'
- name: "Configure Python Plugins"
template:
src: '{{ item }}'
dest: '/etc/netdata/python.d/{{ item }}'
owner: 'netdata'
group: 'netdata'
mode: '644'
backup: yes
with_items:
- 'httpcheck.conf'
notify:
- "Restart NetData"
- name: "Get a list of all health config files"
shell: 'ls /etc/netdata/health.d/*.conf -1'
register: health_list
- name: "Remove all options that prevent clear notifications"
lineinfile:
path: '{{ item }}'
state: absent
regexp: 'no-clear-notification'
with_items: '{{ health_list.stdout_lines }}'
- name: "Patch Startup Script"
lineinfile:
dest: '/etc/init.d/netdata'
regexp: 'killproc -p \$\{PIDFILE\} \$DAEMON_PATH/\$DAEMON'
line: ' killproc -p ${PIDFILE} $DAEMON_PATH/$DAEMON && sleep 3'
when: ansible_lsb.major_release == '12'
- name: "Check if KSM is available"
stat: path='/sys/kernel/mm/ksm'
register: ksm
# Note: copy module doesn't work here because parent directory /sys
# is not writable, not even by root
- name: "Configure KSM"
shell: echo {{ item.value }} >/sys/kernel/mm/ksm/{{ item.file }}
with_items:
- file: 'run'
value: '1'
- file: 'sleep_millisecs'
value: '1000'
when: ksm.stat.exists
notify:
- "Restart NetData"