fix(gantry): add stopgap startup budget for large clusters - #660
Open
Vaibhav Patel (vpatelsj) wants to merge 1 commit into
Open
fix(gantry): add stopgap startup budget for large clusters#660Vaibhav Patel (vpatelsj) wants to merge 1 commit into
Vaibhav Patel (vpatelsj) wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
/livezstartup probe with a 1,900-second budget so liveness does not restart Gantry during initial informer synchronization.Important
This is a stopgap validated at 5,003 nodes. It gives the current startup architecture more time, but does not reduce the per-pod full-cluster informer work.
Measured 5K result
Baseline deployment on 5,003 nodes had 47 Ready pods and 4,888 restarting pods. Observed failures exceeded the default 30-second membership synchronization deadline.
With the 30-minute process timeout and 31-minute-40-second startup-probe budget, the final revision reached 5,003 updated pods, 5,003 Ready pods and zero restarts on the final revision.
This run validated startup stability only. It did not validate image-distribution performance because the deployment retained the
registry.example.complaceholder upstream.Validation
go test ./cmd/gantry ./deploy/gantry ./internal/gantry/config./bin/golangci-lint run -c .golangci.yaml ./cmd/gantry/... ./deploy/gantry/... ./internal/gantry/config/...make gantry-manifests gantry-buildA repository-wide
make gantryrun was attempted locally but stopped during lint because the host lacksopenssl/aes.h, required while typechecking the unrelated TPM simulator tests undercmd/agent.