- name: load distribution-specific values include_vars: '{{ item }}' with_first_found: - '{{ ansible_distribution }}.yml' - defaults.yml tags: - always - name: ensure collectd is installed package: name: '{{ collectd_packages }}' state: present tags: - install - name: ensure collectd is configured template: src: collectd.conf.j2 dest: /etc/collectd.conf mode: '0644' notify: - restart collectd tags: - collectd-config - name: ensure collectd config drop-in directory exists file: path: /etc/collectd.d mode: u=rwx,go=rx state: directory tags: - collectd-config - name: ensure collectd directory exists file: path: /etc/collectd mode: 'u=rwx,go=rx' state: directory tags: - collectd-config - collectd-typesdb - name: ensure collectd local types.db exists copy: src: types.db.local dest: /etc/collectd/ mode: 'u=rw,go=r' notify: restart collectd tags: - collectd-config - collectd-typesdb - name: ensure collectd types.db is configured copy: src: collectd-typesdb.conf dest: /etc/collectd.d/typesdb.conf mode: 'u=rw,go=r' notify: restart collectd tags: - collectd-config - collectd-typesdb - name: ensure collectd df plugin is configured template: src: collectd-df.conf.j2 dest: /etc/collectd.d/df.conf mode: 'u=rw,go=r' notify: restart collectd tags: - collectd-config - collectd-df - name: ensure collectd unixsock plugin is configured template: src: collectd-unixsock.conf.j2 dest: /etc/collectd.d/unixsock.conf mode: 'u=rw,go=r' notify: restart collectd tags: - collectd-config - collectd-unixsock - name: ensure collectd network plugin is configured template: src: collectd-network.conf.j2 dest: /etc/collectd.d/network.conf mode: '0644' notify: - restart collectd tags: - collectd-config - collectd-network - name: ensure colelctd processes plugin is configured template: src: collectd-processes.conf.j2 dest: /etc/collectd.d/processes.conf mode: '0644' notify: - restart collectd tags: - collectd-config - collectd-processes - name: ensure collectd systemd unit extension directory exists file: path: /etc/systemd/system/collectd.service.d mode: 'u=rwx,go=rx' state: directory - name: ensure collectd.service runtime directory is configured copy: src: collectd-runtime-dir.conf dest: /etc/systemd/system/collectd.service.d/runtime-dir.conf mode: 'u=rw,go=r' notify: - reload systemd - restart collectd - name: ensure collectd starts at boot service: name: collectd enabled: true