Multi-Node Compute Installation
Hi,
I was in the process of setting up a production Openstack Cluster. I have some very major doubts in my mind due to which I am not able to proceed any further. Please clear some of the
1) I have a cloud controller noode which runs all nova services. But on this node I don't want nova-compute to run, though I have installed it as I was following a tutorial.
2) This node also runs the MySQL as the database and Keystone as the Identity server, RabbitMQ, nova-api etc and the openstack dashboard
3) I have two Xen Cloud Platform Hosts. I have installed a domU guest on each of them which runs the nova-compute only.
4) In addition one of these domUs also runs the glance imaging service with swift as the backend object store.
5) I was successfully able to integrate glance and keystone with swift and was able to view images in the openstack dashboard.
Now the questions start
1) If I run nova-network on all compute nodes and not on the cloud-controller node then would this setup work? To rephrase, is it necessary or suggested to run the netwok services from the compute node, considering i use FlatNetworkManager. I mean one network manager on every compute node and none on the cloud-controller if it does not run the nova-compute
2) If the compute node runs only nova-compute, then how does it talk to the rest of the cloud and conversely how does the cloud controller come to know of the compute nodes in its cluster.
3) Since I am using keystone, do I need to create projects exclusively using euca2ools or keystone profiles will work
4) The nova-compute service also refuses to start on the domU compute node.
I am attaching the configuration files here. Kindly suggest the changes to meet my requirements
(I) The cloud-controller node ----- All services except nova-compute
-------
# DATABASE
--sql_connectio
# LOGS/STATE
--verbose
--dhcpbridge_
--dhcpbridge=
--logdir=
--state_
--lock_
# RABBITMQ
--rabbit_
--rabbit_port=5672
--rabbit_
# SCHEDULER
--scheduler_
# NETWORK
--network_
--fixed_
--flat_
--public_
--flat_
--flat_
# GLANCE
--image_
--glance_
# COMPUTE
--compute_
--libvirt_type=qemu
# VNCPROXY
#--vncproxy_url=http://
#--vncproxy_
# MISC
--use_deprecate
--allow_
--enable_
# KEYSTONE
--keystone_ec2_url=http://
-------
#######
# EC2 #
#######
[composite:ec2]
use = egg:Paste#urlmap
/: ec2versions
/services/Cloud: ec2cloud
/services/Admin: ec2admin
/latest: ec2metadata
/2007-01-19: ec2metadata
/2007-03-01: ec2metadata
/2007-08-29: ec2metadata
/2007-10-10: ec2metadata
/2007-12-15: ec2metadata
/2008-02-01: ec2metadata
/2008-09-01: ec2metadata
/2009-04-04: ec2metadata
/1.0: ec2metadata
[pipeline:ec2cloud]
#pipeline = logrequest ec2noauth cloudrequest authorizer ec2executor
#pipeline = logrequest authenticate cloudrequest authorizer ec2executor
#pipeline = logrequest ec2lockout authenticate cloudrequest authorizer ec2executor
pipeline = logrequest totoken authtoken keystonecontext cloudrequest authorizer ec2executor
[pipeline:ec2admin]
#pipeline = logrequest ec2noauth adminrequest authorizer ec2executor
#pipeline = logrequest authenticate adminrequest authorizer ec2executor
pipeline = logrequest totoken authtoken keystonecontext adminrequest authorizer ec2executor
[pipeline:
pipeline = logrequest ec2md
[pipeline:
pipeline = logrequest ec2ver
[filter:logrequest]
paste.filter_
[filter:ec2lockout]
paste.filter_
[filter:
paste.filter_
[filter:
controller = nova.api.
paste.filter_
[filter:
controller = nova.api.
paste.filter_
[filter:authorizer]
paste.filter_
[app:ec2executor]
paste.app_factory = nova.api.
[app:ec2ver]
paste.app_factory = nova.api.
[app:ec2md]
paste.app_factory = nova.api.
#############
# Openstack #
#############
[composite:osapi]
use = egg:Paste#urlmap
/: osversions
/v1.0: openstackapi10
/v1.1: openstackapi11
[pipeline:
pipeline = faultwrap auth ratelimit osapiapp10
[pipeline:
pipeline = faultwrap auth ratelimit extensions osapiapp11
[filter:faultwrap]
paste.filter_
[filter:auth]
paste.filter_
[filter:ratelimit]
paste.filter_
[filter:extensions]
paste.filter_
[app:osapiapp10]
paste.app_factory = nova.api.
[app:osapiapp11]
paste.app_factory = nova.api.
[pipeline:
pipeline = faultwrap osversionapp
[app:osversionapp]
paste.app_factory = nova.api.
##########
# Shared #
##########
[filter:
paste.filter_
[filter:authtoken]
paste.filter_
service_protocol = http
service_host = 10.1.27.112
service_port = 5000
auth_host = 10.1.27.112
auth_port = 35357
auth_protocol = http
auth_uri = http://
admin_token = 111213141516171
(II) The cloud-compute node ------- Runs XenAPI
-------
--verbose
#DATABASE
--sql_connectio
--network_
--image_
--glance_
--flat_
--fixed_
--public-
--flat_
--cc_host=
--connection_
--xenapi_
--xenapi_
--xenapi_
--reboot_
--rescue_
--resize_
--allow_admin_api
--enabled_
--allow_
--xenapi_
--firewall_
# RABBITMQ
--rabbit_
--rabbit_port=5672
--rabbit_
# KEYSTONE
--keystone_ec2_url=http://
So please comment whether this is correct, though I am sure I am going wrong somewhere on the compute-node configuration and please suggest changes.
Thanks
Shounak
Question information
- Language:
- English Edit question
- Status:
- Answered
- Assignee:
- No assignee Edit question
- Last query:
- Last reply:
Can you help with this problem?
Provide an answer of your own, or ask Shounak Acharya for more information if necessary.