xcp + all nova commands -- n/a (HTTP 400)

Asked by dipak

I have two servers, one running all nova services as cloud controller except nova-compute on ubuntu 12.04 server and another server running xcp-xapi on top of xen hypervisor on dom0 and nova-compute running on domU.

server details:
cloud controller ip : 10.144.133.43
xen hypervisor dom0 ip : 10.144.133.44
nova-compute domU ip : 10.144.133.48

My nova-compute seems to be working fine as my cloud controller finds it enabled.

nova-manage service list
Binary Host Zone Status State Updated_At
nova-cert xen-cloud-1 nova enabled :-) 2012-08-23 16:53:37
nova-consoleauth xen-cloud-1 nova enabled :-) 2012-08-23 16:53:36
nova-scheduler xen-cloud-1 nova enabled :-) 2012-08-23 16:53:37
nova-network xen-cloud-1 nova enabled :-) 2012-08-23 16:53:37
nova-compute ubuntu nova enabled :-) 2012-08-23 16:53:53

But I am not able to find my all my nova commands are failing with the same error

nova --debug list

connect: (10.144.133.43, 5000)
send: 'POST /v2.0/tokens HTTP/1.1\r\nHost: 10.144.133.43:5000\r\nContent-Length: 108\r\ncontent-type: application/json\r\naccept-encoding: gzip, deflate\r\naccept: application/json\r\nuser-agent: python-novaclient\r\n\r\n{"auth": {"tenantName": "sst", "passwordCredentials": {"username": "sst_admin", "password": "cloud-admin"}}}'
reply: 'HTTP/1.1 200 OK\r\n'
header: Content-Type: application/json
header: Vary: X-Auth-Token
header: Date: Thu, 23 Aug 2012 16:55:47 GMT
header: Transfer-Encoding: chunked
connect: (10.144.133.44, 8774)
connect fail: (u'10.144.133.44', 8774)
DEBUG (shell:416) n/a (HTTP 400)
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/novaclient/shell.py", line 413, in main
    OpenStackComputeShell().main(sys.argv[1:])
  File "/usr/lib/python2.7/dist-packages/novaclient/shell.py", line 364, in main
    args.func(self.cs, args)
  File "/usr/lib/python2.7/dist-packages/novaclient/v1_1/shell.py", line 520, in do_list
    utils.print_list(cs.servers.list(search_opts=search_opts), columns,
  File "/usr/lib/python2.7/dist-packages/novaclient/v1_1/servers.py", line 279, in list
    return self._list("/servers%s%s" % (detail, query_string), "servers")
  File "/usr/lib/python2.7/dist-packages/novaclient/base.py", line 71, in _list
    resp, body = self.api.client.get(url)
  File "/usr/lib/python2.7/dist-packages/novaclient/client.py", line 136, in get
    return self._cs_request(url, 'GET', **kwargs)
  File "/usr/lib/python2.7/dist-packages/novaclient/client.py", line 124, in _cs_request
    **kwargs)
  File "/usr/lib/python2.7/dist-packages/novaclient/client.py", line 107, in request
    raise exceptions.from_response(resp, body)
BadRequest: n/a (HTTP 400)
ERROR: n/a (HTTP 400)

And it shows the same behavior on all nova commands.

From the error message I am assuming that nova compute endpoint is not configured right.
But I am not able to find a fault in my keystone endpoint list
keystone endpoint-list

+----------------------------------+-----------+--------------------------------------------+--------------------------------------------+--------------------------------------------+
| id | region | publicurl | internalurl | adminurl |
+----------------------------------+-----------+--------------------------------------------+--------------------------------------------+--------------------------------------------+
| 09a4a94aa64b4bcdb2d7a7281af913e4 | RegionOne | http://10.144.133.43:9292/v1 | http://10.144.133.43:9292/v1 | http://10.144.133.43:9292/v1 |

| 346ade9e3b754e588193fbdf39be135b | RegionOne | http://10.144.133.43:8773/services/Cloud | http://10.144.133.43:8773/services/Cloud | http://10.144.133.43:8773/services/Admin |

| 40023a1b7aa846f4825605fdf2d029bf | RegionOne | http://10.144.133.44:8774/v2/$(tenant_id)s | http://10.144.133.44:8774/v2/$(tenant_id)s | http://10.144.133.44:8774/v2/$(tenant_id)s |

| e19bfec8a9ef4ed5a0992b70e0162686 | RegionOne | http://10.144.133.43:8776/v1/%(tenant_id)s | http://10.144.133.43:8776/v1/%(tenant_id)s | http://10.144.133.43:8776/v1/%(tenant_id)s |

| f296fb9f4f3e40b8baa9ea630bdde5e4 | RegionOne | http://10.144.133.43:5000/v2.0 | http://10.144.133.43:5000/v2.0 | http://10.144.133.43:35357/v2.0 |
+----------------------------------+-----------+--------------------------------------------+--------------------------------------------+--------------------------------------------+

I tried to telnet both dom0 and domU on 8774 but did not get any response and interestingly I get some response from my cloud controller on 8774. I do not know if this is correct.

Any pointers will be of great help. Will be happy to provide any further information.

Thanks.

Question information

Language:
English Edit question
Status:
Solved
For:
OpenStack Compute (nova) Edit question
Assignee:
No assignee Edit question
Solved by:
dipak
Solved:
Last query:
Last reply:
Revision history for this message
dipak (dipak87) said :
#1

The nova-compute endpoint in the keystone needs to be configured to the cloud controller settings and not to the nova-compute running in domU of the xen machine.

Revision history for this message
John Garbutt (johngarbutt) said :
#2

Have you got the logs from the nova-api and keystone service? It should help debug the issue.