Search code examples
pythonopenstackopenstack-horizon

Which variable I have to set in settings.py to redirect the nova services url?


I am installing openstack horizon.

When I check the docs on git hub they mention

The minimum required set of OpenStack services running includes the following:

  • Nova (compute, api, scheduler, network, and volume services)
  • Glance
  • Keystone

But my nova, keystone and glance services are running on other machine.

For example: Horizon is running on 192.168.1.1 and keystone, nova and glance is running on 192.168.1.2.

[root@localhost ~]# keystone service-list
+----------------------------------+----------+----------+---------------------------+
|                id                |   name   |   type   |        description        |
+----------------------------------+----------+----------+---------------------------+
| 5cb184a0a6be458e9ae6319d3f592d22 | keystone | identity | Keystone Identity Service |
| 759d0f09bdcc4537bb981de9889b778d | quantum  | network  |      Network Service      |
| 8c3b1ab783fa492ba7d004ec38af7a49 |   nova   | compute  |    Nova Compute Service   |
| c5ca826057a8483bb68aba8dd81b5126 |  glance  |  image   |    Glance Image Service   |
| fd35e426172146008a1b20dd7b2b5f6d |  cinder  |  volume  |       Cinder Service      |
+----------------------------------+----------+----------+---------------------------+

[root@localhost ~]# keystone endpoint-list
+----------------------------------+--------+---------------------------------------------+------------------------------------------+------------------------------------------+----------------------------------+
|                id                | region |                  publicurl                  |               internalurl                |                 adminurl                 |            service_id            |
+----------------------------------+--------+---------------------------------------------+------------------------------------------+------------------------------------------+----------------------------------+
| 12e0810eb2774f8cb437afcdd903c431 |  test  |             http://*.*.*.*:9292/v1          |         http://127.0.0.1:9292/v1         |         http://127.0.0.1:9292/v1         | c5ca826057a8483bb68aba8dd81b5126 |
| 13e767828adc4add92cec572d220508d |  test  |     http://*.*.*.*:8774/v1.1/% (tenant_id)s | http://127.0.0.1:8774/v1.1/%(tenant_id)s | http://127.0.0.1:8774/v1.1/%(tenant_id)s | 8c3b1ab783fa492ba7d004ec38af7a49 |
| 18b1360d5d0e4d1cbfd4a5076c56d30b |  test  |      http://*.*.*.*:8776/v1/%(tenant_id)s   |  http://127.0.0.1:8776/v1/%(tenant_id)s  |  http://127.0.0.1:8776/v1/%(tenant_id)s  | fd35e426172146008a1b20dd7b2b5f6d |
| 244a4f0323f94017a9de913090811523 |  test  |            http://*.*.*.*:5000/v2.0         |        http://127.0.0.1:5000/v2.0        |          http://*.*.*.*:35357/v2.0       | 5cb184a0a6be458e9ae6319d3f592d22 |
| f98ebb649df54e71a91851cb101af3d6 |  test  |              http://*.*.*.*:9696/           |          http://127.0.0.1:9696/          |          http://127.0.0.1:9696/          | 759d0f09bdcc4537bb981de9889b778d |
+----------------------------------+--------+---------------------------------------------+------------------------------------------+------------------------------------------+----------------------------------+

Which variable I have to set in settings.py to point to that url?

I tried OPENSTACK_KEYSTONE_URL but didnt work :(.


Solution

  • There is no "NOVA_URL" setting. All services (nova, swift, glance, etc.) endpoints are provided by Keystone. Only OPENSTACK_KEYSTONE_URL is required in settings.py.

    From the doc:

    Keystone also acts as a service catalog to let other OpenStack systems know where relevant API endpoints exist for OpenStack Services. The OpenStack Dashboard, in particular, uses the service catalog heavily and this must be configured for the OpenStack Dashboard to properly function.

    You must define all services in keystone first: http://docs.openstack.org/developer/keystone/configuringservices.html

    Cheers