-
Bug
-
Resolution: Done-Errata
-
Normal
-
rhos-18.0.6
-
None
-
5
-
False
-
-
False
-
?
-
openstack-ansible-ee-container-1.0.12-2
-
rhos-connectivity-nfv
-
Yes
-
-
Bug Fix
-
Done
-
-
-
-
Bugs Pending Verification
-
1
-
Critical
=> Customer facing issue during data plane deployment (pre-provisioned nodes) and they are using “nmstate” as a provider over “ifcfg”.
=> They are using nmstate as per the recommendation from our document [1].
=> We do see the error [2] from the logs, additionally parsing error [3] too from the same log, however from the provided template [4] we don’t see any indentation issue.
=> We had discussed the same with engineering over this slack thread [5], initial recommendation is to ask customer to use ifcfg provider while we investigate the potential issues with nmstate. But as per the latest update from customer [6] they need clear justification why nmstate wouldn’t work here.
NOTE: We have escalation from the account team to complete this deployment at the earliest. RH consulting is engaged for this deployment.
Please help us investigate why the edpm deployment is failing when using nmstate provider for pre-provisioned nodes.
Environment: 18.0.6 (FR2)
Details available in supportshell:
0010-os.log
0020-config.yaml
0030-prepprovisioned-node-set-az1-amd48nvme-4.yaml
[1]
[2]
2025-05-08 12:39:18.265 ERROR os_net_config.main **Failed to configure with nmstate provider**
Absent/Down interface vlan202/ovs-interface still found as OvsInterface(OvsInterface { base: BaseInterface { name: "vlan202", profile_name: None, description: None, iface_type: OvsInterface, driver: None, state: Down, identifier: None, mac_address: None, permanent_mac_address: None, mtu: None, min_mtu: None, max_mtu: None, wait_ip: None, ipv4: None, ipv6: None, mptcp: Some(MptcpConfig
{ address_flags: Some([]) }), controller: Some(""), accept_all_mac_addresses: None, copy_mac_from: None, ovsdb: Some(OvsDbIfaceConfig { external_ids: Some({}), other_config: Some({}) }), ieee8021x: None, lldp: None, ethtool: None, dispatch: Some(DispatchConfig { post_activation: Some(""), post_deactivation: Some("") }), controller_type: None, up_priority: 0, routes: None, _other: {} }, patch: None, dpdk: None })
2025-05-08 12:39:18.266 ERROR os_net_config.common.log_exceptions Traceback (most recent call last):
File "/bin/os-net-config", line 10, in <module>
sys.exit(main())
File "/usr/lib/python3.9/site-packages/os_net_config/cli.py", line 423, in main
files_changed = provider.apply(cleanup=opts.cleanup,
File "/usr/lib/python3.9/site-packages/os_net_config/impl_nmstate.py", line 2316, in apply
self.cleanup_all_ifaces()
File "/usr/lib/python3.9/site-packages/os_net_config/impl_nmstate.py", line 712, in cleanup_all_ifaces
netapplier.apply(state, verify_change=True)
File "/usr/lib/python3.9/site-packages/libnmstate/netapplier.py", line 32, in apply
return apply_net_state(
File "/usr/lib/python3.9/site-packages/libnmstate/clib_wrapper.py", line 133, in apply_net_state
raise map_error(err_kind, err_msg)
libnmstate.error.NmstateVerificationError: Absent/Down interface vlan202/ovs-interface still found as OvsInterface(OvsInterface { base: BaseInterface { name: "vlan202", profile_name: None, description: None, iface_type: OvsInterface, driver: None, state: Down, identifier: None, mac_address: None, permanent_mac_address: None, mtu: None, min_mtu: None, max_mtu: None, wait_ip: None, ipv4: None, ipv6: None, mptcp: Some(MptcpConfig
{ address_flags: Some([]) }), controller: Some(""), accept_all_mac_addresses: None, copy_mac_from: None, ovsdb: Some(OvsDbIfaceConfig { external_ids: Some({}), other_config: Some({}) }), ieee8021x: None, lldp: None, ethtool: None, dispatch: Some(DispatchConfig { post_activation: Some(""), post_deactivation: Some("") }), controller_type: None, up_priority: 0, routes: None, _other: {} }, patch: None, dpdk: None })
NoneType: None
[3]
2025-05-08 11:01:05.225 ERROR os_net_config.common.log_exceptions Traceback (most recent call last):
File "/bin/os-net-config", line 10, in <module>
sys.exit(main())
File "/usr/lib/python3.9/site-packages/os_net_config/cli.py", line 303, in main
iface_array = yaml.safe_load(cf.read()).get("network_config")
File "/usr/lib64/python3.9/site-packages/yaml/_init_.py", line 162, in safe_load
return load(stream, SafeLoader)
File "/usr/lib64/python3.9/site-packages/yaml/_init_.py", line 114, in load
return loader.get_single_data()
File "/usr/lib64/python3.9/site-packages/yaml/constructor.py", line 49, in get_single_data
node = self.get_single_node()
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 36, in get_single_node
document = self.compose_document()
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 55, in compose_document
node = self.compose_node(None, None)
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 133, in compose_mapping_node
item_value = self.compose_node(node, item_key)
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 82, in compose_node
node = self.compose_sequence_node(anchor)
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 111, in compose_sequence_node
node.value.append(self.compose_node(node, index))
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 133, in compose_mapping_node
item_value = self.compose_node(node, item_key)
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 82, in compose_node
node = self.compose_sequence_node(anchor)
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 111, in compose_sequence_node
node.value.append(self.compose_node(node, index))
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/usr/lib64/python3.9/site-packages/yaml/composer.py", line 127, in compose_mapping_node
while not self.check_event(MappingEndEvent):
File "/usr/lib64/python3.9/site-packages/yaml/parser.py", line 98, in check_event
self.current_event = self.state()
File "/usr/lib64/python3.9/site-packages/yaml/parser.py", line 438, in parse_block_mapping_key
raise ParserError("while parsing a block mapping", self.marks[-1],
yaml.parser.ParserError: while parsing a block mapping
in "<unicode string>", line 17, column 5:
- type: vlan
^
expected <block end>, but found '-'
in "<unicode string>", line 21, column 5:
- ip_netmask: 10.64.0.224/22
^
NoneType: None
[4]
https://access.redhat.com/support/cases/#/case/04136926/discussion?attachmentId=a09Hn00002qa6vpIAA
[5]
https://redhat-internal.slack.com/archives/CQXJFGMK6/p1746772368089839
[6]
https://access.redhat.com/support/cases/#/case/04136926/discussion?commentId=a0aHn00000ZJQrfIAH
- is blocked by
-
OSPRH-16672 [EDPM][NM] Figure out SELinux policy change to fix NetworkManager problems after NM restart
-
- Closed
-
- links to
-
RHBA-2025:152103
Release of containers for RHOSO OpenStack EDPM images