From 901a2f74505a869fd914023222627eb1d11d4938 Mon Sep 17 00:00:00 2001 From: uumas Date: Mon, 26 Jun 2023 13:12:09 +0300 Subject: [PATCH] prometheus: add customizable storage retention, default to 10 years --- roles/prometheus/defaults/main.yml | 1 + roles/prometheus/meta/argument_specs.yml | 5 +++++ roles/prometheus/tasks/main.yml | 7 +++++++ 3 files changed, 13 insertions(+) diff --git a/roles/prometheus/defaults/main.yml b/roles/prometheus/defaults/main.yml index 58f3607..ef92987 100644 --- a/roles/prometheus/defaults/main.yml +++ b/roles/prometheus/defaults/main.yml @@ -2,5 +2,6 @@ prometheus_scrape_interval: 5s prometheus_evaluation_interval: 15s +prometheus_storage_retention: 3650d prometheus_install_grafana: false prometheus_hcloud_relabel_configs: [] diff --git a/roles/prometheus/meta/argument_specs.yml b/roles/prometheus/meta/argument_specs.yml index 32ec5d9..2e9ea13 100644 --- a/roles/prometheus/meta/argument_specs.yml +++ b/roles/prometheus/meta/argument_specs.yml @@ -14,6 +14,11 @@ argument_specs: type: str required: false default: 15s + prometheus_storage_retention: + description: Period of time for which prometheus metrics are stored for. A number followed by unit (s, m, h, d, w, y) + type: str + required: false + default: 3650d prometheus_hcloud_token: description: Access token for hetzner cloud service discovery. It will be enabled if this variable is defined type: str diff --git a/roles/prometheus/tasks/main.yml b/roles/prometheus/tasks/main.yml index 54a2bef..f0427ca 100644 --- a/roles/prometheus/tasks/main.yml +++ b/roles/prometheus/tasks/main.yml @@ -7,6 +7,13 @@ docker_service: prometheus docker_image: prom/prometheus reverse_proxy_type: none + docker_command: + - "--config.file=/etc/prometheus/prometheus.yml" + - "--storage.tsdb.path=/prometheus" + - "--storage.tsdb.retention={{ prometheus_storage_retention }}" + - "--web.console.libraries=/usr/share/prometheus/console_libraries" + - "--web.console.templates=/usr/share/prometheus/consoles" + docker_volumes: - name: data path: /prometheus