dragonflydb / dragonflydb/dragonfly-operator

improve monitoring of controlled dragonfly instances

Open
#311 1 comment 1 reaction 0 assignees View on GitHub
good first issue help wanted
Dominant language
Go
Stars
357
Forks
111
PR merge metrics
No merged PRs in 30d

Description

At present the helm chart for the operator offers to create a servicemonitor for the operator itself, but the operator does nothing to configure monitoring of the controlled dragonfly db instances. Additionally the Service the operator creates does not expose the metrics/admin port. This should be enhanced so that:

1. the Service for the `role=master` is updated to also expose port `9999`
2. Optionally the CRD allows a separate Metrics service is created that collects metrics from all replicas, not just the current master
3. A ServiceMonitor can be enabled through the CRD to provide prometheus scraping of either the default 'master' Service or the optional 'all dragonfly instances' metrics Service

Contributor guide

Open the contributing guide

Research direction

Start by tracing the Helm chart, CRD definition, and operator-created Services, focusing on the role=master Service and its metrics/admin port. Verify how a ServiceMonitor is currently configured, then implement and test the three requested options: port 9999 on the master Service, an optional all-instances metrics Service, and CRD-controlled scraping for either Service.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, helm, kubernetes, prometheus
Domain
devops, infrastructure, observability-sre
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.