Search code examples
kubernetesredisprometheusbitnami

K8s: How to enable metric collecting for Redis (Prometheus)


I installed from helm prometheus stack (prometheus-community/kube-prometheus-stack).

After that I updated my redis helm config, I enabled monitoring:

values.yaml:

...
metrics:
  enabled: true
  ...
  serviceMonitor:
    enabled: true
    namespace: "monitoring"
  ...

I see that servicemonitor was created and redis has 3 sidecar containers:

  • metrics
  • redis
  • sentinel

But I don`t see redis metrics in Prometheus :(

Should I add something else?


Solution

  • Below troubleshooting steps will help you to resolve your issue:

    1.Check if your deployments are in running state without any errors.

    2.Check if the service exporter is working fine and pointing to correct pods

     kubectl describe servicemonitors <redis-exporter-servicemonitor> -n <service-monitor-namespace>
    

    3.Check if the correct namespace selector is used.

    4.As per this git issue label monitoring: prometheus should be added in kube-state-metric.

    kube-state-metrics:
      prometheus:
        monitor:
          enabled: true
          additionalLabels:
            monitoring: prometheus
    

    5.If you are still facing issues check logs for errors and go through this troubleshooting doc.

    Additionally you can also check the blog on monitoring redis using prometheus written by Gapilan Sivasithamparam and another blog authored by David.