feat : implementation of BGP readiness probe#40335
feat : implementation of BGP readiness probe#40335rabelmervin wants to merge 6 commits intocilium:mainfrom
Conversation
|
Commit 9558c87 does not match "(?m)^Signed-off-by:". Please follow instructions provided in https://docs.cilium.io/en/stable/contributing/development/contributing_guide/#developer-s-certificate-of-origin |
|
Commit 9558c87 does not match "(?m)^Signed-off-by:". Please follow instructions provided in https://docs.cilium.io/en/stable/contributing/development/contributing_guide/#developer-s-certificate-of-origin |
gandro
left a comment
There was a problem hiding this comment.
Thank you! One last piece of feedback, then this looks good from my side. Please make sure to squash your commits and remove the merge commit (as discussed on Slack)
|
Commit 9558c87 does not match "(?m)^Signed-off-by:". Please follow instructions provided in https://docs.cilium.io/en/stable/contributing/development/contributing_guide/#developer-s-certificate-of-origin |
| ipPool: "" | ||
| # -- BGP readiness settings | ||
| bgpReadiness: | ||
| # -- Enable/Disable BGP readiness. |
There was a problem hiding this comment.
Can you add a bit more information here? e.g. "When enabled, Cilium pods will not be marked as Ready until configured BGP sessions have been established"
|
Do we need to worry about a flaky peer causing all pods to go non-Ready? I see that we mark the agent as ready as long as a single peer is up, which is a good idea. We might want to permanently mark the agent as ready once a single session has been fully established. Thoughts (@YutaroHayakawa)? |
gandro
left a comment
There was a problem hiding this comment.
Thanks. Two formatting issues appeared. Other than that looks good. Please make sure to squash your commits again!
| package healthcheck | ||
|
|
||
| import ( | ||
| "context" |
There was a problem hiding this comment.
The imports here are now no longer properly formatted
|
Commit 9558c87 does not match "(?m)^Signed-off-by:". Please follow instructions provided in https://docs.cilium.io/en/stable/contributing/development/contributing_guide/#developer-s-certificate-of-origin |
Yeah, given the use case in the original issue (the agent rollout scenario), this makes sense I think. Because we're only interested in the initial readiness in that case. @pasteley, do you have any thoughts around that? |
Agree, but does it mean that startupProbe should be used instead? startupProbe:
httpGet:
path: /bgp/status
port: 9879
failureThreshold: 30
periodSeconds: 10 |
Yeah, makes sense to me. However I think we either need to introduce an endpoint dedicated for the startupProbe or introduce modifier to distinguish startup vs readiness in the That's gonna be an overkill for this small use case IMO, so I'd vote for the stateful approach that Casey mentioned (mark BGP "ready" permanently after initial session establishment). |
Signed-off-by: rabelmervin <rabelmervin@gmail.com>
Signed-off-by: rabelmervin <rabelmervin@gmail.com>
|
/test |
gandro
left a comment
There was a problem hiding this comment.
Thanks! Please make sure to address the unresolved feedback and squash your commits into one again.
|
Also note that CI is failing because the Helm and API files need to be re-generated. |
There was a problem hiding this comment.
Is the API change necessary if there's just a commandline flag for this?
The intent for API change would be if there is a flag on the cilium-dbg status ... command-line to optionally require BGP readiness in certain scenarios. If instead you're deploying the cilium-agent with a static requirement based on a cilium-agent flag, then you don't need these API changes at all.
|
Converting to draft while you address the feedback. When that is complete, use the "ready for review" button at the bottom of the page. I also added a proposed release note into the description to help communicate this feature more clearly to users. |
|
This pull request has been automatically marked as stale because it |
|
This pull request has not seen any activity since it was marked stale. |
still working on this |
Signed-off-by: rabelmervin <rabelmervin@gmail.com>
Signed-off-by: rabelmervin <rabelmervin@gmail.com>
Signed-off-by: rabelmervin <rabelmervin@gmail.com>
Signed-off-by: rabelmervin <rabelmervin@gmail.com>
|
This pull request has been automatically marked as stale because it |
|
This pull request has not seen any activity since it was marked stale. |
Fixes #39468