Uploaded image for project: 'OpenShift Virtualization'
  1. OpenShift Virtualization
  2. CNV-51059

[UserDefinedNetwork + multus] IP addresses not assigned in VM with primary UDN and secondary multus

XMLWordPrintable

    • Quality / Stability / Reliability
    • 0.42
    • False
    • Hide

      None

      Show
      None
    • False
    • None
    • None

      Description of problem:

      When creating a CNV guest VM, with primary interface based on UserDefinedNetwork + secondary multus interface (attached to a node bridge) - none of the interfaces is assigned and IP address.
      NetworkManager-wait-online.service service also fails starting, which seems to be related.
      

      Version-Release number of selected component (if applicable):

      OCP 4.18.0-ec.3
      CNV 4.18.0 (4.18.0-ec.3) 
      nmstate-2.2.33-1.el9_4.x86_64
      

      How reproducible:

      100 %
      

      Steps to Reproduce:

      1.
      Create a linux-bridge interface on all worker nodes using a NodeNetworkConfigurationPolicy resource like the attached nncp-linux-bridge.yaml
      
      2.
      Create a NetworkattachmentDefinition for the created linux-bridge like the attached linux-bridge-nad.yaml
      
      3.
      Create a UserDefinedNetwork resource like the attached 1-namespace-udn.yaml
      
      4.
      Create a VM with primary interface attached to the UDN, and a secondary interface attached to the NAD you created, by applying the attached 12-vma-primary-udn-secondary-multus.yaml
      Please also note that the networkData section in cloud-init includes IP specification for both interfaces - dynamic for the primary (eth0) and static for the secondary (eth1):
      
                  ethernets:
                    eth0:
                      dhcp4: true
                    eth1: 
                      addresses:
                      - 10.200.1.1/24
      
      5.
      Start the VM (virtctl start vm-mul-udn-a) and wait for it to complete.
      
      6.
      Access the VM's console and check the IP addresses of its interfaces:
      $ virtctl console vm-mul-udn-a
      Successfully connected to vm-mul-udn-a console. The escape sequence is ^]
      
      [fedora@vm-mul-udn-a ~]$ ip addr
      1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
          link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
          inet 127.0.0.1/8 scope host lo
             valid_lft forever preferred_lft forever
          inet6 ::1/128 scope host noprefixroute 
             valid_lft forever preferred_lft forever
      2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
          link/ether 02:7f:cf:00:00:0b brd ff:ff:ff:ff:ff:ff
          altname enp1s0
          inet6 fe80::7f:cfff:fe00:b/64 scope link noprefixroute 
             valid_lft forever preferred_lft forever
      3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
          link/ether 52:54:00:fc:9f:49 brd ff:ff:ff:ff:ff:ff
          altname enp2s0
      
      

      Actual results:

      <BUG> None of the interfaces has an IP assigned.
      

      Expected results:

      Dynamic IP address from the subnet which is detailed in the UDN (192.168.88.0/24) for eth0, and the static IP address that is specified in the VM spec (10.200.1.1) for eth1. 
      

      Additional info:

      NetworkManager-wait-online.service fails starting:
      
      × NetworkManager-wait-online.service - Network Manager Wait Online
           Loaded: loaded (/usr/lib/systemd/system/NetworkManager-wait-online.service; enabled; preset: enabled)
          Drop-In: /usr/lib/systemd/system/service.d
                   └─10-timeout-abort.conf
           Active: failed (Result: exit-code) since Mon 2024-11-11 08:45:00 UTC; 3min 41s ago
             Docs: man:NetworkManager-wait-online.service(8)
          Process: 824 ExecStart=/usr/bin/nm-online -s -q (code=exited, status=1/FAILURE)
         Main PID: 824 (code=exited, status=1/FAILURE)
              CPU: 54ms
      
      Nov 11 08:44:00 vm-mul-udn-a systemd[1]: Starting NetworkManager-wait-online.service - Network Manager Wait Online...
      Nov 11 08:45:00 vm-mul-udn-a systemd[1]: NetworkManager-wait-online.service: Main process exited, code=exited, status=1/FAILURE
      Nov 11 08:45:00 vm-mul-udn-a systemd[1]: NetworkManager-wait-online.service: Failed with result 'exit-code'.
      Nov 11 08:45:00 vm-mul-udn-a systemd[1]: Failed to start NetworkManager-wait-online.service - Network Manager Wait Online.
      
      (The full NetworkManager logs from journalctl are also attached in NetworkManager-journalctl.log)
      

        1. 12-vma-primary-udn-secondary-multus.yaml
          1 kB
        2. 1-namespace-udn.yaml
          0.3 kB
        3. linux-bridge-nad.yaml
          0.4 kB
        4. NetworkManager-journalctl.log
          30 kB
        5. nncp-linux-bridge.yaml
          0.4 kB

              ysegev@redhat.com Yossi Segev
              ysegev@redhat.com Yossi Segev
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated:
                Resolved: