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