Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable segment store rest service for prometheus support #588

Open
alfred-landrum opened this issue Oct 29, 2021 · 1 comment
Open

Enable segment store rest service for prometheus support #588

alfred-landrum opened this issue Oct 29, 2021 · 1 comment

Comments

@alfred-landrum
Copy link
Contributor

Description

I'd like to enhance the operator so that if the segment store rest server is enabled via config options, a "rest" port is added to the segment store service.

I have an open PR to add Prometheus support, pravega/pravega#6360 . That adds a "/prometheus" route to the rest service of both the controller and segment store, so that Prometheus can scrape the metrics from both services.

I documented the service monitor objects needed for a Prometheus operator: pravega/pravega#6360 (comment) . The peculiar relabeling workaround for the segment store is needed since the segment store service doesn't have an explicit "rest" port.

Importance

This isn't a blocker to allowing Prometheus support, so it's technically a nice to have. However, given the popularity of Prometheus, I think it makes sense to make enabling Prometheus support as easy as possible.

Location

My initial thought on how to implement this would be to modify the MakeSegmentStoreHeadlessService and reconcileSegmentStoreService functions so that if the pravegaservice.rest.listener.enable config is set, a rest port is added to the headless service. If there are better ways, please let me know!

@anishakj
Copy link
Contributor

anishakj commented Dec 2, 2021

@alfred-landrum The above approach looks good to me. Would you like to create a PR for the same?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants