Skip to content
This repository has been archived by the owner on Jul 19, 2023. It is now read-only.

Add query-frontend, query-scheduler and querier worker. #496

Merged
merged 16 commits into from
Feb 7, 2023
Merged

Conversation

cyriltovena
Copy link
Collaborator

This enable the same read path as Mimir and Loki.

The query-frontend and query-scheduler are now new component of Phlare that ensure fair scheduling and queries acceleration in the future.

When using the All target (single binary) they are activated automatically. In distributed mode they are not mandatory but active by default.

The configuration rely on ring based service discovery using the mandatory memberlist configuration.

The code is mostly a copy/pasted from Mimir, but adapted to work with connect-go. see connectgrpc package.

I'm planning to add runtime configs and tenant configs as a follow up.

Copy link
Collaborator

@simonswine simonswine left a comment

Choose a reason for hiding this comment

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

I have not looked at all code, but that looks quite good sofar, a couple of nits, which I have noticed along the way.

pkg/phlare/modules.go Outdated Show resolved Hide resolved
pkg/phlare/modules.go Outdated Show resolved Hide resolved
pkg/phlare/modules.go Outdated Show resolved Hide resolved
pkg/querier/stats/stats.proto Show resolved Hide resolved
pkg/querier/stats/stats.proto Show resolved Hide resolved
Copy link
Collaborator

@simonswine simonswine left a comment

Choose a reason for hiding this comment

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

LGTM. I have tried this all on a local environment and I think this is ready to go

@cyriltovena cyriltovena merged commit 8f4777c into main Feb 7, 2023
@cyriltovena cyriltovena deleted the frontend branch February 7, 2023 09:05
simonswine pushed a commit to simonswine/pyroscope that referenced this pull request Jun 30, 2023
…re#496)

* Introducing frontend and scheduler

* revert prometheus change

* Hook up the frontend with query-scheduler and querier

* Ensure missing tenant id is propagated correctly.

* Refactoring querier transport/handler.

* Update helm

* Update the documentation to reflect new changes

* Removes todos

* make go/mod

* make docs/validate

* make lint

* make lint

* make helm/check

* fixes race

* fixes timeout issues with scheduler-querier
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants