-
Notifications
You must be signed in to change notification settings - Fork 497
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
LRU cache enabled agent, healthcheck API does not respond the status if the attestor plugin returns error #4827
Comments
Thank you very much @hiyosi for tracking nightlies and reporting this 🙏 |
A few ideas I can think of to consider off the top of my head:
@azdagron Any thoughts on this since you've been more actively involved with health checking in SPIRE? |
Another observation I wanted to point out is that I was unable to reproduce on Linux or macOS by building/running the SPIRE binaries locally, but this does seem to be reproducible when running on a local kind K8s cluster. |
LRU cache is unable to work properly when attestation result in no selectors,
and then run a fetch x509
that will result in LRU never returning an update and cause timouts, As side note... Old cache was notifying as soon as a subscriber is created link, |
In case of the agent with LRU cache enabled, healthcheck API does not return response if the workload attestation is failed.
My quick debug, it seems to be blocked because updates are not passed at the following codes.
spire/pkg/agent/endpoints/workload/handler.go
Lines 232 to 242 in 2d8555c
In v1.8.7( or LRU cache disabled), even if the workload attestor returns error, healthcheck endpoint returns healthy.
Should we avoid at least a situation the response is blocked?
The text was updated successfully, but these errors were encountered: