Skip to content
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

OCPBUGS-38411: Not allow eipAllocations in CLB while changing the LBType of the Ingress Controller from NLB to Classic. #1130

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

miheer
Copy link
Contributor

@miheer miheer commented Aug 19, 2024

After changing the LBType of the IngressController from NLB to Classic, the eipAllocations still were attached with controller and the LB service. Howver, eipAllocations are not supported in Classic.

This commit fixes service annotation service.beta.kubernetes.io/aws-load-balancer-eip-allocations value to a blank value. The CCM then removes this annotation from the service. It also sets the IngressController in Progressing Status to True with a status message to delete the load balancer service so that a new lb service is recreated for Classic LB.

@openshift-ci-robot openshift-ci-robot added jira/severity-moderate Referenced Jira bug's severity is moderate for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. labels Aug 19, 2024
@openshift-ci-robot
Copy link
Contributor

@miheer: This pull request references Jira Issue OCPBUGS-38411, which is invalid:

  • expected the bug to target the "4.18.0" version, but no target version was set

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

The bug has been updated to refer to the pull request using the external bug tracker.

In response to this:

After changing the LBType of the IngressController from NLB to Classic, the eipAllocations still were attached with controller and the LB service. Howver, eipAllocations are not supported in Classic.

This commit fixes service annotation service.beta.kubernetes.io/aws-load-balancer-eip-allocations value to a blank value. The CCM then removes this annotation from the service. It also sets the IngressController in Progressing Status to True with a status message to delete the load balancer service so that a new lb service is recreated for Classic LB.

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci-robot openshift-ci-robot added the jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. label Aug 19, 2024
Copy link
Contributor

openshift-ci bot commented Aug 19, 2024

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please ask for approval from miheer. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@miheer miheer force-pushed the OCPBUGS-38411 branch 11 times, most recently from 70c78c2 to f3734ad Compare August 21, 2024 02:31
@miheer
Copy link
Contributor Author

miheer commented Aug 21, 2024

/retest

2 similar comments
@miheer
Copy link
Contributor Author

miheer commented Aug 21, 2024

/retest

@miheer
Copy link
Contributor Author

miheer commented Aug 21, 2024

/retest

Comment on lines 444 to 453

if eipAllocationsAWSEnabled {
nlbParams := getAWSNetworkLoadBalancerParametersInSpec(ci)
if nlbParams != nil && awsEIPAllocationsExist(nlbParams.EIPAllocations) {
service.Annotations[awsEIPAllocationsAnnotation] = ""
}
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this do what you want, the annotation isn't set by default anyways.

And this adds the annotation with a value of "", it's not clearing it. You should be able to just remove this.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes. i was already working on it. thanks for pointing out !

…ype of the Ingress Controller from NLB to Classic.

After changing the LBType of the IngressController from `NLB` to `Classic`, the eipAllocations still were attached with controller and the LB service.
Howver, eipAllocations are  not supported in Classic.

This commit fixes service annotation `service.beta.kubernetes.io/aws-load-balancer-eip-allocations` value to a blank value. The CCM then removes this annotation from the service.
It also sets the IngressController in Progressing Status to True with a status message to delete the load balancer service so that a new lb service is recreated for Classic LB.
@candita
Copy link
Contributor

candita commented Aug 22, 2024

/assign @gcs278

@miheer
Copy link
Contributor Author

miheer commented Aug 22, 2024

/retest

2 similar comments
@miheer
Copy link
Contributor Author

miheer commented Aug 23, 2024

/retest

@miheer
Copy link
Contributor Author

miheer commented Aug 23, 2024

/retest

Copy link
Contributor

openshift-ci bot commented Aug 23, 2024

@miheer: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-aws-operator-techpreview e9357ff link false /test e2e-aws-operator-techpreview
ci/prow/e2e-aws-operator e9357ff link true /test e2e-aws-operator

Full PR test history. Your PR dashboard.

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-sigs/prow repository. I understand the commands that are listed here.

@gcs278
Copy link
Contributor

gcs278 commented Sep 3, 2024

DNS Propagation bug should be fixed, retesting gatewayapi:
/test e2e-aws-gatewayapi

@Miciah Miciah added the priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. label Nov 13, 2024
@gcs278
Copy link
Contributor

gcs278 commented Nov 14, 2024

This PR should target 4.17 since #1142 should land in 4.18 and fixes this bug, but #1142 will not be backported.

I think we should mark this PR as WIP or draft or close it until we revisit the bug after #1142 merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. jira/severity-moderate Referenced Jira bug's severity is moderate for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants