There may be various reason behind this. Check if all the nova related services are running properly.
When you start any nova services as ‘service nova-api start‘, the command might return green status as “[OK]’. But actually the service might not have been started properly.
$ /etc/init.d/openstack-nova-api start
Starting openstack-nova-api: [ OK ]
$ /etc/init.d/openstack-nova-api status
openstack-nova-api dead but pid file exists
In above case, you should check the corresponding service log under /var/log/nova/api.log to know the exact error message.
In my case, none of the nova service was starting properly and I had to dig all of those service logs.
Check if the firewall on the controller node is blocking the service ports.
Like that you have to check all the services related nova.
Hope you got the idea.