diff --git a/docs/all.md b/docs/all.md index 234e32a..4563e8a 100644 --- a/docs/all.md +++ b/docs/all.md @@ -2,7 +2,8 @@ These variables might be required by multiple roles and need to be defined. Example values below. ``` -admin_email: 'admin@domain.tld' +admin_email: admin@domain.tld +local_network: 10.0.0.0/8 ``` # Optional variables diff --git a/roles/prometheus_node_exporter/handlers/main.yml b/roles/prometheus_node_exporter/handlers/main.yml new file mode 100644 index 0000000..58bf584 --- /dev/null +++ b/roles/prometheus_node_exporter/handlers/main.yml @@ -0,0 +1,6 @@ +--- + +- name: restart prometheus-node-exporter + systemd: + name: prometheus-node-exporter + state: restarted diff --git a/roles/prometheus_node_exporter/meta/argument_specs.yml b/roles/prometheus_node_exporter/meta/argument_specs.yml new file mode 100644 index 0000000..923449c --- /dev/null +++ b/roles/prometheus_node_exporter/meta/argument_specs.yml @@ -0,0 +1,10 @@ +--- + +argument_specs: + main: + short_description: Prometheus node exporter + options: + local_network: + description: The local ipv4 network block, listen address is taken from this block + type: str + required: true diff --git a/roles/prometheus_node_exporter/tasks/main.yml b/roles/prometheus_node_exporter/tasks/main.yml new file mode 100644 index 0000000..ad56f8b --- /dev/null +++ b/roles/prometheus_node_exporter/tasks/main.yml @@ -0,0 +1,12 @@ +--- + +- name: Install prometheus node exporter + apt: + name: prometheus-node-exporter + +- name: Set prometheus options in /etc/default/prometheus-node-exporter + template: + src: templates/prometheus-node-exporter.j2 + dest: /etc/default/prometheus-node-exporter + mode: 0644 + notify: restart prometheus-node-exporter diff --git a/roles/prometheus_node_exporter/templates/prometheus-node-exporter.j2 b/roles/prometheus_node_exporter/templates/prometheus-node-exporter.j2 new file mode 100644 index 0000000..9ff66a8 --- /dev/null +++ b/roles/prometheus_node_exporter/templates/prometheus-node-exporter.j2 @@ -0,0 +1 @@ +ARGS="--web.listen-address {{ (ansible_all_ipv4_addresses | ansible.utils.ipaddr(local_network))[0] }}:9100 --collector.logind --collector.systemd --collector.processes"