OVN: Extra DHCP options validation broke the Ironic+OVN+DHCP agent combination

Bug #1888649 reported by Lucas Alvares Gomes
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
High
Lucas Alvares Gomes

Bug Description

The patch [0] added validations to the DHCP options passed to OVN via the Neutron API because, not all existing DHCP options are supported by the OVN DHCP.

Some projects such as Ironic uses a dnsmasq syntax when passing those options, for example [1]: "tag:ipxe,<option name>". Which is not understood by the OVN driver for Neutron causing the validation to fail the API request.

But by failing the API request we also break the combination of using Ironic + OVN + Neutron DHCP agent, where the agent is able to understand that syntax and boot the baremetal instances via the network.

Due to that problem, I believe the OVN driver should stop failing the API request for the options it doesn't understand and instead log an error message so that it's visible to the cloud operator.

[0] https://review.opendev.org/#/c/722025/
[1] https://github.com/openstack/ironic/blob/19866e3ddbff1953a5ed6fb3abd11d7f649238fa/ironic/common/pxe_utils.py#L472-L487

Changed in neutron:
importance: Undecided → Medium
assignee: nobody → Lucas Alvares Gomes (lucasagomes)
importance: Medium → High
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.opendev.org/742654

Changed in neutron:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/742654
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=8c4b23f8128fa396164293d74837fa3b391e9974
Submitter: Zuul
Branch: master

commit 8c4b23f8128fa396164293d74837fa3b391e9974
Author: Lucas Alvares Gomes <email address hidden>
Date: Thu Jul 23 13:07:42 2020 +0100

    [OVN] Extra DHCP options validation: Log invalid options

    By raising an exception when an option is invalid we broke the Ironic +
    OVN + Neutron DHCP agent combination that enabled deploying baremetal
    machines.

    This patch is changing the approach to just log the invalid options
    instead of failing the request so that the OVN driver can still be used
    with Ironic.

    Change-Id: I5e98297acefb62f9a9c1200ccfaac0672eeeed2c
    Closes-Bug: #1888649
    Signed-off-by: Lucas Alvares Gomes <email address hidden>

Changed in neutron:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/ussuri)

Fix proposed to branch: stable/ussuri
Review: https://review.opendev.org/743160

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/ussuri)

Reviewed: https://review.opendev.org/743160
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=d07e87920826c5b4a1077939bbf5f9c9870d6511
Submitter: Zuul
Branch: stable/ussuri

commit d07e87920826c5b4a1077939bbf5f9c9870d6511
Author: Lucas Alvares Gomes <email address hidden>
Date: Thu Jul 23 13:07:42 2020 +0100

    [OVN] Extra DHCP options validation: Log invalid options

    By raising an exception when an option is invalid we broke the Ironic +
    OVN + Neutron DHCP agent combination that enabled deploying baremetal
    machines.

    This patch is changing the approach to just log the invalid options
    instead of failing the request so that the OVN driver can still be used
    with Ironic.

    Change-Id: I5e98297acefb62f9a9c1200ccfaac0672eeeed2c
    Closes-Bug: #1888649
    Signed-off-by: Lucas Alvares Gomes <email address hidden>
    (cherry picked from commit 8c4b23f8128fa396164293d74837fa3b391e9974)

tags: added: in-stable-ussuri
tags: added: neutron-proactive-backport-potential
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.