Bug 2111246
| Summary: | Unable to assign nodes for EgressIP even if the egress-assignable label is set | ||
|---|---|---|---|
| Product: | OpenShift Container Platform | Reporter: | Will Russell <wrussell> |
| Component: | Networking | Assignee: | Ben Bennett <bbennett> |
| Networking sub component: | ovn-kubernetes | QA Contact: | Anurag saxena <anusaxen> |
| Status: | CLOSED DUPLICATE | Docs Contact: | |
| Severity: | high | ||
| Priority: | unspecified | CC: | rravaiol |
| Version: | 4.10 | ||
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2022-07-27 13:50:37 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Description of problem: MachineSet is defined with spec option for proper label of egress-assignable="" spec: lifecycleHooks: {} metadata: labels: k8s.ovn.org/egress-assignable: '' Machineset scale-up will deploy a properly labeled node. However, OVN will not recognize the target node as a valid host, and will alert that there are no available nodes for egress assignment until ovn-master pods are restarted. Version-Release number of selected component (if applicable): OCP 4.10.20 How reproducible: Every time Steps to Reproduce: ~~~ I deleted each ovnkube-master pod starting with the pod deployed on master-0 then master-1 then master-2 and checked the EgressIP after each one. After I restarted the pod deployed on master-2, the EgressIP got assigned to the worker node. $ oc get egressips -A NAME EGRESSIPS ASSIGNED NODE ASSIGNED EGRESSIPS egress-tst 10.201.35.69 <*>-worker-mgc6q 10.201.35.69 I repeated the previous steps that reproduced the error: - I scale up the worker MachineSet to 2 - I wait for the new worker node to be marked as Ready - I marked the node that has the EgressIP for deletion using the machine annotation machine.openshift.io/cluster-api-delete-machine = true - I scaled the worker MachineSet to 1 - The EgressIP is no longer assigned to a node $ oc get egressips -A NAME EGRESSIPS ASSIGNED NODE ASSIGNED EGRESSIPS egress-tst 10.201.35.69 ~~~ Actual results: Nodes are not adequately detected as valid hosts for egressIP if deployed as part of a machineset instead of issued a manual label update. Restarting Ovn-master pods are necessary to trigger egressIP allocation Expected results: New Node scale up should be viewed with same weight as fresh label or pod restart; could be race condition- checking too early for condition of node, marked failed and not re-checked (speculation). Additional info: See attached case; SOSreports for all nodes available + must-gather and in next comment is detailed validation steps confirming that all else is as expected. See previous BZ that is very similar to this one for 4.8 (eratta): https://bugzilla.redhat.com/show_bug.cgi?id=1942856