Monitoring Stack Role
Deploy the monitoring stack (Garage object store, Mimir, Loki, and Perses UI) as Podman quadlets.
Variables
| Variable | Type | Options | Default | Description |
|---|---|---|---|---|
podman_user | string | --- | {{ ansible_user }} | system user for rootless podman operations |
monitoring_stack_network_enabled | bool | true, false | true | create and manage the podman network |
monitoring_stack_network_name | string | --- | monitoring-stack-internal | podman network name |
monitoring_stack_bind_ip | string | --- | 127.0.0.1 | host IP to bind exposed ports to |
monitoring_stack_port_map_enabled | bool | true, false | false | expose container ports on the host |
monitoring_stack_port_map | list of string | --- | [] | host:container port mappings |
monitoring_stack_garage_version | string | --- | v2.3.0 | GarageHQ container image version |
monitoring_stack_mimir_version | string | --- | 3.2.0 | Mimir container image version |
monitoring_stack_loki_version | string | --- | 3.7.6 | Loki container image version |
monitoring_stack_perses_version | string | --- | v0.54.0-rc.1 | Perses container image version |
monitoring_stack_garage_autoupdate | bool | true, false | true | enable podman auto-update for GarageHQ |
monitoring_stack_mimir_autoupdate | bool | true, false | true | enable podman auto-update for Mimir |
monitoring_stack_loki_autoupdate | bool | true, false | true | enable podman auto-update for Loki |
monitoring_stack_perses_autoupdate | bool | true, false | true | enable podman auto-update for Perses |
monitoring_stack_garage_rpc_secret | string | --- | "" | GarageHQ RPC secret (openssl rand -hex 32) |
monitoring_stack_garage_admin_token | string | --- | "" | GarageHQ admin token (openssl rand -base64 32) |
monitoring_stack_garage_metrics_token | string | --- | "" | GarageHQ metrics token (openssl rand -base64 32) |
monitoring_stack_garage_region | string | --- | garage | GarageHQ region name |
monitoring_stack_garage_rpc_port | integer | --- | 3901 | GarageHQ internal RPC port |
monitoring_stack_garage_s3_api_port | integer | --- | 3900 | GarageHQ S3 API port |
monitoring_stack_garage_web_port | integer | --- | 3902 | GarageHQ web UI port |
monitoring_stack_garage_admin_port | integer | --- | 3903 | GarageHQ admin port |
monitoring_stack_garage_mimir_bucket | string | --- | mimir | S3 bucket name for Mimir |
monitoring_stack_garage_loki_bucket | string | --- | loki | S3 bucket name for Loki |
monitoring_stack_garage_storage_capacity | string | --- | 100G | storage capacity hint for layout assignment |
monitoring_stack_garage_init | bool | true, false | false | run GarageHQ one-time initialization (set true on first deploy) |
monitoring_stack_mimir_access_key_id | string | --- | "" | Mimir S3 access key ID for GarageHQ |
monitoring_stack_mimir_secret_access_key | string | --- | "" | Mimir S3 secret access key for GarageHQ |
monitoring_stack_loki_access_key_id | string | --- | "" | Loki S3 access key ID for GarageHQ |
monitoring_stack_loki_secret_access_key | string | --- | "" | Loki S3 secret access key for GarageHQ |
monitoring_stack_mimir_http_port | integer | --- | 9009 | Mimir HTTP port inside the container |
monitoring_stack_mimir_grpc_port | integer | --- | 9095 | Mimir gRPC port inside the container |
monitoring_stack_mimir_log_level | string | --- | warn | Mimir log level |
monitoring_stack_mimir_ingestion_rate | integer | --- | 100000 | Mimir ingestion rate limit |
monitoring_stack_mimir_max_global_series_per_user | integer | --- | 10000000 | Mimir max global series per user |
monitoring_stack_mimir_out_of_order_time_window | string | --- | 1h | Mimir out-of-order ingestion time window |
monitoring_stack_loki_http_port | integer | --- | 3100 | Loki HTTP port inside the container |
monitoring_stack_loki_grpc_port | integer | --- | 9096 | Loki gRPC port inside the container |
monitoring_stack_loki_log_level | string | --- | warn | Loki log level |
monitoring_stack_perses_http_port | integer | --- | 8080 | Perses HTTP port inside the container |
monitoring_stack_perses_oidc_enabled | bool | true, false | true | enable OIDC authentication for Perses |
monitoring_stack_perses_oidc_client_id | string | --- | perses | OIDC client ID for Perses |
monitoring_stack_perses_oidc_client_secret | string | --- | "" | OIDC client secret for Perses |
monitoring_stack_perses_oidc_issuer | string | --- | https://login.nixpi.de/realms/nixpi | OIDC issuer URL for Perses |
monitoring_stack_perses_external_url | string | --- | https://monitoring.nixpi.de | browser-facing URL for the monitoring stack |
monitoring_stack_loki_basic_auth_user | string | --- | alloy | basic auth username for Loki (Alloy scraping) |
monitoring_stack_loki_basic_auth_hash | string | --- | "" | bcrypt hash for Loki basic auth password |
monitoring_stack_mimir_basic_auth_user | string | --- | alloy | basic auth username for Mimir (Alloy scraping) |
monitoring_stack_mimir_basic_auth_hash | string | --- | "" | bcrypt hash for Mimir basic auth password |
monitoring_stack_extra_files | list of dict | --- | [] | arbitrary file entries with src (controller path) or source (target path), dest, optional mount, mode, and template |
monitoring_stack_extra_dirs | list of dict | --- | [] | arbitrary directory entries with src (controller directory) or source (target path), dest, optional mount and mode |
monitoring_stack_garage_entrypoint | string | --- | "" | optional GarageHQ container entrypoint override |
monitoring_stack_mimir_entrypoint | string | --- | "" | optional Mimir container entrypoint override |
monitoring_stack_loki_entrypoint | string | --- | "" | optional Loki container entrypoint override |
monitoring_stack_perses_entrypoint | string | --- | "" | optional Perses container entrypoint override |
monitoring_stack_proxy_enabled | bool | true, false | false | enable HTTP proxy for image pulls |
monitoring_stack_proxy_http | string | --- | "" | HTTP proxy URL |
monitoring_stack_proxy_https | string | --- | "" | HTTPS proxy URL |
monitoring_stack_proxy_no_proxy | string | --- | "" | comma-separated list of proxy exclusions |
monitoring_stack_proxy_env | list of string | --- | [] | generated proxy environment entries |
monitoring_stack_network_driver | string | --- | bridge | podman network driver |
monitoring_stack_mimir_environment_vars | dict | --- | {"GOMAXPROCS":"2"} | extra environment variables for Mimir |
monitoring_stack_loki_environment_vars | dict | --- | {"GOMAXPROCS":"2"} | extra environment variables for Loki |
monitoring_stack_perses_environment_vars | dict | --- | {} | extra environment variables for Perses |