- nginx: nginx-prometheus-exporter gated by nginx_exporter_enabled, deploys loopback-only stub_status (8090), exporter on 9113 - postgres: postgres_exporter gated by postgres_exporter_enabled, creates postgres_exporter role with pg_monitor, exporter on 9187 - valkey: redis_exporter gated by valkey_exporter_enabled, adds read-only ACL user to users.acl, exporter on 9121 Each exporter follows the nut pattern (tasks/exporter.yml included from main.yml, OS vars, 0600 secret env files, password asserts).
35 lines
942 B
YAML
35 lines
942 B
YAML
---
|
|
# Prometheus nginx exporter (optional, gated by nginx_exporter_enabled).
|
|
# Installs nginx-prometheus-exporter and exposes a loopback-only stub_status
|
|
# endpoint that the exporter scrapes.
|
|
|
|
- name: Install nginx-prometheus-exporter
|
|
ansible.builtin.package:
|
|
name: "{{ nginx_exporter_package }}"
|
|
state: present
|
|
|
|
- name: Deploy nginx stub_status endpoint
|
|
ansible.builtin.template:
|
|
src: stub-status.conf.j2
|
|
dest: "{{ nginx_conf_dir }}/99-stub-status.conf"
|
|
owner: root
|
|
group: root
|
|
mode: "0644"
|
|
notify: Reload nginx
|
|
|
|
- name: Deploy exporter environment file
|
|
ansible.builtin.template:
|
|
src: exporter-env.conf.j2
|
|
dest: "{{ nginx_exporter_args_file }}"
|
|
owner: root
|
|
group: root
|
|
mode: "0644"
|
|
notify: Restart nginx exporter
|
|
|
|
- name: Enable and start nginx exporter
|
|
ansible.builtin.systemd:
|
|
name: "{{ nginx_exporter_service }}"
|
|
enabled: true
|
|
state: started
|
|
daemon_reload: true
|