Bug 1418159 - OpenStack Heat may fail to connect keystone admin API in multi-region environment
Summary: OpenStack Heat may fail to connect keystone admin API in multi-region environ...
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-heat
Version: 9.0 (Mitaka)
Hardware: Unspecified
OS: Unspecified
Target Milestone: async
: 9.0 (Mitaka)
Assignee: Rabi Mishra
QA Contact: Amit Ugol
Depends On:
Blocks: 1419348 1428632
TreeView+ depends on / blocked
Reported: 2017-02-01 04:12 UTC by Akira YOSHIYAMA
Modified: 2022-07-09 09:58 UTC (History)
10 users (show)

Fixed In Version: openstack-heat-6.1.0-3.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1419348 1428632 (view as bug list)
Last Closed: 2017-06-14 15:37:14 UTC
Target Upstream Version:

Attachments (Terms of Use)
our patch to fix this problem (672 bytes, patch)
2017-02-01 04:12 UTC, Akira YOSHIYAMA
no flags Details | Diff

System ID Private Priority Status Summary Last Updated
Launchpad 1661594 0 None None None 2017-02-03 13:02:57 UTC
OpenStack gerrit 428718 0 None None None 2017-02-03 13:38:49 UTC
Red Hat Issue Tracker OSP-16971 0 None None None 2022-07-09 09:58:36 UTC
Red Hat Product Errata RHSA-2017:1464 0 normal SHIPPED_LIVE Moderate: openstack-heat security and bug fix update 2017-06-14 19:28:36 UTC

Description Akira YOSHIYAMA 2017-02-01 04:12:04 UTC
Created attachment 1246507 [details]
our patch to fix this problem

Description of problem:
Heat uses Keystone Trust to build a stack as a tenant user. To do so, heat-engine needs connections to a Keystone admin API endpoint.
In multi-region environment, each region may have its own Keystone admin API and Keystone may have multiple endpoint entries. In this case, heat-engine uses the 1st. So, heat-engine in regions without the 1st endpoint tries to connect another region with the 1st. It will fail if there is no route to the endpoint.

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

How reproducible:
100% in regions without the 1st endpoint.

Steps to Reproduce:
1. Register multiple Keystone admin endpoints. The 1st entry should have dummy region name and inaccessible IP address from heat-engine.
2. "heat stack-create <template>"

Actual results:
heat command failed with and error:
ConnectFailure: Unable to establish connection to http://<inaccessbile>:35357/v2.0/OS-TRUST/trusts

Expected results:
heat-engine works properly and the stack creation completed.

Additional info:
The attached patch fixes the problem.

Comment 1 Zane Bitter 2017-02-02 15:57:54 UTC
Can you please submit this patch upstream and post a link to the review here? I will make sure it gets reviewed and backported. Thanks!

Comment 6 errata-xmlrpc 2017-06-14 15:37:14 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


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