Skip to content

Conversation

@icelynjennings
Copy link

Proposed changes

Closes #4293

Testing: templated successfully via a local helm template cli run, but ideally should be further tested in Prometheus.

Checklist

Before creating a PR, run through this checklist and mark each as complete.

  • I have read the CONTRIBUTING doc
  • I have added tests that prove my fix is effective or that my feature works
  • I have checked that all unit tests pass after adding my changes
  • I have updated necessary documentation
  • I have rebased my branch onto main
  • I will ensure my PR is targeting the main branch and pulling from my branch from my own fork

@nginx-bot
Copy link

nginx-bot bot commented Jan 6, 2026

Hi @icelynjennings! Welcome to the project! 🎉

Thanks for opening this pull request!
Be sure to check out our Contributing Guidelines while you wait for someone on the team to review this.

@nginx-bot nginx-bot bot added the community label Jan 6, 2026
@github-actions
Copy link
Contributor

github-actions bot commented Jan 6, 2026

✅ All required contributors have signed the F5 CLA for this PR. Thank you!
Posted by the CLA Assistant Lite bot.

@github-actions github-actions bot added documentation Improvements or additions to documentation helm-chart Relates to helm chart labels Jan 6, 2026
@icelynjennings icelynjennings changed the title Icelynjennings/4293 Add ServiceMonitor Jan 6, 2026
@icelynjennings icelynjennings changed the title Add ServiceMonitor Helm Chart: Add ServiceMonitor Jan 6, 2026
@icelynjennings
Copy link
Author

I have hereby read the F5 CLA and agree to its terms

Copy link
Collaborator

@sjberman sjberman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the contribution! Unfortunately this doesn't fully implement the desired solution. While this would create a ServiceMonitor for the control plane, it doesn't create one for the nginx data plane.

Since the data plane is provisioned by the control plane when a Gateway is created, all of the configuration for the data plane deployment is built into the control plane's code, and not through helm.

We would probably have to follow a similar implementation that we did with HPA (see here: #3702) to enhance our API and code to allow users to enable service monitor for the nginx data plane Deployment.

@icelynjennings
Copy link
Author

icelynjennings commented Jan 6, 2026

Thanks @sjberman. Would there be benefit to adding a ServiceMonitor for the control plane now, and data plane later? Or do you think it would only make sense to develop this for both simultaneously?

@sjberman
Copy link
Collaborator

sjberman commented Jan 6, 2026

Honestly, metrics for the data plane are probably the more interesting ones for most users, since that's where the traffic is flowing. The control plane monitor could be an easy one to do (since it's just helm changes), but to truly close the linked issue, I think we would want data plane support.

@icelynjennings
Copy link
Author

Thanks for linking a relevant PR @sjberman! That looks like mostly kubebuilder, so I should be able to finish that part.

@sjberman
Copy link
Collaborator

sjberman commented Jan 6, 2026

@icelynjennings No problem. Part of it is kubebuilder to define the API, but there are a decent amount of code changes internally too in order to provision the objects based on the API.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

community documentation Improvements or additions to documentation helm-chart Relates to helm chart

Projects

Status: 🆕 New

Development

Successfully merging this pull request may close these issues.

Add optional ServiceMonitor to Helm chart

2 participants