diff options
Diffstat (limited to 'roles/monitoring/collectd/network')
8 files changed, 102 insertions, 0 deletions
diff --git a/roles/monitoring/collectd/network/client/defaults/main.yml b/roles/monitoring/collectd/network/client/defaults/main.yml new file mode 100644 index 00000000..d59dde08 --- /dev/null +++ b/roles/monitoring/collectd/network/client/defaults/main.yml @@ -0,0 +1,7 @@ +--- +# collectd_network_client_server: "192.0.2.1" + +#collectd_network_client_auth: +# level: (Sign|Encrypt) +# username: foo +# password: "secret" diff --git a/roles/monitoring/collectd/network/client/handlers/main.yml b/roles/monitoring/collectd/network/client/handlers/main.yml new file mode 100644 index 00000000..6bb81b5a --- /dev/null +++ b/roles/monitoring/collectd/network/client/handlers/main.yml @@ -0,0 +1,5 @@ +--- +- name: restart collectd + service: + name: collectd + state: restarted diff --git a/roles/monitoring/collectd/network/client/tasks/main.yml b/roles/monitoring/collectd/network/client/tasks/main.yml new file mode 100644 index 00000000..00a1d2ca --- /dev/null +++ b/roles/monitoring/collectd/network/client/tasks/main.yml @@ -0,0 +1,7 @@ +--- +- name: install network-client config + template: + src: network-client.conf.j2 + dest: /etc/collectd/conf.d/network-client.conf + mode: 0400 + notify: restart collectd diff --git a/roles/monitoring/collectd/network/client/templates/network-client.conf.j2 b/roles/monitoring/collectd/network/client/templates/network-client.conf.j2 new file mode 100644 index 00000000..83d8931e --- /dev/null +++ b/roles/monitoring/collectd/network/client/templates/network-client.conf.j2 @@ -0,0 +1,13 @@ +LoadPlugin network + +<Plugin "network"> +{% if collectd_network_client_auth is defined %} + <Server "{{ collectd_network_client_server }}"> + SecurityLevel "{{ collectd_network_client_auth.level }}" + Username "{{ collectd_network_client_auth.username }}" + Password "{{ collectd_network_client_auth.password }}" + </Server> +{% else %} + Server "{{ collectd_network_client_server }}" +{% endif %} +</Plugin> diff --git a/roles/monitoring/collectd/network/server/defaults/main.yml b/roles/monitoring/collectd/network/server/defaults/main.yml new file mode 100644 index 00000000..0f531395 --- /dev/null +++ b/roles/monitoring/collectd/network/server/defaults/main.yml @@ -0,0 +1,8 @@ +--- +# collectd_network_server_listen: +# - "192.0.2.1" + +# collectd_network_server_auth: +# level: (Sign|Encrypt) +# users: +# foo: "secret" diff --git a/roles/monitoring/collectd/network/server/handlers/main.yml b/roles/monitoring/collectd/network/server/handlers/main.yml new file mode 100644 index 00000000..6bb81b5a --- /dev/null +++ b/roles/monitoring/collectd/network/server/handlers/main.yml @@ -0,0 +1,5 @@ +--- +- name: restart collectd + service: + name: collectd + state: restarted diff --git a/roles/monitoring/collectd/network/server/tasks/main.yml b/roles/monitoring/collectd/network/server/tasks/main.yml new file mode 100644 index 00000000..63eb9221 --- /dev/null +++ b/roles/monitoring/collectd/network/server/tasks/main.yml @@ -0,0 +1,40 @@ +--- +- name: install network-server config + template: + src: network-server.conf.j2 + dest: /etc/collectd/conf.d/network-server.conf + mode: 0644 + notify: restart collectd + +- name: install auth information + when: collectd_network_server_auth is defined + copy: + content: | + {% for user, password in collectd_network_server_auth.users.items() %} + {{ user }}: {{ password }} + {% endfor %} + dest: /etc/collectd/conf.d/auth_file + mode: 0400 + notify: restart collectd + +- name: install custom types.db + when: collectd_network_server_custom_types is defined + block: + - name: generate custom types.db + copy: + content: |+ + {% for name, spec in collectd_network_server_custom_types.items() %} + {{ name }} {{ spec }} + {% endfor %} + dest: /etc/collectd/conf.d/types.db.custom + mode: 0644 + notify: restart collectd + + - name: enable custom types.db + copy: + content: | + TypesDB "/usr/share/collectd/types.db" + TypesDB "/etc/collectd/conf.d/types.db.custom" + dest: /etc/collectd/conf.d/types.conf + mode: 0644 + notify: restart collectd diff --git a/roles/monitoring/collectd/network/server/templates/network-server.conf.j2 b/roles/monitoring/collectd/network/server/templates/network-server.conf.j2 new file mode 100644 index 00000000..95fe5092 --- /dev/null +++ b/roles/monitoring/collectd/network/server/templates/network-server.conf.j2 @@ -0,0 +1,17 @@ +LoadPlugin network + +<Plugin "network"> +{% for addr in collectd_network_server_listen %} +{% if collectd_network_server_auth is defined %} +{% if not loop.first %} + +{% endif %} + <Listen "{{ addr }}"> + SecurityLevel "{{ collectd_network_server_auth.level }}" + AuthFile "/etc/collectd/conf.d/auth_file" + </Listen> +{% else %} + Listen "{{ addr }}" +{% endif %} +{% endfor %} +</Plugin> |