Ironic: heavy polling

Bug #1458934 reported by Lucas Alvares Gomes
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Medium
Lucas Alvares Gomes

Bug Description

Ironic does poll the Ironic API to check the state of a Node when provisioning it, and currently we pool the whole node object representation every time. This can be very expensive since the node might contain a lot of details and even a base64 string of the configdrive registered in it. Plus, this full node representation also gets logged in case we use n-cpu with debug mode enabled.

We need a light way to fetch the states from Nodes in Ironic that can be used by the Nova Ironic Driver.

Tags: ironic
Changed in nova:
assignee: nobody → Lucas Alvares Gomes (lucasagomes)
Revision history for this message
Lucas Alvares Gomes (lucasagomes) wrote :

This patch is Ironic allows we GET a subset of a resource in our API [1], I'm planning to use this to fix the problem in the Ironic Nova driver

[1] https://review.openstack.org/#/c/183491/

tags: added: ironic
Michael Davies (mrda)
Changed in nova:
status: New → Triaged
importance: Undecided → Medium
summary: - Ironic: heavy pooling
+ Ironic: heavy polling
description: updated
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

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

Changed in nova:
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on nova (master)

Change abandoned by Lucas Alvares Gomes (<email address hidden>) on branch: master
Review: https://review.openstack.org/221057
Reason: Superseded by https://review.openstack.org/#/c/221848/

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/221848
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=26c69a6a62a138ccdb88ecc5bf75330a04e5de0b
Submitter: Jenkins
Branch: master

commit 26c69a6a62a138ccdb88ecc5bf75330a04e5de0b
Author: Lucas Alvares Gomes <email address hidden>
Date: Wed Jan 13 16:15:12 2016 +0000

    Ironic: Lightweight fetching of nodes

    The Ironic API version >= 1.8 supports fetching only a small number of
    a resource instead of it's full representation. This patch is pinning
    the API version for Ironic at 1.8 so the nova driver can benefit from
    this feature by fetching only the required fields for the deployment,
    making it more lightweight and improving the readability of the logs.

    The configuration option "api_version" was marked as deprecated and
    should be removed in the future. The only possible value for that
    configuration was "1" (because Ironic only have 1 API version) and the
    ironic team came to an agreement that setting the API version via
    configuration option should not be supported anymore.

    Closes-Bug: #1458934
    Change-Id: Iebfa06da6811889e11fd4edf15d47ca4e0feea6f

Changed in nova:
status: In Progress → Fix Released
Revision history for this message
Doug Hellmann (doug-hellmann) wrote : Fix included in openstack/nova 13.0.0.0b3

This issue was fixed in the openstack/nova 13.0.0.0b3 development milestone.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers