Files
argocd-apps/apps/base/observability/vmpodscrape-redis.yaml
T
unkin-agent 8636d16773
ci/woodpecker/pr/vector-test Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/kubeconform Pipeline was successful
Export and scrape metrics from all redis/valkey instances
No redis/valkey instance in the estate exports metrics today. Adds a
pinned redis_exporter (v1.89.0 via the artifactapi dockerhub remote)
next to every instance and two cluster-wide VMPodScrapes so the
observability VMAgent picks them all up.

- enables the valkey-operator exporter sidecar on the jellyfin
  ValkeyCluster, overriding the operator's bare-dockerhub default image
  with the artifactapi-proxied pin
- adds a metrics-exporter sidecar (:9121, port name metrics) to the
  artifactapi/authentik/litellm redis and gitea/netbox valkey
  Deployments, with the monitoring.unkin.net/redis-exporter opt-in pod
  label
- adds VMPodScrape redis-exporters selecting that label in any
  namespace, and VMPodScrape valkey-operator-clusters for
  operator-managed pods whose labels are fixed (the ValkeyCluster CR has
  no pod-label passthrough)
2026-08-23 12:35:55 +10:00

41 lines
1.3 KiB
YAML

---
# Scrape metrics (:9121) from every redis/valkey pod carrying a redis_exporter
# sidecar in any namespace. Raw redis/valkey Deployments opt in via the
# monitoring.unkin.net/redis-exporter pod label. Picked up by the observability
# VMAgent (selectAllByDefault).
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMPodScrape
metadata:
name: redis-exporters
namespace: observability
spec:
namespaceSelector:
any: true
selector:
matchLabels:
monitoring.unkin.net/redis-exporter: "true"
podMetricsEndpoints:
- port: metrics
path: /metrics
---
# valkey-operator-managed ValkeyCluster pods (e.g. jellyfin-valkey) get fixed
# operator labels only -- the ValkeyCluster CR has no pod-label passthrough, so
# they cannot carry monitoring.unkin.net/redis-exporter and need their own
# selector. The operator's exporter sidecar also listens on :9121 with a port
# named `metrics`.
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMPodScrape
metadata:
name: valkey-operator-clusters
namespace: observability
spec:
namespaceSelector:
any: true
selector:
matchLabels:
app.kubernetes.io/managed-by: valkey-operator
app.kubernetes.io/component: valkey-node
podMetricsEndpoints:
- port: metrics
path: /metrics