feat(ingester): Change partition ingester startup sequence #19836
+134
−19
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
Partition ingesters currently stay in a "not ready" state in terms of Kubernetes health when starting until they have caught up in reading all of their data from Kafka.
This PR decouples the k8s health from the partition readiness, in that the pod should be marked as "healthy", but the partition ingester will not join the ring until the consumption lag has been processed. As the ingester joins the ring, it will briefly be marked as "not ready" while tokens are distributed to the ingester, and becomes ready very quickly after that.
Care was taken to ensure the lifecycle of classic ingesters is not impacted, as well.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Checklist
CONTRIBUTING.mdguide (required)featPRs are unlikely to be accepted unless a case can be made for the feature actually being a bug fix to existing behavior.docs/sources/setup/upgrade/_index.mddeprecated-config.yamlanddeleted-config.yamlfiles respectively in thetools/deprecated-config-checkerdirectory. Example PR