Jump to: navigation, search

Difference between revisions of "NeutronDevstack"

Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
 
 
== Basic Setup ==
 
== Basic Setup ==
  
 
'''Note:''' Since we are removing support for Quantum v1 and v1.1 API, these instructions are updated to work with Quantum v2 here (http://wiki.openstack.org/RunningQuantumV2Api), even though v2 work is not complete until the end of F-3.
 
'''Note:''' Since we are removing support for Quantum v1 and v1.1 API, these instructions are updated to work with Quantum v2 here (http://wiki.openstack.org/RunningQuantumV2Api), even though v2 work is not complete until the end of F-3.
  
In order to use Quantum with devstack (http://devstack.org) a single node setup, you'll need to add "quantum", "q-svc", "q-agt", and "q-dhcp" to ENABLED_SERVICES in your localrc.  You should also set your firewall driver to be the [[NoopFirewallDriver]].  See this page for more details on localrc settings: http://devstack.org/stack.sh.html.
+
In order to use Quantum with devstack (http://devstack.org) a single node setup, you'll need the following settings in your localrc (see [[ this page | http://devstack.org/stack.sh.html ]] for more details on localrc).
  
 
For example:
 
For example:

Revision as of 22:51, 7 August 2012

Basic Setup

Note: Since we are removing support for Quantum v1 and v1.1 API, these instructions are updated to work with Quantum v2 here (http://wiki.openstack.org/RunningQuantumV2Api), even though v2 work is not complete until the end of F-3.

In order to use Quantum with devstack (http://devstack.org) a single node setup, you'll need the following settings in your localrc (see http://devstack.org/stack.sh.html for more details on localrc).

For example:

disable_service n-net
enable_service q-svc
enable_service q-agt
enable_service q-dhcp
LIBVIRT_FIREWALL_DRIVER=nova.virt.firewall.NoopFirewallDriver
Q_PLUGIN=openvswitch
NOVA_USE_QUANTUM_API=v2


Then run stack.sh as normal.

Note: RunningQuantumV2Api also has similar information. It includes more transient information for F-3 milestone. If you have trouble please check it. These two pages need to be integrated.

Multi-Node Setup

A more interesting setup involves running multiple compute nodes, with Quantum networks connecting VMs on different compute nodes.

You should run at least one "controller node", which should have a stackrc that includes at least:


ENABLED_SERVICES="g-api,g-reg,key,n-api,n-cpu,n-net,n-sch,n-vnc,horizon,mysql,rabbit,openstackx,q-svc,quantum,q-agt,q-dhcp"
Q_PLUGIN=openvswitch


You likely want to change your localrc to run a scheduler that will balance VMs across hosts:


SCHEDULER=nova.scheduler.simple.SimpleScheduler


You can then run many compute nodes, each of which should have a stackrc which includes:


ENABLED_SERVICES="quantum,q-agt,n-cpu,g-api,rabbit"
Q_PLUGIN=openvswitch


Note: the need to include 'g-api' and 'rabbit' here seems to be a bug. Without it, nova-compute dies because it can't import the glance.common library. This process does not actually need to be running on this host, we just need a way to make sure the glance.common library is installed. If 'rabbit' is not specified, nova-compute also will try to connect to rabbit on localhost, not the "controller host". See the following link for info on both issues: https://answers.launchpad.net/devstack/+question/197749

Each compute node also needs to have a modified localrc to point to the "controller" for services that are only run once per deployment:


SERVICE_HOST=[IP of controller node]
MYSQL_HOST=$SERVICE_HOST
RABBIT_HOST=$SERVICE_HOST