]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commit
Implementation of second phase of provider extension.
authorBob Kukura <rkukura@redhat.com>
Mon, 6 Aug 2012 13:42:20 +0000 (09:42 -0400)
committerBob Kukura <rkukura@redhat.com>
Tue, 14 Aug 2012 05:55:53 +0000 (01:55 -0400)
commitce1638c283f894547fee7ccc83c66a54aa502c7e
treec1bdbb30e5c3b2602222b8b31dd2193ca203c932
parent8e66b33b20e14fbc870a5fe80de082235af06e37
Implementation of second phase of provider extension.

Enhances provider extension to support flat networks and VLANs on
multiple physical networks. Implements blueprint provider-networks.

To create a flat network using the CLI with admin rights:

net-create --tenant_id <tenant-id> <net-name> --provider:network_type flat --provider:physical_network <physical-network>

To create a VLAN network using the CLI with admin rights:

net-create --tenant_id <tenant-id> <net-name> --provider:network_type vlan --provider:physical_network <physical-network> --provider:vlan_id <vlan-id>

The provider extension is supported by the linuxbridge and openvswitch
plugins and their agents [openvswitch phase 2 implementation is
in-progress, and does not yet support flat networks or multiple
interfaces].

Ranges of VLANs available on named physical networks for normal
allocation are specified in the plugin's config file via the
ListOpt syntax:

network_vlan_ranges = <physical_network>:<vlan_min>:<vlan_max>

The mapping of each named physical network to its physical network
interface is specified (per-agent-host) in the agent's config file via
the ListOpt syntax:

physical_interface_mappings = <physical_network>:<physical_interface>

See quantum/plugins/linuxbridge/README for details and examples of
network_vlan_ranges and physical_interface_mappings usage.

Also, bulk operations are enabled for the linuxbridge plugin.

Change-Id: I93402bd5cc6316e9408ea71c3b3989d06898ee30
22 files changed:
etc/quantum.conf
etc/quantum/plugins/linuxbridge/linuxbridge_conf.ini
quantum/api/v2/attributes.py
quantum/common/exceptions.py
quantum/db/db_base_plugin_v2.py
quantum/extensions/providernet.py
quantum/plugins/linuxbridge/README
quantum/plugins/linuxbridge/agent/linuxbridge_quantum_agent.py
quantum/plugins/linuxbridge/common/config.py
quantum/plugins/linuxbridge/common/constants.py
quantum/plugins/linuxbridge/common/exceptions.py [deleted file]
quantum/plugins/linuxbridge/db/l2network_db.py [deleted file]
quantum/plugins/linuxbridge/db/l2network_db_v2.py [new file with mode: 0644]
quantum/plugins/linuxbridge/db/l2network_models_v2.py
quantum/plugins/linuxbridge/lb_quantum_plugin.py
quantum/plugins/linuxbridge/tests/unit/test_defaults.py [new file with mode: 0644]
quantum/plugins/linuxbridge/tests/unit/test_lb_db.py [new file with mode: 0644]
quantum/plugins/linuxbridge/tests/unit/test_rpcapi.py
quantum/plugins/openvswitch/ovs_db_v2.py
quantum/plugins/openvswitch/ovs_quantum_plugin.py
quantum/plugins/openvswitch/tests/unit/test_defaults.py
quantum/tests/etc/quantum.conf.test