On May 28, 2013, at 8:38 PM, Markus Barth <launchpad.net@xxxxxxxxx> wrote:
Hello everyone,
Nova-cells filter has been merged now, so I'd like to make use of them
and set up an installation for a proof of concept.
My goal is to create new filters and then spawn instances in a demo.
Awesome. I'd be happy to assist you here with your current (and future) questions.
Setup:
- Global: Horizon, Keystone, Glance
- API cell: nova-api, nova-conductor, nova-cells, nova-network (flat),
mysql, rabbitmq
- child cells: nova-cells, nova-conductor, nova-cert, nova-scheduler,
nova-compute-qemu; cinder-*, mysql, rabbitmq
There's a number of limitations with cells right now, and the above won't *quite* work… but close. The only issue that I see above is with cinder and nova-network. Further info below.
1. Is the above all services I need to spawn instances from Horizon
without errors?
Generally, yes.. those are the correct services in the correct cells… *except* nova-network *might* work, but it would have to be in each child cell and you'd need different IP blocks configured in each nova-network in order to work. They can all be the same layer 2 network, however. The limitation is because compute needs to talk to nova-network via RPC in order to assign IP addresses… and RPC communication between nova-compute and other services is intra-cell only. And if you tried to configure the same /24 in 2 different child cells, since they are separate DBs, you'll get the same IPs handed out in multiple child cells. More below under #3.
2. Do I need cinder-* (or nova-volume)? Is it really optional now?
No, you do not need them if you use local storage for your VMs. In fact, cinder does not currently work with cells. I have a patch for this that I need to clean up and submit.
3. Do I need nova-network (or quantum-*)? I know quantum-* does not have to run when spawning instances, but I guess I need it to create a
network for a tenant in the first place!?
Quantum is a better choice vs nova-network with or without cells...as nova-network will be deprecated some day (AFAIK). If you choose Quantum, you can set this up as a global service to use with cells as long as all of your child cells are on the same layer 2 network. IP address assignments would be managed globally, etc. If you choose quantum and set it up globally, the API (nova-api) extensions for networking should work. In the future, we'll need to find a good way to allow Quantum to work with a config such that different cells can be on different layer 2 networks.