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.
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
Vincent Untz [Sun, 23 Feb 2014 16:57:05 +0000 (17:57 +0100)]
Fix get_vif_port_by_id to only return relevant ports
This is returning any port, even if it's not on the switch that we're
looking at. As a side-effect, this means that we can actually manipulate
these ports while we really shouldn't.
The migration path for the NSX plugin was not working correctly,
as two migrations (extra route and network gateways) were
skipped.
Therefore installations were partially relying on automatic
schema generation.
This patch fixes the migration path, as well as an attribute
whose name in the migration and the DB model differed.
Shuangtai Tian [Wed, 26 Feb 2014 11:11:38 +0000 (19:11 +0800)]
Add user-supplied arguments in log_handler
Sync from Oslo, change-id: I91289cc4a60f5dab89bca852e6f52b4b83831e47
When using PublishErrorsHandler, it will missing user-supplied
arguments. For example, do LOG.info("blabla %s", "foo"), the
payload only contains "blabla %s", but we expect it like "blabla foo".
Aaron Rosen [Wed, 12 Feb 2014 22:25:31 +0000 (14:25 -0800)]
NSX: Fix newly created port's status should be DOWN
Previously when creating a port in neutron using the nsx plugin
the port status returned would be ACTIVE even if this was not the
case. Now, DOWN is returned which will be updated by the backend
when the port goes ACTIVE.