[EKS Auto Mode] [request]: provide a method for specifying routing conditions in addition to original host/path condition on Ingress spec
- Dominant language
- Shell
- Stars
- 5.4k
- Forks
- 334
- PR merge metrics
- No merged PRs in 30d
Description
### Community Note
* Please vote on this issue by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to the original issue to help the community and maintainers prioritize this request
* Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
* If you are interested in working on this issue or have submitted a pull request, please leave a comment
**Tell us about your request**
To provide a method for specifying routing conditions in addition to original host/path condition on Ingress spec with the EKS Auto Mode load balancer controller.
**Which service(s) is this request for?**
EKS Auto Mode
**Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?**
I want to secure the connection between a cloudfront distribution and an alb, as per [the documentation](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/restrict-access-to-load-balancer.html#restrict-alb-improve-security.).
The application backend needs grpc enabled so [using a vpc origin is not possible](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-vpc-origins.html).
Despite the documentation stating that ["you cannot use Annotations on an IngressClass to configure load balancers with EKS Auto Mode" ](https://docs.aws.amazon.com/eks/latest/userguide/auto-configure-alb.html#_considerations), restricting the loadbalancer access to the cloudfront prefix list is done through [the `alb.ingress.kubernetes.io/security-group-prefix-lists` annotation](https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.11/guide/ingress/annotations/#security-group-prefix-lists).
However, [the `alb.ingress.kubernetes.io/conditions.require-${condition-name}` annotation](https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.11/guide/ingress/annotations/#conditions) is not taken into account.
It'd be great for this to be configurable, either through IngressClassParams or directly through the annotations.
**Are you currently working around this issue?**
I'm currently looking at having this check be done either in-cluster or at the waf level.
Contributor guide
Research direction
Start by reviewing the EKS Auto Mode IngressClassParams and the alb.ingress.kubernetes.io/conditions annotations described in the issue, along with the linked load-balancer documentation. Done means agreeing on and documenting a supported way to express additional routing conditions while preserving the CloudFront-to-ALB and gRPC use case.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, kubernetes
- Domain
- cloud, networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100