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

BZ#1622154 [RFE] Baremetal provisioning with OVN (without Neutron DHCP agent) for IPv4

XMLWordPrintable

    • [RFE] Baremetal provisioning with OVN (without Neutron DHCP agent) for IPv4
    • False
    • False
    • Committed
    • Committed
    • No
    • 0% To Do, 0% In Progress, 100% Done
    • Undefined
    • Networking; Neutron

      Description of problem:

      We still need some bits and pieces in place in order to deploy baremetal machines with OVN, more specifically to be able to PXE boot the baremetal nodes using the OVN's built-in DHCP server [0].

      Here are the missing parts off the top of my head:

      1. Be able to serve DHCP for an external/provider network.

      2. Per port DHCP options

      In core OVN this should be already supported via the "dhcpv

      {4,6}

      _options" columns in the "Logical_Switch_Port table" from OVN Northbound db.

      For networking-ovn ML2 driver we will need to implement the API to handle the update_dhcp_port() call and populate OVN accordingly.

      3. Tags and conditional DHCP server

      We should allow the creation of "tags" that matches certain DHCP options. That way Ironic can instruct the DHCP server to return different values based on whether a certain tag is set or not [1].

      4. (Not required, but a nice-to-have) Support for Ironic inspector

      Currently Ironic Inspector has it's own DHCP server because the Neutron DHCP agent only supports updating the DHCP options related to ports that already exists in Neutron.

      The idea here would be to have some global Options which can which can instruct the nodes to boot a default ramdisk (the inspector ramdisk) if the MAC address in the DHCP request packet doesn't match any ports in Neutron/OVN.

      [0] Some Ironic drivers may not rely on PXE boot (e.g if the driver supports virtual media), but, PXE booting is pretty standard and broadly used when it comes to deploying baremetal nodes so can't be discarded.

      [1] https://github.com/openstack/ironic/blob/756ac8fbcb5095b459c5ea55a53ee4c2c24bff58/ironic/common/pxe_utils.py#L365-L370

      Actual results:

      Baremetal machines not able to be deployed (via PXE booting) when using ml2/networking-ovn.

      Expected results:

      Baremetal machines being deployed (via PXE booting) when using ml2/networking-ovn.

      Additional info:

      1. As a temporary measure it may be possible to use Neutron's DHCP server to handle the baremetal provisioning for OVN. Similar as to how we also use it for SRIOV.

      2. I'm using PXE booting as a generic term for standard PXE and iPXE as well.

            lmartins@redhat.com Lucas Alvares Gomes
            lmartins@redhat.com Lucas Alvares Gomes
            rhos-dfg-networking-squad-neutron
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: