Move _ansible directory into main directory
This commit is contained in:
parent
519882db43
commit
40742e3214
124 changed files with 246 additions and 141 deletions
roles/telegraf
27
roles/telegraf/tasks/main.yml
Normal file
27
roles/telegraf/tasks/main.yml
Normal file
|
@ -0,0 +1,27 @@
|
|||
---
|
||||
- name: Set common facts
|
||||
ansible.builtin.import_tasks: tasks/set-default-facts.yml
|
||||
|
||||
- name: Deploy {{ svc.name }}
|
||||
vars:
|
||||
svc: "{{ telegraf_svc }}"
|
||||
env: "{{ telegraf_env }}"
|
||||
compose: "{{ telegraf_compose }}"
|
||||
block:
|
||||
- name: Import prepare tasks for common service
|
||||
ansible.builtin.import_tasks: tasks/prepare-common-service.yml
|
||||
|
||||
- name: Template config
|
||||
ansible.builtin.template:
|
||||
src: telegraf.conf.j2
|
||||
dest: "{{ (service_path, 'telegraf.conf') | path_join }}"
|
||||
mode: "0664"
|
||||
register: cmd_result
|
||||
|
||||
- name: Set the docker force-recreate flag
|
||||
ansible.builtin.set_fact:
|
||||
docker_force_recreate: --force-recreate
|
||||
when: cmd_result.changed # noqa: no-handler We need to handle the restart per service. Handlers don't support variables.
|
||||
|
||||
- name: Import start tasks for common service
|
||||
ansible.builtin.import_tasks: tasks/start-common-service.yml
|
40
roles/telegraf/templates/telegraf.conf.j2
Normal file
40
roles/telegraf/templates/telegraf.conf.j2
Normal file
|
@ -0,0 +1,40 @@
|
|||
[agent]
|
||||
interval = "60s"
|
||||
round_interval = true
|
||||
metric_batch_size = 1000
|
||||
metric_buffer_limit = 10000
|
||||
collection_jitter = "0s"
|
||||
flush_interval = "10s"
|
||||
flush_jitter = "0s"
|
||||
precision = ""
|
||||
hostname = "node002.serguzim.me"
|
||||
omit_hostname = false
|
||||
|
||||
[[outputs.influxdb_v2]]
|
||||
urls = ["{{ svc.influxdb.url }}"]
|
||||
token = "{{ svc.influxdb.token }}"
|
||||
organization = "{{ svc.influxdb.organization }}"
|
||||
bucket = "{{ svc.influxdb.bucket }}"
|
||||
|
||||
[[inputs.prometheus]]
|
||||
urls = [
|
||||
{%- for url in svc.prometheus.urls -%}
|
||||
"{{ url }}",
|
||||
{%- endfor -%}
|
||||
]
|
||||
|
||||
bearer_token_string = "{{ svc.prometheus.bearer_token }}"
|
||||
|
||||
[[inputs.postgresql]]
|
||||
address = "postgres://{{ svc.postgresql.user }}:{{ svc.postgresql.pass }}@{{ svc.postgresql.host }}:{{ svc.postgresql.port }}/{{ svc.postgresql.database }}?sslmode=verify-full"
|
||||
ignored_databases = ["postgres", "template0", "template1"]
|
||||
prepared_statements = true
|
||||
|
||||
[[inputs.docker_log]]
|
||||
endpoint = "{{ svc.docker_log.endpoint }}"
|
||||
|
||||
docker_label_include = [
|
||||
"com.influxdata.telegraf.enable"
|
||||
]
|
||||
|
||||
source_tag = {{ svc.docker_log.source_tag|lower }}
|
39
roles/telegraf/vars/main.yml
Normal file
39
roles/telegraf/vars/main.yml
Normal file
|
@ -0,0 +1,39 @@
|
|||
---
|
||||
telegraf_svc:
|
||||
name: telegraf
|
||||
influxdb:
|
||||
url: https://tick.serguzim.me
|
||||
token: "{{ vault_telegraf.influxdb_token }}"
|
||||
organization: serguzim.net
|
||||
bucket: metrics
|
||||
prometheus:
|
||||
urls:
|
||||
- https://ci.serguzim.me/metrics
|
||||
- https://git.serguzim.me/metrics
|
||||
- https://matrix.msrg.cc/_synapse/metrics
|
||||
- https://tick.serguzim.me/metrics
|
||||
bearer_token: "{{ vault_metrics_token }}"
|
||||
postgresql:
|
||||
user: "{{ vault_telegraf.db.user }}"
|
||||
pass: "{{ vault_telegraf.db.pass }}"
|
||||
host: "{{ postgres.host }}"
|
||||
port: "{{ postgres.port }}"
|
||||
database: telegraf
|
||||
docker_log:
|
||||
endpoint: unix:///var/run/docker.sock
|
||||
source_tag: false
|
||||
|
||||
telegraf_compose:
|
||||
watchtower: false
|
||||
image: telegraf:1.28
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- ./telegraf.conf:/etc/telegraf/telegraf.conf:ro
|
||||
file:
|
||||
services:
|
||||
app:
|
||||
user: telegraf
|
||||
group_add:
|
||||
- "972" # docker group on host
|
||||
volumes:
|
||||
data:
|
Reference in a new issue