[RFE] Ironic notifier - Notify Ironic on port status changes

Bug #1828367 reported by Harald Jensås
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Wishlist
Harald Jensås

Bug Description

More details in: https://storyboard.openstack.org/#!/story/1304673

Similar to how Nova can be notified (neutron/notifiers/nova.py) Ironic should also be notified on relevant port status changes.

Tags: rfe-approved
tags: added: rfe
summary: - Ironic notifier - Notify Ironic on port status changes
+ [RFE] Ironic notifier - Notify Ironic on port status changes
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/658787

Changed in neutron:
assignee: nobody → Harald Jensås (harald-jensas)
status: New → In Progress
Revision history for this message
Miguel Lavalle (minsel) wrote :

Taken from the Ironic story indicted above:

Updates to Neutron resources via its API are processed asynchronously on its backend. This exposes potential races with Ironic. Example: an API request from Ironic to update a port's DHCP settings will return successfully long before the associated dnsmasq config has been updated and the server restarted. There is a small potential for a race condition where Ironic will boot a machine before its DHCP has been properly configured, especially if the machine boots very quickly (ie a local VM)

Though none are used by Ironic (yet?), other Neutron operations are dependent on some other state in Neutron. For instance, a firewall will stay PENDING until an associated router and router interface have been created and are ACTIVE.

We need a way to synchronize these events. During Icehouse, Nova solved almost identical issues regarding orchestration between Nova and Neutron via an admin API endpoint Neutron can use to post back notifications. Ironic's Neutron usage is relatively limited ATM, but providing a framework similar to Nova's for this type of orchestration would solve the current issues and allow future drivers to take advantage of other Neutron features.

Revision history for this message
Miguel Lavalle (minsel) wrote :

It was discussed with the Ironic team during the PTG and approved

tags: added: rfe-approved
removed: rfe
Miguel Lavalle (minsel)
Changed in neutron:
importance: Undecided → Wishlist
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

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

commit afff649a3900dd75ffe699f4a599bcbdc449598c
Author: Harald Jensås <email address hidden>
Date: Thu May 9 10:38:15 2019 +0200

    Notify ironic on port status changes

    This patch adds an ironic notifier that sends notifications
    to ironic endpoint /v1/events. The events are triggered by
    port updates and deletions. Only ports with vnic_type
    baremetal are honored.

    Story: 1304673
    Task: 22263
    Closes-Bug: #1828367
    Implements: blueprint event-notifier-ironic
    Authored-By: Vasyl Saienko <email address hidden>
    Co-Authored-By: Harald Jensås <email address hidden>
    Co-Authored-By: Julia Kreger <email address hidden>
    Change-Id: I0bb3187a88a7f20adb8c60e24945db159afb83f1

Changed in neutron:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron 15.0.0.0b1

This issue was fixed in the openstack/neutron 15.0.0.0b1 development milestone.

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.