Some of us using aws-alb-ingress-controller, are using it to run/build a Kubernetes platform and allow tenants to provision ALBs for ingress access to their service/s.
In this case it may be very difficult to provide visibility to cluster tenants to the status of their ALB's reconcile, and this can potentially lead to downtime.
Example:
(another point to think about, is why an invalid bucket affects/blocks target registration ? this makes no sense)
This means downtime.
The person making the change has no way to know that reconcile is failing on his ALB unless he goes and inspects the logs of alb controller, this is not always an option.
Also, as a cluster tenant, controller logs is not a very friendly way to get this information.
Even for a cluster operator / controller, looking at logs to get this information is not an option.
It will be awesome if we can somehow expose this status, for example - add a status field to ingress object (success/error), but I believe since ingress is a Kubernetes primitive, it might not be possible to modify it's status? is this the case?
Is there another way we can expose the reconcile status to other cluster components / tenants outside of logs/events?
Suggestions / thoughts appreciated.
Hi,
The easiest solution for this is write an event to Ingress for successfully reconcile/failure. I can take this in next release(v1.1.6)
another point to think about, is why an invalid bucket affects/blocks target registration ? this makes no sense.
Agree, that's why i used a separate controller for endpoints updates in V2. (https://github.com/kubernetes-sigs/aws-alb-ingress-controller/blob/v2/pkg/controller/endpointbinding/controller.go).
I'll speed effort to get V2 code reviewed and release beta version than changing v1 for this feature at this point :D
awesome! so this will update target groups independently of any non-blocking reconcile failures?
@eytan-avisror Yes. Other reconcile failures like rule conflicts will only prevents new target group creation/deletion. While existing targetGroups will be updated independently.
Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale
/remove-lifecycle stale
Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale
Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle rotten
Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/close
@fejta-bot: Closing this issue.
In response to this:
Rotten issues close after 30d of inactivity.
Reopen the issue with/reopen.
Mark the issue as fresh with/remove-lifecycle rotten.Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/close
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.
Most helpful comment
another point to think about, is why an invalid bucket affects/blocks target registration ? this makes no sense.Agree, that's why i used a separate controller for endpoints updates in V2. (https://github.com/kubernetes-sigs/aws-alb-ingress-controller/blob/v2/pkg/controller/endpointbinding/controller.go).
I'll speed effort to get V2 code reviewed and release beta version than changing v1 for this feature at this point :D