Ask Your Question
0

OpenStack Heat WebHooks for up/down-scalling point to internal (storage) IP

asked 2016-05-05 04:47:49 -0500

animaletdesequia gravatar image

We're deploying OpenStack Kilo using Mirantis Fuel 7.0 and so far the system seems to be working. We've added the ceilometer component and heat to make it possible for our users to upscale or downscale automatically some LoadBalancer servers we use on our stacks.

The automatic up and downscaling seem to be working well. The only problem is when we go to check the resources in the Orchestration tab, the generated WebHook points to the Management URL (192.168.0.2:8000) instead of pointing to the same string with the public URL or (preferibly) the server name.

What should look something like this:

https://<serverpublicip>:8000/v1/[...]

Looks like this:

https://192.168.0.2:8000/v1/[...]

I've checked the port (8000) and it's open and listening on the public endpoint, so the problem is not with the service but with the component that generates the info. In fact, if I manually copy the address and edit the right IP, it works from outside the environment using a Restful client or simply a web browser.

But we need the generated webhook to automatically use the public URL so our customers can make calls from external applications (not from our OpenStack/horizon installation only) to modify the stack state.

I've checked heat config under /etc/heat/heat.conf and can find some suspicious settings like:

heat_metadata_server_url=http://192.168.0.2:8000 heat_waitcondition_server_url=http://192.168.0.2:8000/v1/waitcondition heat_watch_server_url=http://192.168.0.2:8003 auth_uri = http://192.168.0.2:5000/v2.0 auth_host = 192.168.0.2

Not sure which one of these parameters may be the one it's used to generate the webhook.

I've tryied modifying them using the public IP and the name of the server itself, doesn't seems to make any difference. The webhooks on the user interface still point to the controller internal IP in the management network.

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted
1

answered 2016-05-19 13:45:22 -0500

zaneb gravatar image

It's heat_waitcondition_server_url. You'll need to restart heat-engine for that to take effect, and it won't apply to webhook URLs created in the past.

edit flag offensive delete link more

Comments

I tried that and the WebHooks now have the correct IP, but they don't work (no change when I send the request). Also, autoscalling now doesn't work. I also tried setting under [heat_api_cfn] bind_host = <publicip> but neither manual nor autoscalling works.

animaletdesequia gravatar imageanimaletdesequia ( 2016-05-20 03:34:48 -0500 )edit

More information: I changed the URL to use https instead of https and now the manual scaling URL are correct and responding... The problem now is I broke autoscaling.

animaletdesequia gravatar imageanimaletdesequia ( 2016-05-20 04:59:47 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower

Stats

Asked: 2016-05-05 04:47:49 -0500

Seen: 373 times

Last updated: May 19 '16