Jump to: navigation, search

Difference between revisions of "NeutronDevstack"

Line 15: Line 15:
 
LIBVIRT_FIREWALL_DRIVER=nova.virt.firewall.NoopFirewallDriver
 
LIBVIRT_FIREWALL_DRIVER=nova.virt.firewall.NoopFirewallDriver
 
Q_PLUGIN=openvswitch
 
Q_PLUGIN=openvswitch
 +
Q_AUTH_STRATEGY=noauth
 
</nowiki></pre>
 
</nowiki></pre>
  

Revision as of 21:16, 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, 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.

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
Q_AUTH_STRATEGY=noauth 


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