grafana / mimir

Grafana Mimir provides horizontally scalable, highly available, multi-tenant, long-term storage for Prometheus.
https://grafana.com/oss/mimir/
GNU Affero General Public License v3.0
4.12k stars 527 forks source link

kvstore (of e.g. distributor ha_tracker) in redis/valkey #9002

Closed genofire closed 1 month ago

genofire commented 2 months ago

Is your feature request related to a problem? Please describe.

To support beside etcd and consul also redis/valkey kvstores

Describe the solution you'd like

redis/valkey is also a really common tool for keyvalue storage (and cacheing)

Additional context

an example how the configuration could look like

limits:
  accept_ha_samples: true
  ha_cluster_label: "env_id"
  ha_replica_label: "prometheus_replica"

distributor:
  ha_tracker:
    enable_ha_tracker: true
    ha_tracker_update_timeout: 15s
    ha_tracker_update_timeout_jitter_max: 5s
    ha_tracker_failover_timeout: 30s
  kvstore:
    store: redis
redis:
  endpoint: "valkey.mimir.svc"
dimitarvdimitrov commented 2 months ago

looks related to https://github.com/grafana/mimir/issues/1597. Would using memberlist instead also work in your setup?

56quarters commented 2 months ago

To add to the above: there are no plans to expand our use of Redis to HA tracker and it's extremely unlikely we'd add this or accept a community PR that added this. Hopefully the linked issue of using memberlist would fit your use case.