Bug 1661378 - Director deployment fails to configure Octavia's amp_image_tag parameter, causing loadbalancer creation to fail
Summary: Director deployment fails to configure Octavia's amp_image_tag parameter, cau...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 13.0 (Queens)
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: ---
Assignee: Emilien Macchi
QA Contact: Gurenko Alex
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-12-21 03:54 UTC by Lars Kellogg-Stedman
Modified: 2018-12-21 05:06 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-12-21 05:06:46 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Lars Kellogg-Stedman 2018-12-21 03:54:53 UTC
Description of problem:

I was unable to create a new loadbalancer in a fresh OSP 13 deployment.  Looking at the Octavia logs revealed:

    ComputeBuildException: Failed to build compute instance due to: No Glance images are tagged with  tag.

Looking through the sources, this happens when the `amp_image_tag` configuration option is undefine.  The value defaults to an empty string:

    cfg.StrOpt('amp_image_tag',
               default='',
               help=_('Glance image tag for the Amphora image to boot. '
                      'Use this option to be able to update the image '
                      'without reconfiguring Octavia. '
                      'Ignored if amp_image_id is defined.')),

And it was not set in octavia.conf:

    [root@neu-5-39-control2 ~]# docker exec  octavia_worker grep amp_image_tag /etc/octavia/octavia.conf
    # amp_image_tag =

Looking at t-h-t, we're trying to set this in puppet/services/octavia-controller.yaml:

      config_settings:
        map_merge:
          - get_attr: [OctaviaBase, role_data, config_settings]
          - octavia::controller::amp_boot_network_list: {get_param: OctaviaAmphoraNetworkList}
            octavia::controller::amp_flavor_id: {get_param: OctaviaFlavorId}
            octavia::controller::amp_image_tag: {get_param: OctaviaAmphoraImageTag}

But this config value isn't managed by octavia::controller; it's managed by octavia::worker.  In puppet-octavia-12.4.0-3.el7ost.noarch, we see:

    [root@neu-5-39-control2 octavia]# grep -lr amp_image_tag manifests/
    manifests/worker.pp

In fact, there is no manifests/controller in puppet-octavia, so all of the octavia::controller settings in the t-h-t template are incorrect.

Version-Release number of selected component (if applicable):

Approximately openstack-tripleo-heat-templates-8.0.7-21 (internal gerrit @ 70bd8b7ec)

Comment 1 Lars Kellogg-Stedman 2018-12-21 04:05:47 UTC
It looks like we may just need an update puppet-octavia rpm.

Comment 2 Lars Kellogg-Stedman 2018-12-21 05:06:31 UTC
Yeah, that was totally it.  Bringing puppet-octavia up to puppet-octavia-12.4.0-7.el7ost.noarch resolved the problem.


Note You need to log in before you can comment on or make changes to this bug.