【问题标题】:Which variable I have to set in settings.py to redirect the nova services url?我必须在 settings.py 中设置哪个变量来重定向 nova 服务 url?
【发布时间】:2013-03-04 02:31:12
【问题描述】:

我正在安装openstack horizon。

当我查看他们提到的 git hub 上的文档时

运行所需的最低 OpenStack 服务集包括:

  • Nova(计算、API、调度程序、网络和卷服务)
  • 一瞥
  • 基石

但我的 nova、keystone 和 Glance 服务正在其他机器上运行。

例如: Horizo​​n 运行在 192.168.1.1,keystone、nova 和 Glance 运行在 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 |
+----------------------------------+--------+---------------------------------------------+------------------------------------------+------------------------------------------+----------------------------------+

我必须在settings.py 中设置哪个变量以指向该网址?

我试过OPENSTACK_KEYSTONE_URL,但没有用:(。

【问题讨论】:

    标签: python openstack openstack-horizon


    【解决方案1】:

    要配置 Horizo​​n 以从其他主机访问数据,您可以在 openstack_dashboard/local/local_settings.py 中设置 OPENSTACK_HOST

    这个常量的默认值是

    OPENSTACK_HOST = "127.0.0.1"
    

    如果您想从192.168.1.2 获取数据,请将其更改为

    OPENSTACK_HOST = "192.168.1.2"
    

    并重新启动 Horizo​​n,它将从另一台主机返回数据。

    【讨论】:

      【解决方案2】:

      没有“NOVA_URL”设置。所有服务(nova、swift、glance 等)端点均由 Keystone 提供。 settings.py 中只需要 OPENSTACK_KEYSTONE_URL。

      来自文档:

      Keystone 还充当服务目录,让其他 OpenStack 系统 了解 OpenStack 服务的相关 API 端点在哪里。这 特别是 OpenStack Dashboard 大量使用服务目录,这必须是 为 OpenStack 仪表板配置以正常运行。

      您必须首先在 keystone 中定义所有服务: http://docs.openstack.org/developer/keystone/configuringservices.html

      干杯

      【讨论】:

      • 感谢@Romain 回复。但我已经尝试过了,但它不起作用:(
      • 你的意思是 Keystone 已经设置好了,所有的服务都创建好了?如果是这样,您是否介意仔细检查以下 keystone CLI 命令的输出:keystone service-list 和 keystone endpoint-list
      • 然后您可以通过在您的 Horizo​​n 服务器上键入以下内容来检查 keystone API 响应:$ curl -d '{"auth":{"passwordCredentials":{"username": "<your username here>", "password": "<your password here>"}}}' -H "Content-type: application/json" http://192.168.1.2:35357/v2.0/tokens 它应该返回一堆信息,包括端点。
      • 另外,您可以创建另一个问题来描述您的问题:您可以访问登录页面吗?您是否在 apache 日志中看到了一些错误,等等。因为对于“我必须在 settings.py 中设置哪个变量来重定向 nova 服务 url?”这个问题,答案实际上是“没有设置”,因为正如您在前面提到的 keystone API 调用中看到的那样,端点包含在响应。亲切的问候
      猜你喜欢
      • 2016-10-10
      • 2021-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-23
      • 1970-01-01
      相关资源
      最近更新 更多