add cloudflare exporter

This commit is contained in:
Ludovic Cartier
2023-01-27 16:51:27 +01:00
parent 17e1e50a48
commit a7940658b1
7 changed files with 108 additions and 2 deletions

View File

@ -0,0 +1,46 @@
---
- name: '{{ exporter }} exporter | check if docker is installed'
shell:
cmd: {{ item }} --help
register: result
check_mode: false
changed_when: false
failed_when: result.rc != 0 and result.rc != 127
with_items:
- docker
- docker-compose
tags: [ 'prometheus_{{ exporter }}' ]
- name: '{{ exporter }} exporter | create docker-compose directory'
file:
path: "{{ docker_compose_directory }}"
state: directory
mode: '0755'
tags: [ 'prometheus_{{ exporter }}' ]
- name: '{{ exporter }} exporter | copy docker-compose file'
template:
src: compose/{{ exporter }}.yml.j2
dest: /opt/docker-compose/{{ exporter }}/docker-compose.yml
owner: root
group: root
mode: 0644
notify: "{{ exporter }}-restart"
tags: [ 'prometheus_{{ exporter }}' ]
- name: '{{ exporter }} exporter | systemd | install unit file'
template:
src: systemd/docker-compose.service.j2
dest: /etc/systemd/system/docker-compose@{{ exporter }}.service
owner: root
group: root
mode: 0600
tags: [ 'prometheus_{{ exporter }}' ]
- name: '{{ exporter }} exporter | systemd | enable service'
systemd:
daemon_reload: yes
name: docker-compose@{{ exporter }}
enabled: true
ignore_errors: '{{ ansible_check_mode }}'
tags: [ 'prometheus_{{ exporter }}' ]

View File

@ -0,0 +1,9 @@
---
- name: cloudflare | check vars are defined
assert:
that:
- cloudflare_api_key is defined
tags: ['prometheus_cloudflare_exporter']
- include_tasks: _docker.yml
tags: ['prometheus_cloudflare_exporter']

View File

@ -7,7 +7,7 @@
- name: 'prometheus | server | create docker network'
docker_network:
name: 'prometheus'
name: '{{ prometheus_docker_network }}'
tags: ['prometheus_server']
- name: 'prometheus | server | create docker volume data'
@ -50,7 +50,7 @@
- '--web.console.templates=/usr/share/prometheus/consoles'
- '--web.enable-admin-api'
networks:
- { name: prometheus }
- { name: {{ prometheus_docker_network }} }
ports:
- "9090:9090"
log_driver: syslog