-
Bug
-
Resolution: Done-Errata
-
Normal
-
4.13, 4.12, 4.14, 4.15, 4.16, 4.17.0
Description of problem:
After changing LB type from CLB to NLB, the "status.endpointPublishingStrategy.loadBalancer.providerParameters.aws.classicLoadBalancer" is still there, but if create new NLB ingresscontroller the "classicLoadBalancer" will not appear.
// after changing default ingresscontroller to NLB
$ oc -n openshift-ingress-operator get ingresscontroller/default -oyaml | yq .status.endpointPublishingStrategy.loadBalancer.providerParameters.aws
classicLoadBalancer: <<<<
connectionIdleTimeout: 0s <<<<
networkLoadBalancer: {}
type: NLB
// create new ingresscontroller with NLB
$ oc -n openshift-ingress-operator get ingresscontroller/nlb -oyaml | yq .status.endpointPublishingStrategy.loadBalancer.providerParameters.aws
networkLoadBalancer: {}
type: NLB
Version-Release number of selected component (if applicable):
4.17.0-0.nightly-2024-08-08-013133
How reproducible:
100%
Steps to Reproduce:
1. changing default ingresscontroller to NLB
$ oc -n openshift-ingress-operator patch ingresscontroller/default --type=merge --patch='{"spec":{"endpointPublishingStrategy":{"type":"LoadBalancerService","loadBalancer":{"providerParameters":{"type":"AWS","aws":{"type":"NLB"}},"scope":"External"}}}}'
2. create new ingresscontroller with NLB
kind: IngressController
apiVersion: operator.openshift.io/v1
metadata:
name: nlb
namespace: openshift-ingress-operator
spec:
domain: nlb.<base-domain>
replicas: 1
endpointPublishingStrategy:
loadBalancer:
providerParameters:
aws:
type: NLB
type: AWS
scope: External
type: LoadBalancerService
3. check both ingresscontrollers status
Actual results:
// after changing default ingresscontroller to NLB
$ oc -n openshift-ingress-operator get ingresscontroller/default -oyaml | yq .status.endpointPublishingStrategy.loadBalancer.providerParameters.aws
classicLoadBalancer:
connectionIdleTimeout: 0s
networkLoadBalancer: {}
type: NLB
// new ingresscontroller with NLB
$ oc -n openshift-ingress-operator get ingresscontroller/nlb -oyaml | yq .status.endpointPublishingStrategy.loadBalancer.providerParameters.aws
networkLoadBalancer: {}
type: NLB
Expected results:
If type=NLB, then "classicLoadBalancer" should not appear in the status. and the status part should keep consistent whatever changing ingresscontroller to NLB or creating new one with NLB.
Additional info:
- blocks
-
OCPBUGS-38646 [Backport 4.17] the "classicLoadBalancer" is still in ingresscontroller status after changing LB type from CLB to NLB
-
- Closed
-
- is cloned by
-
OCPBUGS-38646 [Backport 4.17] the "classicLoadBalancer" is still in ingresscontroller status after changing LB type from CLB to NLB
-
- Closed
-
- is related to
-
OCPBUGS-38411 EIP allocation still attached with default ingresscontroller after changing LB type from NLB to CLB
-
- Closed
-
- links to
-
RHEA-2024:6122
OpenShift Container Platform 4.18.z bug fix update