reorg tasks

This commit is contained in:
Ludovic Cartier
2022-11-11 19:04:14 +01:00
parent 5c37a866cc
commit 80e0fdcbe8
13 changed files with 23 additions and 55 deletions

43
tasks/exporter/apache.yml Normal file
View File

@ -0,0 +1,43 @@
---
- name: 'prometheus | apache exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/Lusitaniae/apache_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_apache_exporter_latest_version
run_once: true
- name: 'prometheus | apache exporter | download'
get_url:
url: https://github.com/Lusitaniae/apache_exporter/releases/download/v{{ prometheus_apache_exporter_version|default(prometheus_apache_exporter_latest_version.stdout) }}/apache_exporter-{{ prometheus_apache_exporter_version|default(prometheus_apache_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | apache exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/apache_exporter-{{ prometheus_apache_exporter_version|default(prometheus_apache_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | apache exporter | move to /usr/local/bin'
copy:
src: /tmp/apache_exporter-{{ prometheus_apache_exporter_version|default(prometheus_apache_exporter_latest_version.stdout) }}.linux-amd64/apache_exporter
dest: /usr/local/bin/prometheus-apache-exporter
remote_src: yes
owner: root
group: root
mode: 0755
notify:
- 'prometheus | apache exporter | restart service'
- name: 'prometheus | apache exporter | install unit file to systemd'
template:
src: systemd/prometheus-apache-exporter.service.j2
dest: /etc/systemd/system/prometheus-apache-exporter.service
owner: root
group: root
mode: 0600
- name: 'prometheus | apache exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-apache-exporter.service

View File

@ -0,0 +1,55 @@
---
- name: 'prometheus | blackbox exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/prometheus/blackbox_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_blackbox_exporter_latest_version
run_once: true
- name: 'prometheus | blackbox exporter | download'
get_url:
url: https://github.com/prometheus/blackbox_exporter/releases/download/v{{ prometheus_blackbox_exporter_version|default(prometheus_blackbox_exporter_latest_version.stdout) }}/blackbox_exporter-{{ prometheus_blackbox_exporter_version|default(prometheus_blackbox_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | blackbox exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/blackbox_exporter-{{ prometheus_blackbox_exporter_version|default(prometheus_blackbox_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | blackbox exporter | move to /usr/local/bin'
copy:
src: /tmp/blackbox_exporter-{{ prometheus_blackbox_exporter_version|default(prometheus_blackbox_exporter_latest_version.stdout) }}.linux-amd64/blackbox_exporter
dest: /usr/local/bin/prometheus-blackbox-exporter
remote_src: yes
owner: root
group: root
mode: 0755
notify:
- 'prometheus | blackbox exporter | restart service'
- name: 'prometheus | blackbox exporter | configuration'
template:
src: conf/prometheus-blackbox-exporter.j2
dest: /etc/default/prometheus-blackbox-exporter
owner: root
group: root
mode: 0600
register: prometheus_blackbox_exporter_configuration
notify:
- 'prometheus | blackbox exporter | restart service'
- name: 'prometheus | blackbox exporter | install unit file to systemd'
template:
src: systemd/prometheus-blackbox-exporter.service.j2
dest: /etc/systemd/system/prometheus-blackbox-exporter.service
owner: root
group: root
mode: 0600
- name: 'prometheus | blackbox exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-blackbox-exporter.service

View File

@ -0,0 +1,54 @@
---
- name: 'prometheus | memcached exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/prometheus/memcached_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_memcached_exporter_latest_version
run_once: true
- name: 'prometheus | memcached exporter | download'
get_url:
url: https://github.com/prometheus/memcached_exporter/releases/download/v{{ prometheus_memcached_exporter_version|default(prometheus_memcached_exporter_latest_version.stdout) }}/memcached_exporter-{{ prometheus_memcached_exporter_version|default(prometheus_memcached_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | memcached exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/memcached_exporter-{{ prometheus_memcached_exporter_version|default(prometheus_memcached_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | memcached exporter | move to /usr/local/bin'
copy:
src: /tmp/memcached_exporter-{{ prometheus_memcached_exporter_version|default(prometheus_memcached_exporter_latest_version.stdout) }}.linux-amd64/memcached_exporter
dest: /usr/local/bin/prometheus-memcached-exporter
remote_src: yes
owner: root
group: root
mode: 0755
- name: 'prometheus | memcached exporter | install unit file to systemd'
template:
src: systemd/prometheus-memcached-exporter.service.j2
dest: /etc/systemd/system/prometheus-memcached-exporter.service
owner: root
group: root
mode: 0600
notify:
- 'prometheus | memcached exporter | restart service'
# - name: 'prometheus | memcached exporter | configuration'
# template:
# src: conf/prometheus-memcached-exporter.j2
# dest: /etc/default/prometheus-memcached-exporter
# owner: root
# group: root
# mode: 0600
# register: prometheus_memcached_exporter_configuration
# notify:
# - 'prometheus | memcached exporter | restart service'
- name: 'prometheus | memcached exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-memcached-exporter.service

View File

@ -0,0 +1,70 @@
---
- name: 'prometheus | mongodb exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/percona/mongodb_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_mongodb_exporter_latest_version
run_once: true
- name: 'prometheus | mongodb exporter | download'
get_url:
url: https://github.com/percona/mongodb_exporter/releases/download/v{{ prometheus_mongodb_exporter_version|default(prometheus_mongodb_exporter_latest_version.stdout) }}/mongodb_exporter-{{ prometheus_mongodb_exporter_version|default(prometheus_mongodb_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | mongodb exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/mongodb_exporter-{{ prometheus_mongodb_exporter_version|default(prometheus_mongodb_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | mongodb exporter < v0.2 | move to /usr/local/bin'
copy:
src: /tmp/mongodb_exporter
dest: /usr/local/bin/prometheus-mongodb-exporter
remote_src: yes
owner: root
group: root
mode: 0755
notify:
- 'prometheus | mongodb exporter | restart service'
when:
- prometheus_mongodb_exporter_latest_version.stdout < '0.2'
- name: 'prometheus | mongodb exporter > v0.2 | move to /usr/local/bin'
copy:
src: /tmp/mongodb_exporter-{{ prometheus_mongodb_exporter_version|default(prometheus_mongodb_exporter_latest_version.stdout) }}.linux-amd64/mongodb_exporter
dest: /usr/local/bin/prometheus-mongodb-exporter
remote_src: yes
owner: root
group: root
mode: 0755
notify:
- 'prometheus | mongodb exporter | restart service'
when:
- prometheus_mongodb_exporter_latest_version.stdout > '0.2'
- name: 'prometheus | mongodb exporter | configuration'
template:
src: conf/prometheus-mongodb-exporter.j2
dest: /etc/default/prometheus-mongodb-exporter
owner: root
group: root
mode: 0600
notify:
- 'prometheus | mongodb exporter | restart service'
- name: 'prometheus | mongodb exporter | install unit file to systemd'
template:
src: systemd/prometheus-mongodb-exporter.service.j2
dest: /etc/systemd/system/prometheus-mongodb-exporter.service
owner: root
group: root
mode: 0600
notify:
- 'prometheus | mongodb exporter | restart service'
- name: 'prometheus | mongodb exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-mongodb-exporter.service

56
tasks/exporter/mysqld.yml Normal file
View File

@ -0,0 +1,56 @@
---
- name: 'prometheus | mysqld exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/prometheus/mysqld_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_mysqld_exporter_latest_version
run_once: true
- name: 'prometheus | mysqld exporter | download'
get_url:
url: https://github.com/prometheus/mysqld_exporter/releases/download/v{{ prometheus_mysqld_exporter_version|default(prometheus_mysqld_exporter_latest_version.stdout) }}/mysqld_exporter-{{ prometheus_mysqld_exporter_version|default(prometheus_mysqld_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | mysqld exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/mysqld_exporter-{{ prometheus_mysqld_exporter_version|default(prometheus_mysqld_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | mysqld exporter | move to /usr/local/bin'
copy:
src: /tmp/mysqld_exporter-{{ prometheus_mysqld_exporter_version|default(prometheus_mysqld_exporter_latest_version.stdout) }}.linux-amd64/mysqld_exporter
dest: /usr/local/bin/prometheus-mysqld-exporter
remote_src: yes
owner: root
group: root
mode: 0755
notify:
- 'prometheus | mysqld exporter | restart service'
- name: 'prometheus | mysqld exporter | configuration'
template:
src: conf/prometheus-mysqld-exporter.j2
dest: /etc/default/prometheus-mysqld-exporter
owner: root
group: root
mode: 0600
when:
- prometheus_mysqld_exporter_user is defined
register: prometheus_mysqld_exporter_configuration
notify:
- 'prometheus | mysqld exporter | restart service'
- name: 'prometheus | mysqld exporter | install unit file to systemd'
template:
src: systemd/prometheus-mysqld-exporter.service.j2
dest: /etc/systemd/system/prometheus-mysqld-exporter.service
owner: root
group: root
mode: 0600
- name: 'prometheus | mysqld exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-mysqld-exporter.service

43
tasks/exporter/node.yml Normal file
View File

@ -0,0 +1,43 @@
---
- name: 'prometheus | node exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/prometheus/node_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_node_exporter_latest_version
run_once: true
- name: 'prometheus | node exporter | download'
get_url:
url: https://github.com/prometheus/node_exporter/releases/download/v{{ prometheus_node_exporter_version|default(prometheus_node_exporter_latest_version.stdout) }}/node_exporter-{{ prometheus_node_exporter_version|default(prometheus_node_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | node exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/node_exporter-{{ prometheus_node_exporter_version|default(prometheus_node_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | node exporter | move to /usr/local/bin'
copy:
src: /tmp/node_exporter-{{ prometheus_node_exporter_version|default(prometheus_node_exporter_latest_version.stdout) }}.linux-amd64/node_exporter
dest: /usr/local/bin/prometheus-node-exporter
remote_src: yes
owner: root
group: root
mode: 0755
notify:
- 'prometheus | node exporter | restart service'
- name: 'prometheus | node exporter | install unit file to systemd'
template:
src: systemd/prometheus-node-exporter.service.j2
dest: /etc/systemd/system/prometheus-node-exporter.service
owner: root
group: root
mode: 0600
- name: 'prometheus | node exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-node-exporter.service

View File

@ -0,0 +1,44 @@
---
- name: 'prometheus | opcache exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/MyOnlineStore/opcache-exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_opcache_exporter_latest_version
run_once: true
- name: 'prometheus | opcache exporter | download'
get_url:
url: https://github.com/MyOnlineStore/opcache-exporter/releases/download/v{{ prometheus_opcache_exporter_version|default(prometheus_opcache_exporter_latest_version.stdout) }}/opcache_exporter-{{ prometheus_opcache_exporter_version|default(prometheus_opcache_exporter_latest_version.stdout) }}-linux-amd64
dest: /tmp
- name: 'prometheus | opcache exporter | move to /usr/local/bin'
copy:
src: /tmp/opcache_exporter-{{ prometheus_opcache_exporter_version|default(prometheus_opcache_exporter_latest_version.stdout) }}-linux-amd64
dest: /usr/local/bin/prometheus-opcache-exporter
remote_src: yes
owner: root
group: root
mode: 0755
- name: 'prometheus | opcache exporter | configuration'
template:
src: conf/prometheus-opcache-exporter.j2
dest: /etc/default/prometheus-opcache-exporter
owner: root
group: root
mode: 0600
register: prometheus_opcache_exporter_configuration
- name: 'prometheus | opcache exporter | install unit file to systemd'
template:
src: systemd/prometheus-opcache-exporter.service.j2
dest: /etc/systemd/system/prometheus-opcache-exporter.service
owner: root
group: root
mode: 0600
- name: 'prometheus | opcache exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-opcache-exporter.service

51
tasks/exporter/phpfpm.yml Normal file
View File

@ -0,0 +1,51 @@
---
- name: 'prometheus | phpfpm exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/Lusitaniae/phpfpm_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_phpfpm_exporter_latest_version
run_once: true
- name: 'prometheus | phpfpm exporter | download'
get_url:
url: https://github.com/Lusitaniae/phpfpm_exporter/releases/download/v{{ prometheus_phpfpm_exporter_version|default(prometheus_phpfpm_exporter_latest_version.stdout) }}/phpfpm_exporter-{{ prometheus_phpfpm_exporter_version|default(prometheus_phpfpm_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | phpfpm exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/phpfpm_exporter-{{ prometheus_phpfpm_exporter_version|default(prometheus_phpfpm_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | phpfpm exporter | move to /usr/local/bin'
copy:
src: /tmp/phpfpm_exporter-{{ prometheus_phpfpm_exporter_version|default(prometheus_phpfpm_exporter_latest_version.stdout) }}.linux-amd64/phpfpm_exporter
dest: /usr/local/bin/prometheus-phpfpm-exporter
remote_src: yes
owner: root
group: root
mode: 0755
notify:
- 'prometheus | phpfpm exporter | restart service'
- name: 'prometheus | phpfpm exporter | install startup script'
template:
src: scripts/prometheus-phpfpm-exporter-script.sh.j2
dest: /usr/local/bin/prometheus-phpfpm-exporter-script.sh
owner: root
group: root
mode: 0600
- name: 'prometheus | phpfpm exporter | install unit file to systemd'
template:
src: systemd/prometheus-phpfpm-exporter.service.j2
dest: /etc/systemd/system/prometheus-phpfpm-exporter.service
owner: root
group: root
mode: 0600
- name: 'prometheus | phpfpm exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-phpfpm-exporter.service

View File

