Ask Your Question

midekra's profile - activity

2017-03-06 01:19:35 -0500 received badge  Popular Question (source)
2016-12-22 07:10:17 -0500 asked a question Incorrect ironic publicURL endpoint when using different regions

Hi,

I stumbled on a weird problem. In my setup I have different regions. All my services are working correctly for each region and all the endpoints are listed correctly for each region. But whenever I use ironic it seems it only uses the first public endpoint it encounters. For example:

+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------------------+
| ID                               | Region    | Service Name | Service Type | Enabled | Interface | URL                                    |
+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------------------+
| 1be5bd393d9544a8933d80028cf386d6 | RegionOne | ironic       | baremetal    | True    | public    | http://region.one.nl:6385   |
| 692a282279594684b7d9e4b3c39645d4 | RegionTwo  | ironic       | baremetal    | True    | public    | http://region.two.nl:6385  |

All of my ironic commands (like ironic node-list) will use the endpoint of RegionOne. If I disable the endpoint RegionOne It will use RegionTwo. If I delete the endpoint RegionOne and re-create it and making sure the ID has a higher number, for example:

+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------------------+
| ID                               | Region    | Service Name | Service Type | Enabled | Interface | URL                                    |
+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------------------+
| 692a282279594684b7d9e4b3c39645d4 | RegionTwo  | ironic       | baremetal    | True    | public    | http://region.two.nl:6385  |
| 87df78bc84d341bea07eb4dcaf4345a1 | RegionOne | ironic       | baremetal    | True    | public    | http://region.one.nl:6385   |

It will ALWAYS use RegionTwo when I use ironic commands. It seems like it is ignoring the different public endpoints. If I use the --debug argument with my ironic commands I can see that the curl XGET command is using the wrong endpoint for that region.

My environment settings are correctly set, e.g.: OS_REGION_NAME etc. The rest of my openstack services (nova, neutron, designate etc.) are working correctly when using different regions.

I'm running Openstack Mitaka.

Anyone has an idea?