terminate Ironic instance update resources for all nodes

Bug #1552446 reported by Vasyl Saienko
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ironic
Fix Released
Low
Vasyl Saienko
OpenStack Compute (nova)
Opinion
Undecided
Vasyl Saienko

Bug Description

Node termination [0] calls update_available_resources [1] for all nodes. With huge number of instances it leads to super slow operations.

[0] https://github.com/openstack/ironic/blob/master/ironic/nova/compute/manager.py#L90
[1] https://github.com/openstack/nova/blob/master/nova/compute/manager.py#L6375

Tags: ironic
Vasyl Saienko (vsaienko)
Changed in ironic:
assignee: nobody → Vasyl Saienko (vsaienko)
Changed in nova:
assignee: nobody → Vasyl Saienko (vsaienko)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ironic (master)

Fix proposed to branch: master
Review: https://review.openstack.org/287498

Changed in ironic:
status: New → In Progress
Revision history for this message
Matt Riedemann (mriedem) wrote : Re: terminate instance update resources for all nodes

This is not a nova bug. Honestly, I didn't know ironic even extended the nova compute manager like this.

tags: added: ironic
Changed in nova:
status: New → Invalid
Revision history for this message
Vasyl Saienko (vsaienko) wrote :

@Matt, at the moment Nova doesn't allow to update resources per single server. Ironic extends existing nova compute manager,
please have look [0]. It calls periodic task from nova to update resources for all servers when deleting single instance.

I agree it is not a bug in Nova, it is missed functionality rather.

[0] https://github.com/openstack/ironic/blob/master/ironic/nova/compute/manager.py

Changed in nova:
status: Invalid → Opinion
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to nova (master)

Reviewed: https://review.openstack.org/287485
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=2005b47c92edb41b08ec401ecdbfe816cab13afb
Submitter: Jenkins
Branch: master

commit 2005b47c92edb41b08ec401ecdbfe816cab13afb
Author: vsaienko <email address hidden>
Date: Thu Mar 3 00:44:35 2016 +0200

    Allow to update resource per single node.

    At the moment during Ironic instance termination resources are updated
    for all nodes. As result with high numner of nodes, removing N instances
    initiates N x M requests, where M is the total number of nodes.
    This commit allows to update resources per specific node only.

    Co-Authored-By: Yuriy Zveryanskyy (<email address hidden>)
    Related-Bug: #1552446
    Change-Id: Iffad4a6ab1aaa5fea591c19f6d330dc861c5675d

Changed in ironic:
assignee: Vasyl Saienko (vsaienko) → Vladyslav Drok (vdrok)
Vladyslav Drok (vdrok)
Changed in ironic:
assignee: Vladyslav Drok (vdrok) → Vasyl Saienko (vsaienko)
Dmitry Tantsur (divius)
Changed in ironic:
importance: Undecided → Low
Vasyl Saienko (vsaienko)
summary: - terminate instance update resources for all nodes
+ terminate Ironic instance update resources for all nodes
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ironic (master)

Reviewed: https://review.openstack.org/287498
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=16d8819891c4bef58760c62c30aa2b68868087b9
Submitter: Jenkins
Branch: master

commit 16d8819891c4bef58760c62c30aa2b68868087b9
Author: vsaienko <email address hidden>
Date: Thu Mar 3 01:07:33 2016 +0200

    Update resources only for specific node during deletion.

    At the moment during Nova instance termination resources are
    updated for all Ironic nodes. As result with high number of nodes,
    removing N instances initiates N x M requests, where M is the total
    number of nodes. This commit allows to update resources per specific
    node on termination.

    Depends-On: Iffad4a6ab1aaa5fea591c19f6d330dc861c5675d

    Change-Id: Ib54741c8564e18f23c4f50bed190dfc66db7ba76
    Closes-Bug: #1552446

Changed in ironic:
status: In Progress → Fix Released
Revision history for this message
Thierry Carrez (ttx) wrote : Fix included in openstack/ironic 6.0.0

This issue was fixed in the openstack/ironic 6.0.0 release.

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.