@ -0,0 +1,55 @@
---
- name: 'prometheus | postgres exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/prometheus-community/postgres_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_postgres_exporter_latest_version
run_once: true
- name: 'prometheus | postgres exporter | download'
get_url:
url: https://github.com/prometheus-community/postgres_exporter/releases/download/v{{ prometheus_postgres_exporter_version|default(prometheus_postgres_exporter_latest_version.stdout) }}/postgres_exporter-{{ prometheus_postgres_exporter_version|default(prometheus_postgres_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | postgres exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/postgres_exporter-{{ prometheus_postgres_exporter_version|default(prometheus_postgres_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | postgres exporter | move to /usr/local/bin'
copy:
src: /tmp/postgres_exporter-{{ prometheus_postgres_exporter_version|default(prometheus_postgres_exporter_latest_version.stdout) }}.linux-amd64/postgres_exporter
dest: /usr/local/bin/prometheus-postgres-exporter
remote_src: yes
owner: root
group: root
mode: 0755
notify:
- 'prometheus | postgres exporter | restart service'
- name: 'prometheus | postgres exporter | configuration'
template:
src: conf/prometheus-postgres-exporter.j2
dest: /etc/default/prometheus-postgres-exporter
owner: root
group: root
mode: 0600
register: prometheus_postgres_exporter_configuration
notify:
- 'prometheus | postgres exporter | restart service'
- name: 'prometheus | postgres exporter | install unit file to systemd'
template:
src: systemd/prometheus-postgres-exporter.service.j2
dest: /etc/systemd/system/prometheus-postgres-exporter.service
owner: root
group: root
mode: 0600
- name: 'prometheus | postgres exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
state: started
name: prometheus-postgres-exporter.service

52
tasks/exporter/redis.yml Normal file
View File

@ -0,0 +1,52 @@
---
- name: 'prometheus | redis exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/oliver006/redis_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_redis_exporter_latest_version
run_once: true
- name: 'prometheus | redis exporter | download'
get_url:
url: https://github.com/oliver006/redis_exporter/releases/download/v{{ prometheus_redis_exporter_version|default(prometheus_redis_exporter_latest_version.stdout) }}/redis_exporter-v{{ prometheus_redis_exporter_version|default(prometheus_redis_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | redis exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/redis_exporter-v{{ prometheus_redis_exporter_version|default(prometheus_redis_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | redis exporter | move to /usr/local/bin'
copy:
src: /tmp/redis_exporter-v{{ prometheus_redis_exporter_version|default(prometheus_redis_exporter_latest_version.stdout) }}.linux-amd64/redis_exporter
dest: /usr/local/bin/prometheus-redis-exporter
remote_src: yes
owner: root
group: root
mode: 0755
- name: 'prometheus | redis exporter | install unit file to systemd'
template:
src: systemd/prometheus-redis-exporter.service.j2
dest: /etc/systemd/system/prometheus-redis-exporter.service
owner: root
group: root
mode: 0600
- name: 'prometheus | redis exporter | configuration'
template:
src: conf/prometheus-redis-exporter.j2
dest: /etc/default/prometheus-redis-exporter
owner: root
group: root
mode: 0600
register: prometheus_redis_exporter_configuration
notify:
- 'prometheus | redis exporter | restart service'
- name: 'prometheus | redis exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-redis-exporter.service

View File

@ -0,0 +1,43 @@
---
- name: 'prometheus | varnish exporter | get latest release from GitHub'
shell: curl --silent "https://api.github.com/repos/jonnenauha/prometheus_varnish_exporter/releases/latest" | jq -r .tag_name | sed "s/v//"
args:
warn: false
register: prometheus_varnish_exporter_latest_version
run_once: true
- name: 'prometheus | varnish exporter | download'
get_url:
url: https://github.com/jonnenauha/prometheus_varnish_exporter/releases/download/{{ prometheus_varnish_exporter_version|default(prometheus_varnish_exporter_latest_version.stdout) }}/prometheus_varnish_exporter-{{ prometheus_varnish_exporter_version|default(prometheus_varnish_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | varnish exporter | unarchive'
unarchive:
remote_src: yes
src: /tmp/prometheus_varnish_exporter-{{ prometheus_varnish_exporter_version|default(prometheus_varnish_exporter_latest_version.stdout) }}.linux-amd64.tar.gz
dest: /tmp
- name: 'prometheus | varnish exporter | move to /usr/local/bin'
copy:
src: /tmp/prometheus_varnish_exporter-{{ prometheus_varnish_exporter_version|default(prometheus_varnish_exporter_latest_version.stdout) }}.linux-amd64/prometheus_varnish_exporter
dest: /usr/local/bin/prometheus-varnish-exporter
remote_src: yes
owner: root
group: root
mode: 0755
notify:
- 'prometheus | varnish exporter | restart service'
- name: 'prometheus | varnish exporter | install unit file to systemd'
template:
src: systemd/prometheus-varnish-exporter.service.j2
dest: /etc/systemd/system/prometheus-varnish-exporter.service
owner: root
group: root
mode: 0600
- name: 'prometheus | varnish exporter | configure systemd to use service'
systemd:
daemon_reload: yes
enabled: yes
name: prometheus-varnish-exporter.service