Uploaded image for project: 'Red Hat OpenStack Services on OpenShift'
  1. Red Hat OpenStack Services on OpenShift
  2. OSPRH-16526

EDPM deployment failed when using nmstate provider

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done-Errata
    • Icon: Normal Normal
    • rhos-18.0.10 FR 3
    • rhos-18.0.6
    • os-net-config
    • None
    • 5
    • False
    • Hide

      None

      Show
      None
    • False
    • ?
    • openstack-ansible-ee-container-1.0.12-2
    • rhos-connectivity-nfv
    • Yes
    • Hide
      .Data plane deployment no longer fails when using the `nmstate` provider to pre-provision Compute nodes over VLAN
      Before this update, when pre-provisioning Compute nodes for communicating with the control plane over VLANs, theNetworkManager CLI (`nmcli`) connection was not always created with the proper interface name. This caused deployment failures.

      With this release, the issue with the `nmstate` provider for handling vlan interfaces in pre-provisioned nodes has been resolved. As a result, data plane deployments using the `nmstate` provider succeeds.
      Show
      .Data plane deployment no longer fails when using the `nmstate` provider to pre-provision Compute nodes over VLAN Before this update, when pre-provisioning Compute nodes for communicating with the control plane over VLANs, theNetworkManager CLI (`nmcli`) connection was not always created with the proper interface name. This caused deployment failures. With this release, the issue with the `nmstate` provider for handling vlan interfaces in pre-provisioned nodes has been resolved. As a result, data plane deployments using the `nmstate` provider succeeds.
    • Bug Fix
    • Done
    • Hide

      Added the below to release note text instead of the workaround earlier

       

      With this release, the issue with the nmstate provider for handling vlan interfaces in pre-provisioned nodes has been resolved. As a result, data plane deployments using the nmstate provider succeeds.
       
      Show
      Added the below to release note text instead of the workaround earlier   With this release, the issue with the nmstate provider for handling vlan interfaces in pre-provisioned nodes has been resolved. As a result, data plane deployments using the nmstate provider succeeds.
    • 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]

       

      https://docs.redhat.com/en/documentation/red_hat_openstack_services_on_openshift/18.0/html/planning_your_deployment/plan-networks_planning#plan-os-net-config_plan-network

       

      [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

       

              ksundara@redhat.com Karthik Sundaravel
              ppalanis1@redhat.com Partheeban Palanisamy
              rhos-dfg-nfv
              Votes:
              0 Vote for this issue
              Watchers:
              15 Start watching this issue

                Created:
                Updated:
                Resolved: