no way to provide vendor metadata

Bug #1777714 reported by Shane Peters
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Charm Helpers
Fix Committed
Undecided
Rodrigo Barbieri
OpenStack Neutron Gateway Charm
Fix Released
Undecided
Shane Peters
OpenStack Nova Cloud Controller Charm
Fix Released
Undecided
Rodrigo Barbieri
OpenStack Nova Compute Charm
Fix Released
Undecided
Rodrigo Barbieri

Bug Description

The charm doesn't provide a way to provision vendor_data to VMs.

Being able to enable and configure vendor_data would help alleviate the need to spin custom images for things like package mirrors, timezones, or network proxies.

# More on Vendor Data
https://docs.openstack.org/nova/latest/user/vendordata.html

Tags: sts
Shane Peters (shaner)
Changed in charm-neutron-gateway:
assignee: nobody → Shane Peters (shaner)
summary: - no way to provide vendor_data metadata
+ no way to provide vendor metadata
Shane Peters (shaner)
Changed in charm-neutron-gateway:
status: New → Confirmed
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to charm-neutron-gateway (master)

Reviewed: https://review.openstack.org/577859
Committed: https://git.openstack.org/cgit/openstack/charm-neutron-gateway/commit/?id=b355ea0473af5f1cf47c23ac5dadbeea52942bb0
Submitter: Zuul
Branch: master

commit b355ea0473af5f1cf47c23ac5dadbeea52942bb0
Author: Shane Peters <email address hidden>
Date: Mon Jun 25 12:07:49 2018 -0400

    Add functionality for vendor_data

    Using vendor metadata helps alleviate the need to spin custom images
    for things like package mirrors, timezones, or network proxies.

    Adds new config option 'vendor-data' which takes a JSON formated
    string to be used as static vendor metadata.

    Adds new config option 'vendor-data-url' which takes a URL which
    serves dynamic JSON formatted vendor metadata.

    Adds new NovaMetadataContext class which writes
    /etc/nova/vendor_data.json and enables it via nova.conf.

    Closes-Bug: 1777714

    Change-Id: I1d70804e59d42b0651a462c81e01d9c95626f27d

Changed in charm-neutron-gateway:
status: In Progress → Fix Committed
David Ames (thedac)
Changed in charm-neutron-gateway:
milestone: none → 18.08
James Page (james-page)
Changed in charm-neutron-gateway:
status: Fix Committed → Fix Released
Revision history for this message
Rodrigo Barbieri (rodrigo-barbieri2010) wrote :

This bug is still present when the cloud is deployed using DVR + L3HA. In this case, the metadata is served from the computes, and setting the config in neutron-gateway does not cause the change to propagate to the compute notes

Changed in charm-neutron-openvswitch:
status: New → Triaged
importance: Undecided → High
no longer affects: charm-neutron-openvswitch
Revision history for this message
Chris MacNaughton (chris.macnaughton) wrote :

charm-nova-compute already has vendor-data config. Additionally, for all deploys using Queens or later, this configuration should be used rather than the neutron-gateway version.

Does the charm-nova-compute based configuration not work as you expect when mixed with DVR?

Changed in charm-nova-compute:
status: New → Incomplete
Changed in charm-nova-cloud-controller:
status: New → Incomplete
Revision history for this message
Chris MacNaughton (chris.macnaughton) wrote :

Can you please include more details about what you're trying to accomplish, and with what versions of both OpenStack and the charms?

Revision history for this message
Rodrigo Barbieri (rodrigo-barbieri2010) wrote :
Changed in charm-nova-cloud-controller:
assignee: nobody → Rodrigo Barbieri (rodrigo-barbieri2010)
Changed in charm-nova-compute:
assignee: nobody → Rodrigo Barbieri (rodrigo-barbieri2010)
Changed in charm-helpers:
assignee: nobody → Rodrigo Barbieri (rodrigo-barbieri2010)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to charm-neutron-gateway (master)

Related fix proposed to branch: master
Review: https://review.opendev.org/659827

Changed in charm-nova-compute:
status: Incomplete → In Progress
Changed in charm-nova-cloud-controller:
status: Incomplete → In Progress
Revision history for this message
Rodrigo Barbieri (rodrigo-barbieri2010) wrote :
Changed in charm-helpers:
status: New → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to charm-neutron-gateway (master)

Reviewed: https://review.opendev.org/659827
Committed: https://git.openstack.org/cgit/openstack/charm-neutron-gateway/commit/?id=206970c6c1302f235b569d6b1f194d002a1a2c9b
Submitter: Zuul
Branch: master

commit 206970c6c1302f235b569d6b1f194d002a1a2c9b
Author: Rodrigo Barbieri <email address hidden>
Date: Fri May 17 10:43:36 2019 -0300

    Replace nova vendor metadata code

    Two generic contexts to handle nova vendor metadata have
    been implemented in charm-helpers. So, replace the existing
    one here in order to simplify and unify the implementation
    across all charms that handle vendor metadata.

    Change-Id: I2a802c763f2f4403a6dfb17575aa742ca8072e96
    Related-Bug: #1777714

Revision history for this message
Rodrigo Barbieri (rodrigo-barbieri2010) wrote :

Added a new PR to fix a bug caused by the previous PR (324): https://github.com/juju/charm-helpers/pull/332

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

Reviewed: https://review.opendev.org/657672
Committed: https://git.openstack.org/cgit/openstack/charm-nova-compute/commit/?id=af051c4fba0b5ff2db62a908ab9fad688353750c
Submitter: Zuul
Branch: master

commit af051c4fba0b5ff2db62a908ab9fad688353750c
Author: Rodrigo Barbieri <email address hidden>
Date: Thu May 9 16:15:04 2019 -0300

    Propagate vendor_data from nova-cloud-controller

    When using DVR and L3HA neutron deployment options,
    Nova API Metadata requests are served from compute nodes,
    instead of from neutron-gateway nodes.

    This change allows nova-compute to receive vendor_data
    configuration values from nova-cloud-controller charm
    relation and write to nova-compute's nova.conf
    appropriately.

    This will be effictive for Queens and later OpenStack
    releases.

    Synced charm-helpers in order to import new context
    for writing the vendor_data.json file.

    Change-Id: I0c79e1bfac9fbe7009a7e862ad010cfa2de8cfda
    Closes-Bug: #1777714

Changed in charm-nova-compute:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to charm-nova-cloud-controller (master)

Reviewed: https://review.opendev.org/658394
Committed: https://git.openstack.org/cgit/openstack/charm-nova-cloud-controller/commit/?id=a51efaf640b4138e3fd930fe6521ab6905bc2e0a
Submitter: Zuul
Branch: master

commit a51efaf640b4138e3fd930fe6521ab6905bc2e0a
Author: Rodrigo Barbieri <email address hidden>
Date: Fri May 10 11:38:53 2019 -0300

    Propagate vendor_data from nova-cloud-controller

    When using DVR and L3HA neutron deployment options,
    Nova API Metadata requests are served from compute nodes,
    instead of from neutron-gateway nodes.

    This change allows nova-cloud-controller to send vendor_data
    configuration values to nova-compute charm relation so it
    can write to nova-compute's nova.conf appropriately.

    Replaced the existing context logic with inheritance
    from a new context created in charm-helpers, so the
    logic can be shared across several charms that write
    vendor metadata to nova.conf and vendor_data.json.

    Also, small fix in the vendor-data and vendor-data-url
    descriptions, where it was incorrectly stating that such
    configuration would be effective in nova-cloud-controller
    on Queens release.

    The values set in vendor-data and vendor-data-url config
    options will always be propagated to nova-compute regardless
    of the OpenStack release. Those values will continue to only
    be effective in nova-cloud-controller nodes on Rocky release
    or later.

    Included sync of charm-helpers code in order to inherit
    the refactored vendor metadata contexts.

    Change-Id: If8373fc6b2d04dbc29ed07896d385ac920cae3f4
    Depends-On: I0c79e1bfac9fbe7009a7e862ad010cfa2de8cfda
    Closes-Bug: #1777714

Changed in charm-nova-cloud-controller:
status: In Progress → Fix Committed
James Page (james-page)
Changed in charm-nova-cloud-controller:
milestone: none → 19.07
Changed in charm-nova-compute:
milestone: none → 19.07
David Ames (thedac)
Changed in charm-nova-cloud-controller:
status: Fix Committed → Fix Released
Changed in charm-nova-compute:
status: Fix Committed → Fix Released
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.