-
Epic
-
Resolution: Done
-
Major
-
None
-
AWS Router BYO EIP
-
Strategic Product Work
-
8
-
False
-
None
-
False
-
Network Edge
-
Green
-
To Do
-
OCPSTRAT-546 - IngressController API should support AWS EIPs
-
OCPSTRAT-546IngressController API should support AWS EIPs
-
0% To Do, 8% In Progress, 92% Done
-
M
-
0
-
0.000
See Parent Feature for details.
This enhancement allow user to set AWS EIP for the NLB default or custom ingress controller.
This is a feature request to enhance the IngressController API to be able to support static IPs during
- Custom NLB ingress controller creation
- Reconfiguration of the router.
Epic Goal
R&D spike for 4.14 and implementation in 4.15
- Users are able to use EIP for a NLB Ingress Controller.
- Any existing ingress controller should be able to be reconfigured to use EIPs.
Why is this important?
- Reasons are mentioned in the scenario section.
Scenarios
- As an administrator, I want to provision EIPs and use them with an NLB IngressController.
As a user or admin, I want to ensure EIPs are used with NLB on default router at install time.This scenario will be addressed in a separate epic.- As a user, I want to reconfigure default router to use EIPs.
- As a user of OpenShift on AWS (ROSA), I want to use static IPs (and therefore AWS Elastic IPs) so that
I can configure appropriate firewall rules.
I want the default AWS Load Balancer that they use (NLB) for their router to use these EIPs.
Acceptance Criteria
- CI - MUST be running successfully with tests automated
- Release Technical Enablement - Provide necessary release enablement details and documents.
- The service annotation service.beta.kubernetes.io/aws-load-balancer-eip-allocations of the LoadBalancer service for the IngressController is set with the value of IngressController CR's eipAllocations field.
- This EP will also be covered by end to end tests.
The end-to-end test will cover the scenario where the user sets an eipAllocations field in the IngressController CR and verify that the LoadBalancer-type service has the service.beta.kubernetes.io/aws-load-balancer-eip-allocations annotation set with the value of the eipAllocations field from the IngressController CR that was created.
The end to end test will also the cover the scenario where user updates the eipAllocations field in the IngressController CR and verify that the LoadBalancer-type service's
service.beta.kubernetes.io/aws-load-balancer-eip-allocations annotation is updated with the new value of eipAllocations from the IngressController CR.
Dependencies (internal and external)
- Code in the ingress operator will be written to use the value of the field eipAllocations from the IngressController CR and set and update it accordingly.
- openshift/api will be updated to add the eipAllocations API field in the IngressController CR
and cluster config infra object.
Previous Work (Optional):
- …
Open questions::
- …
Done Checklist
- CI - CI is running, tests are automated and merged.
- Release Enablement <link to Feature Enablement Presentation>
- DEV - Upstream code and tests merged: <link to meaningful PR or GitHub Issue>
- DEV - Upstream documentation merged: <link to meaningful PR or GitHub Issue>
- DEV - Downstream build attached to advisory: <link to errata>
- QE - Test plans in Polarion: <link or reference to Polarion>
- QE - Automated tests merged: <link or reference to automated tests>
- DOC - Downstream documentation merged: <link to meaningful PR>
- blocks
-
CORS-2603 AWS IPI BYO Static EIP Support for Router w/NLB
- In Progress
- is blocked by
-
OCPBUGS-34906 openshift/api verify-crd-schema job fails for IngressController CRD
- Closed
- is related to
-
OCPSTRAT-1154 AWS Public IPv4 Address cost mitigation
- Closed
- links to