Ann Kamyshnikova [Thu, 27 Feb 2014 12:27:40 +0000 (16:27 +0400)]
Different class names for VPNaaS migrations
In migrations 52ff27f7567a_support_for_vpnaas.py and
338d7508968c_vpnaas_peer_address_.py different class names are set:
neutron.services.vpn.plugin.VPNDriverPlugin and ne
utron.services.vpn.plugin.VPNPlugin.
Aaron Rosen [Fri, 28 Feb 2014 06:26:30 +0000 (22:26 -0800)]
ML2: database needs to be initalized after drivers loaded
Previously, if you started neutron-server with an empty database some
of the tables that drivers use are not automatically created. That said,
one should probably run neutron-db-manage manually to create the tables
and not rely on neutron to do this. This regression was cause in 326b85.
Change-Id: I2c578733de0213945b31fba86a3b0ea45c02295a
Closes-bug: #1285993 Co-Authored-By: Itsuro Oda <oda@valinux.co.jp>
Ivar Lazzaro [Mon, 3 Mar 2014 19:29:17 +0000 (11:29 -0800)]
Embrane Plugin fails alembic migrations
Alembic migration from revision f44ab9871cd6 to 2eeaf963a447 is failing on
Embrane Plugin because the floatingips table doesn't exist.
The problem happens because the plugin is actually inheriting from OVS's Plugin,
and therefore it doesn't take part of the correct migration path at installation time.
As far as I have investigated, adding the support on ext_gw_mode and l3_support is enough to solve the problem.
This commit adds support for currently provided Mellanox Plugin
embedded switch functionality as part of the VPI (Ethernet/InfiniBand)
HCA as an ML2 MechanismDriver.
MechanismDriver adds support for VNIC_DIRECT and VNIC_MACVTAP vnic types.
MechanismDriver provides configurable default vif_type for neutron port created
with default VNIC_NORMAL vnic type till nova api support for vnic_type is available.
Remove nvplib and move utility methods into nsxlib
This patch completes the process of moving code from nvplib
to nsxlib. Utility methods such as do_request and get_all_query_pages
are transferred into nsxlib, so that nvplib can be safely removed.
berlin [Tue, 5 Nov 2013 02:31:00 +0000 (10:31 +0800)]
Support advanced NVP IPsec VPN Service
The patch adds NVP advanced IPsec VPN Service support for NVP with VCNS:
* NVP IPsec VPN is an advanced Service depending on NVP
advanced service router
* NVP IPsec VPN Service will finally call VCNS IPsec VPN bulk
reconfiguration to map to VPN DB logic
Shashank Hegde [Fri, 14 Feb 2014 02:20:45 +0000 (18:20 -0800)]
Improves Arista's ML2 driver's sync performance
In large scale deployments a full sync between Neutron and EOS can take minutes.
In order to cut that time, this patch batches multimle EOS CLI commands and
sends them to EOS instead of sending each command separately. For example, if a
tenant has 10 networks, instead of making 10 RPC calls to EOS to create those 10
networks, this patch builds a commands to create those 10 networks and makes
just one RPC call to EOS which cuts down sync times significantly. All the _bulk()
methods are added to batch such requests.
Another optimization is to timestamp when the Region data was modified (This
includes any tenant creation, their networks, VMs and ports). The sync gets the
timestamp from EOS and only if the timestamps do not match, the driver performs
a full sync.
Akihiro Motoki [Fri, 21 Feb 2014 08:42:46 +0000 (17:42 +0900)]
nec plugin: Avoid long transaction in delete_ports
db_plugin.delete_ports() can lead to long transaction
if plugin.deleete_port talks with external system.
This commit removes a transaction in delete_ports and
allows NEC plugin to use more granular db transactions
in delete_port. It greatly helps db race conditions and
timeouts in delete_port operations.
To avoid to impact other plugins/drivers by changing
db_plugin.delete_ports directly and to land this patch soon,
this commit overrides delete_ports() in NEC plugin.
Further disssion on transaction in delete_ports will be
discussed under bug 1282925.
Akihiro Motoki [Wed, 12 Feb 2014 17:51:45 +0000 (02:51 +0900)]
Avoid using "raise" to reraise with modified exception
The code changes the exception and reraises it.
This commit changes the code to use the same way as
excutils.save_and_reraise_exception does to ensure
the exception context.
This is the last patch of reraise clean up series.
fumihiko kakuma [Wed, 29 Jan 2014 01:54:12 +0000 (10:54 +0900)]
Implement OpenFlow Agent mechanism driver
This adds ML2 mechanism driver controlling OpenFlow switches
and an agent using Ryu as OpenFlow Python library.
- An agent acts as an OpenFlow controller on each compute nodes.
- OpenFlow 1.3 (vendor agnostic unlike OVS extensions).
Add a new 'status' attribute to the floating IP resource.
Extend the plugin RPC interface for allowing status updates from agents,
and implement support for operational status in the L3 agent.
The default behaviour for all the plugins different from
neutron.services.l3_router.l3_router_plugin is to set the status of
a floating IP to ACTIVE upon creation.
Kevin Benton [Tue, 11 Feb 2014 03:36:22 +0000 (19:36 -0800)]
BigSwitch: Add agent to support neutron sec groups
Adds a BigSwitch Agent responsible for supporting
neutron security groups on the compute node. Adds
the mixin classes to the plugin to support the
security group calls.
Jon Grimm [Wed, 27 Nov 2013 19:10:33 +0000 (13:10 -0600)]
Openvswitch update_port should return updated port info
Found when I enabled test_extension_allowedaddress_pairs, where
test_create_port_removed_allowed_address_pairs would fail due to the
returned port still containing the original addresspair. The cause is
ovs simply not updating the port info being returned.
This patch additionally enables test_extension_allowedaddress_pairs for
openvswitch.
Moved checks and updating into method similar to what we do for
extradhcpopts and security_groups.
Additionally, this required fixing is_address_pairs_attribute_updated() as
it was passing (non-hashable) dicts to utils.compare_elements.
Xuhan Peng [Fri, 14 Feb 2014 09:20:01 +0000 (04:20 -0500)]
Change firewall to DOWN when admin state down
Currently firewall remains in status "ACTIVE" after admin state
is changed to DOWN.
This fix sets firewall status to "DOWN" if admin state is updated
from "UP" to "DOWN". "DOWN" status is used by other network resources
so use "DOWN" to keep consistent.
Update License Headers to replace Nicira with VMware
In the process __init__.py involved have been emptied;
vim modelines and author lines have been dropped from
the license headers affected by the change as well.
This patch introduces DB mappings between neutron security
groups and NSX security profiles, thus not requiring anymore
the Neutron router ID to be equal to the NSX one.
This change is needed for enabling asynchronous operations in
the NSX plugin.
Related to blueprint nvp-async-backend-communication