--- - name: Configure Prometheus for Blackbox monitoring hosts: 192.168.0.105 become: yes vars: blackbox_targets: "{{ hostvars['192.168.0.112']['blackbox_targets'] }}" tasks: - name: Add blackbox exporter to Prometheus blockinfile: path: /etc/prometheus/prometheus.yml insertafter: ' # cAdvisor container metrics' block: | # Blackbox Exporter probes - job_name: 'blackbox' metrics_path: /probe params: module: [http_2xx] static_configs: - targets: {% for target in blackbox_targets %} - {{ target.url }} {% endfor %} relabel_configs: - source_labels: [__address__] target_label: __param_target - source_labels: [__param_target] target_label: instance - target_label: __address__ replacement: 192.168.0.112:8083 # blackbox-exporter marker: "# {mark} ANSIBLE MANAGED BLOCK - blackbox" - name: Check Prometheus configuration command: promtool check config /etc/prometheus/prometheus.yml register: promtool_check failed_when: promtool_check.rc != 0 - name: Reload Prometheus systemd: name: prometheus state: reloaded when: promtool_check.rc == 0