-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
4.12.z
-
Moderate
-
No
-
Rejected
-
False
-
Description of problem:
NNCP fails after an upgrade to OpenShift 4.12
Version-Release number of selected component (if applicable):
OCP 4.12
How reproducible:
Always in customer cluster
Steps to Reproduce:
1. Create NNCP as follow: ~~~ spec: desiredState: interfaces: - bridge: options: stp: enabled: false port: - name: eno2 description: br1 created on eno2 interface ipv4: enabled: false name: br1 state: up type: linux-bridge nodeSelector: kubernetes.io/hostname: <node-name> ~~~
Actual results:
NNCP fails with the following error: ~~~ message: | error reconciling NodeNetworkConfigurationPolicy at desired state apply: , failed to execute nmstatectl set --no-commit --timeout 480: 'exit status 1' libnmstate.error.NmstateValueError Failed to find suitable interface for saving DNS name servers 10.xx.xx.xx, nmstate only support saving DNS to interface with static gateway or auto interface with auto-dns:false ~~~ full nmstate logs 2023-04-25 14:27:12,197 root DEBUG NetworkManager version 1.36.0 2023-04-25 14:27:12,215 root DEBUG Async action: Retrieve applied config: ethernet eno1 started 2023-04-25 14:27:12,215 root DEBUG Async action: Retrieve applied config: ethernet eno2 started 2023-04-25 14:27:12,215 root DEBUG Async action: Retrieve applied config: ethernet ens1f1np1 started 2023-04-25 14:27:12,216 root DEBUG Async action: Retrieve applied config: ethernet ens5f1 started 2023-04-25 14:27:12,216 root DEBUG Async action: Retrieve applied config: bridge br10 started 2023-04-25 14:27:12,216 root DEBUG Async action: Retrieve applied config: bridge br1 started 2023-04-25 14:27:12,216 root DEBUG Async action: Retrieve applied config: ethernet eno1 finished 2023-04-25 14:27:12,217 root DEBUG Async action: Retrieve applied config: ethernet eno2 finished 2023-04-25 14:27:12,217 root DEBUG Async action: Retrieve applied config: ethernet ens1f1np1 finished 2023-04-25 14:27:12,217 root DEBUG Async action: Retrieve applied config: ethernet ens5f1 finished 2023-04-25 14:27:12,217 root DEBUG Async action: Retrieve applied config: bridge br10 finished 2023-04-25 14:27:12,218 root DEBUG Async action: Retrieve applied config: bridge br1 finished 2023-04-25 14:27:12,219 root DEBUG Interface linux-bridge.br1 found. Merging the interface information. 2023-04-25 14:27:12,219 root DEBUG Interface linux-bridge.br10 found. Merging the interface information. 2023-04-25 14:27:12,219 root DEBUG Interface ethernet.eno1 found. Merging the interface information. 2023-04-25 14:27:12,219 root DEBUG Interface ethernet.eno2 found. Merging the interface information. 2023-04-25 14:27:12,219 root DEBUG Interface ethernet.ens1f0np0 found. Merging the interface information. 2023-04-25 14:27:12,219 root DEBUG Interface ethernet.ens1f1np1 found. Merging the interface information. 2023-04-25 14:27:12,219 root DEBUG Interface ethernet.ens5f0 found. Merging the interface information. 2023-04-25 14:27:12,219 root DEBUG Interface ethernet.ens5f1 found. Merging the interface information. 2023-04-25 14:27:12,266 root DEBUG Interface lo is type unknown and will be ignored during the activation 2023-04-25 14:27:12,266 root DEBUG The current route {'table-id': 254, 'destination': '10.128.0.0/14', 'next-hop-interface': 'tun0', 'next-hop-address': '0.0.0.0', 'metric': 0} has been discarded due to Route {'table-id': 254, 'metric': 0, 'destination': '10.128.0.0/14', 'next-hop-address': '0.0.0.0', 'next-hop-interface': 'tun0'} next hop to down/absent interface 2023-04-25 14:27:12,266 root DEBUG The current route {'table-id': 254, 'destination': '172.30.0.0/16', 'next-hop-interface': 'tun0', 'next-hop-address': '0.0.0.0', 'metric': 0} has been discarded due to Route {'table-id': 254, 'metric': 0, 'destination': '172.30.0.0/16', 'next-hop-address': '0.0.0.0', 'next-hop-interface': 'tun0'} next hop to down/absent interface Traceback (most recent call last): File \"/usr/bin/nmstatectl\", line 11, in <module> load_entry_point('nmstate==1.3.3', 'console_scripts', 'nmstatectl')() File \"/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py\", line 74, in main return args.func(args) File \"/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py\", line 338, in set return apply(args) File \"/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py\", line 366, in apply args.save_to_disk, File \"/usr/lib/python3.6/site-packages/nmstatectl/nmstatectl.py\", line 419, in apply_state save_to_disk=save_to_disk, File \"/usr/lib/python3.6/site-packages/libnmstate/netapplier.py\", line 86, in apply desired_state, ignored_ifnames, current_state, save_to_disk File \"/usr/lib/python3.6/site-packages/libnmstate/net_state.py\", line 72, in __init__ self._ifaces.gen_dns_metadata(self._dns, self._route) File \"/usr/lib/python3.6/site-packages/libnmstate/ifaces/ifaces.py\", line 668, in gen_dns_metadata iface_metadata = dns_state.gen_metadata(self, route_state) File \"/usr/lib/python3.6/site-packages/libnmstate/dns.py\", line 131, in gen_metadata \"auto-dns:false\" % server libnmstate.error.NmstateValueError: Failed to find suitable interface for saving DNS name servers: 10.195.3.10, nmstate only support saving DNS to interface with static gateway or auto interface with auto-dns:false
Expected results:
It should be applied successfully as it used to work with previous versions.
Additional info:
From 4.11.24 to 4.12.13