Commit Graph

397 Commits

Author SHA1 Message Date
Salvatore Orlando
70096ae4e7 Enable polling minimization
In some cases the OVS agent might end up wiring a port for a VM
several seconds after the VM has booted. As a result, there is a
risk that the VM won't receive an IP address from DHCP in time.

This patch changes the default value for agent.minimize_polling to
True. This change should reduce the time needed for configuring
an interface on br-int consistently.

Change-Id: I009f606fd34a132376f1d50f8ccda9d35d064bfa
Related-bug: 1224001
2013-11-20 15:31:49 -06:00
Terry Wilson
14950e492a Add configurable ovsdb monitor respawn interval
If minimize_polling=True and the ovsdb-client process died, the
default respawn interval of 0 would mean that we'd start polling
again. This patch adds the option ovsdb_monitor_respawn_interval and
defaults it to 30 seconds.

Change-Id: I12c1e05ec4d6d2bd4d84024a91116e2ac3974868
Close-Bug: 1243867
2013-11-20 15:16:27 -06:00
Jenkins
a9f0b94612 Merge "Removes unused nvp plugin config param" 2013-11-17 17:01:40 +00:00
Jenkins
df9a518311 Merge "Tune up report and downtime intervals for l2 agent" 2013-11-14 17:53:22 +00:00
armando-migliaccio
291048aba2 Tune up report and downtime intervals for l2 agent
If the neutron server erroneously thinks than the l2 agent is down
it will fail to bind a port, which can lead to VM's spawn errors.
However, the issue is only transient because the agent effectively
is only 'late' in reporting back.

Best solution would be an alpha-count algorithm (so that we can detect
persistent failures more reliably), but for now let's be more tolerant
assuming that the agent is down by waiting at least twice the report
interval plus a tiny teeny bit.

Change-Id: I544135ce1f6b7eaefb34ac44af8f5844d92ddd95
Close-bug: #1244255
2013-11-14 08:16:44 -08:00
armando-migliaccio
53886fc737 Removes unused nvp plugin config param
nvp_cluster_uuid is no longer used; it was missed
during the configuration file tweaks that was done
during Havana.

Change-Id: Id6dd684833c99453cd97d88584be04d99fd21550
Closes-bug: #1251086
2013-11-13 18:22:53 -08:00
Andreas Jaeger
f960072daf Remove database section from plugin.ini
Change https://review.openstack.org/#/c/34515 moved the database
config items to neutron.conf but left some commented out
[database] items. Remove them as well.

Closes-Bug: #1247589
Change-Id: I05913d0c27a683cec30cae31a1978612aa1e1360
2013-11-06 09:17:09 +01:00
Jenkins
c1577c5954 Merge "Creates multiple worker processes for API server" 2013-10-31 01:39:19 +00:00
Sridhar S
b9cb30ade7 Modified configuration group name to lowercase
Most of the OpenStack project makes use of lower case for
configuration group names. But, 'neutron' was having group
names in either cases. Bug states it is fine to have group
name in upper case for [DEFAULT] but needs to be changed
for others. It was noted that [PLUMgridDirector] was having
characters.

Change-Id: I95f2dad6d5ae17f722202f4917b6ef460cd41e15
Closes-Bug: #1176683
2013-10-28 11:39:38 +05:30
Avishay Balderman
3ae0171834 Removing workflows from the Radware driver code
Removing workflows handling from the driver code.
Removing workflow related files
Modifying tests to support new behavior

Change-Id: Icbb6106db07e5b33c37192aa53d088e67bd4a795
Closes-bug: #1239288
2013-10-24 15:14:47 +02:00
Darragh O'Reilly
4a6e77e316 Update send_arp_for_ha default in l3_agent.ini
The default for send_arp_for_ha was 3 and is now 0.
This patch changes the comment in l3_agent.ini to
show the new default.

Change-Id: I77370350ffee6ad7b94aa7db341c062ebc0b7d89
2013-10-21 17:09:28 +00:00
Jenkins
3ef35ae332 Merge "Add the option to minimize ovs l2 polling" 2013-10-15 11:03:27 +00:00
Maru Newby
cb0df591a9 Add the option to minimize ovs l2 polling
This change adds the ability to monitor the local ovsdb for
interface changes so that the l2 agent can avoid unnecessary
polling.  Minimal changes are made to the agent so the risk
of breakage should be low.  Future efforts to make the agent
entirely event-based may be able to use OvsdbMonitor as a
starting point.

By default polling minimization is not done, and can only be
enabled by setting 'minimize_polling = True' in the ovs
section of the l2 agent's config file.

Closes-Bug: #1177973

Change-Id: I26c035b48a74df2148696869c5a9affae5ab3d27
2013-10-14 22:24:15 +00:00
Dane LeBlanc
a178053854 cisco/nexus plugin doesn't create port for router interface
Fixes bug 1234826

This fix adds a "nexus_l3_enable" configuration boolean for the
Cisco Nexus plugin. When this config boolean is set to False (default),
then the Nexus switches are only used for L2 switching/segmentation, and
layer 3 functionality is deferred to the OVS subplugin / network
control node. If this config boolean is set to True, layer 3
functionality, e.g. switch virtual interfaces, are supported on
the Nexus switches. (Note that layer 3 functionality is not supported
on all versions/models Nexus switches.)

Some other things addressed with this fix:
- The l3_port_check keyword argument which is optionally passed to the
  Cisco plugin's delete_port method was not being forwarded on to the
  OVS (sub) plugin. This keyword argument needs to be forwarded to OVS
  e.g. when the delete_port is being done in the context of a
  router interface delete (whereby l3_port_check==False).
- UT test cases are added for new "nexus_l3_enable" config, which
  exercise router interface add/delete.
- The Cisco test_network_plugin.py module is refactored/reorganized
  in order to cleanly add a new router interface test class.
- The test_model_update_port_rollback test case was yielding a false
  positive result (device_owner was not being passed to self.port).

Change-Id: I994b2b82769ea5e10e50dbe3a223d1518e99f714
2013-10-11 20:23:55 -04:00
Jenkins
5dc5854c32 Merge "Enable Quota DB driver by default" 2013-10-08 06:23:08 +00:00
Jenkins
d33ed5f09e Merge "Radware LBaaS driver implementation" 2013-10-07 19:33:30 +00:00
Avishay Balderman
98c1ce4c1f Radware LBaaS driver implementation
Change-Id: I43f666ed6716c16b0ef95bc7ed58c4c422a7fd89
Implemnts: blueprint radware-driver-for-lbaas
2013-10-07 17:24:15 +02:00
Akihiro MOTOKI
de15e0b9c5 Enable Quota DB driver by default
Closes-Bug: #1189671

Quota driver is now loaded in lazy mode, i.e. the driver is loaded
the first time the driver is accessed. This is to make unit tests
work. Some unit tests like extension test cases need to use Config
Quota driver (previous default) but QuotaEngine is initialized
when quota.py is imported. Thus the unit tests had no chance to
specify quota_driver.

Change-Id: I9e20961d5a6322361e3c0284b3c2a7ca86755c70
2013-10-07 08:52:45 +09:00
Bob Kukura
f969d47a95 Change rpc_support_old_agents default to False
Changes the rpc_support_old_agents config variable default value to
False, so that the vlan_id field (redundant with the segmentation_id
field) is no longer included in RPC messages from the linuxbridge and
mlnx plugins to their corresponding L2 agents. This can be set to True
if needed to support L2 agents older than midway through the havana
cycle.

Closes-Bug: 1235323
Change-Id: I919824c5b02e28e3563e64e98bb106bf722327ec
2013-10-06 12:01:38 -04:00
Jenkins
4f35b5f424 Merge "Remove deprecated NVP options" 2013-10-03 16:42:04 +00:00
Jenkins
b94a602528 Merge "Increase number of concurrent_connections to nvp" 2013-10-01 08:13:30 +00:00
ZhiQiang Fan
f157b9c825 Improve ml2_conf.ini
ml2_type_vxlan section is missing, also does option vni_ranges.

Change-Id: Icf9328d82603640279d1c5aa31f41b6ff23c26f0
Fixes-Bug: #1231124
2013-09-30 01:14:03 +08:00
Rich Curran
6925bd7e00 ML2 Cisco Nexus mech driver portbinding support
This commit adds portbinding extension support to
the cisco nexus mechanism driver.

Fixes bug: 1220878

Change-Id: I72003961b46190b82681b471f4f9cb5b11d3d068
2013-09-28 12:54:53 -04:00
armando-migliaccio
201ce41469 Remove deprecated NVP options
In Havana, NVP configuration was simplified;
in the process a few options that existed
in Grizzly or older were deprecated. This
change removes those options from the Icehouse
tree.

Fixes bug #1221840

Change-Id: Id83a339c88ec2477718a350b6ac1678ccba01509
2013-09-27 14:33:08 -07:00
Aaron Rosen
1cc76b5f71 Increase number of concurrent_connections to nvp
This patch increases the number of concurrent connections from 5 to 10
to nvp.

Fixes bug: 1232189

Change-Id: Ia05a7cf8001424e82a3c02e6bd92e2fa1d4a40ee
2013-09-27 12:23:58 -07:00
Jenkins
67667256be Merge "Add an option for always synchronizing status" 2013-09-27 04:00:40 +00:00
Jenkins
bf7a8951d6 Merge "Allow sharing of firewall rules and policies in policy.json" 2013-09-26 21:44:39 +00:00
Salvatore Orlando
13f100ce5d Add an option for always synchronizing status
This patch adds an option for always synchronizing operational status
on a show operation; regardless of the synchronization thread, when
this option is enabled, the resource status is always fetched from
the backend.

The patch also fixes an issue observed when running test_nvp_sync
alone.

Bug #1229149
Bug #1229243

Change-Id: Ifef52ac1c48e32f413d51fc04fd926073335665d
2013-09-26 08:20:30 -07:00
Jenkins
d000a9254f Merge "NVP plugin: Set default max_lp_per_bridged_ls to 5000" 2013-09-21 22:47:56 +00:00
Jenkins
76112fe5fb Merge "Allow non-admin user to list service providers" 2013-09-20 18:50:25 +00:00
Salvatore Orlando
6b7182d8e2 NVP plugin: Set default max_lp_per_bridged_ls to 5000
This patch increases the default value from 64 to 5000

Bug 1227592

Change-Id: I19baa6dc48541ee5238748d21e8c410e4cdb5c00
2013-09-20 05:29:12 -07:00
Jenkins
177bfb030e Merge "Change daemon Pidfile class to not use root_helper" 2013-09-19 21:21:12 +00:00
Carl Baldwin
3d669cbd0e Creates multiple worker processes for API server
This change to the WSGI code uses openstack.common.service to create
multiple worker processes to handle API load.  The main process will
start up a configurable (workers=??) number of child processes which
will all listen on the bind port.  The main process becomes the parent
and manages the children.  The parent is not a worker.

Backwards compatibility is preserved by setting api_workers to 0, the
default.  In this case, no separate worker processes are spawned and
the worker threads run in the main process.

Implement blueprint multi-workers-for-api-server

Change-Id: Iffa76041d0055840ccca852814b0e71f17a950ac
2013-09-19 18:52:13 +00:00
Eugene Nikanorov
3726f0fb48 Allow non-admin user to list service providers
Add get_service_provider rule to policy.json

Change-Id: If4f8103231694fbf79088f7a95a277d68eecce0f
Closes-Bug: #1227697
2013-09-19 18:13:44 +04:00
Mark McClain
fbc02fd569 Dynamically adjust max number of leases
This change dynamically adjusts the maximum number of leases based on
the size of the subnets associated with a network.  The upper bound is
limited by a configurable option to keep the max reasonable and prevent
denial of service.

Closes bug: 1225200

Change-Id: I75c3907bcf45cd991eadf5dd8c8ad7f1eaab3c85
2013-09-17 16:40:23 -04:00
Dan Florea
fef1ced970 Allow sharing of firewall rules and policies in policy.json
Updated policy for firewall_policy and firewall_rule to allow sharing
among tenants. Added a new firewall sharing rule to enable this.

Change-Id: I5d4d9f94fb3abffe4d1b03c46fd5b13a8a4a4f09
Fixes: bug #1217103
2013-09-13 07:26:22 -07:00
Francois Eleouet
7e79e6973e Vxlan / L2population support to Linuxbridge Agent
This patch introduces VXLAN support for Linuxbridge agent alongside
with ml2 plugin support in linubridge mechnism driver.

A new vxlan configuration section is added for vxlan related parameters.

The agent also implements l2population RPC callbacks which allows ml2
plugin using l2population mechnism driver to populate vxlan forwarding
and neighbor tables following portbinding events. It allows agent to
respond locally to ARP requests for remote VMs and avoid dataplane based
learning. This should help limiting the use of multicast or flooding
for broadcast emulation in vxlan networks.

These changes should anyway have a limited risk, as agent behaviour
shouldn't be affected, except when vxlan is enabled alongside ml2 plugin.

Implements: blueprint l2-population

Change-Id: I99a961c53f9e451409f1affb079042936d8ae5c6
2013-09-12 02:51:37 +02:00
Francois Eleouet
b6133c35dd OVS agent implementation of l2-population
This patchset implements l2-population RPC callbacks in OVS agents,
it enables plugin to populate forwarding table following portbindings
events.

For now, it doesn't include ARP responder implementation which is
deferred to a future patchset (As this feature isn't yet supported by
OVS, it will require the use of an external responder such as ebtables)

It anyway brings some improvements in tunnelling management, as agent
will tear-down unecessary tunnels, and flood packets on a per-network
basis rather than to all other agents.

These changes should anyway have a limited risk, as tunnel management
won't be affected as long as l2_population option is not set. This
option must be used in conjonction with ml2 plugin using l2population
mechanism driver.

Implements: blueprint l2-population

Change-Id: I5185eefedb0ff392bc8b99d16f810813e26ff58d
2013-09-12 01:13:32 +02:00
Justin Hammond
e541ca285d Adds help text to brocade configuration options
Help text was added to the configuration options defined in the brocade neutron
plugin. This help text should assist users of the brocade plugin. The OSTYPE
configuration option was not used in the plugin and was labeled as such so a
user of the plugin would not worry about the meaning of it.

The example etc file /etc/neutron/plugins/brocade/brocade.ini has been updated
to share the same help values where applicable.

Fixes-Bug: #1157511

Change-Id: Ie068396e77902037a7a0b5334d4dfb0dcdd3575e
2013-09-10 14:58:52 -07:00
Brian Haley
89e38929d2 Change daemon Pidfile class to not use root_helper
Some users of the Pidfile class don't specify root_helper,
which then defaults to 'sudo', which will generate an error.
Remove root_helper altogether since we actually don't need
root priveleges to read /proc/$pid/cmdline.

Changed code to use open.readline() instead of a shell, and
tweaked tests accordingly.

Also cleaned-up the rootwrap filters that allow it as they
are not used anymore.

Fixes bug 1218142

Change-Id: I6691feb1c9f7bfa261a7ec464fd8f3f92168c302
2013-09-10 13:04:14 -04:00
Abhishek Raut
dc48ac1a9c Allow default network and policy profiles
Allow for default network/policy profile to be used if
no network/policy profile is specified during network/port creation
in the Cisco N1KV plugin.

Change-Id: I6120abb5abb9a869eb7310453cf27dd8f72bfd1d
Closes-Bug: #1218588
2013-09-05 12:36:10 -07:00
Jenkins
81d2352724 Merge "Implement MidoNet Neutron plugin for Havana" 2013-09-05 12:45:57 +00:00
Jenkins
384d4d98f7 Merge "Iptables metering driver" 2013-09-05 12:07:09 +00:00
Jenkins
28f74220d3 Merge "VCNS driver implementation" 2013-09-05 09:58:01 +00:00
Kaiwei Fan
f96cf93e70 VCNS driver implementation
Implement API/driver interface for configuring vShield Edge Appliance.

Currently implemented functions:
    - Deploy an Edge
    - Destroy an Edge
    - Configuring interfaces
    - Configuring SNAT/DNAT rules
    - Configuring default gateway and static routes
    - Query Edge status
    - Task-based asynchronous model
    - Allow old routes/nat config to be skipped if new updates are coming

Implements: blueprint vcns-driver
Change-Id: I881bde907f4c90de4c919d008b76b8c2a2d0e1fd
2013-09-04 17:16:41 -07:00
Rich Curran
b6d0c40f20 ML2 Mechanism Driver for Cisco Nexus
Port of the quantum/plugin/cisco/nexus plugin to run under the Modular
Layer 2 (ML2) infrastructure as defined in
https://blueprints.launchpad.net/quantum/+spec/ml2-mechanism-drivers

Implements blueprint ml2-md-cisco-nexus

Change-Id: Ifdd03bec554a08266de859387f1901858a3be4a1
2013-09-04 14:10:33 -04:00
Jenkins
052d74531a Merge "Reference driver implementation (IPsec) for VPNaaS" 2013-09-04 17:33:31 +00:00
Jenkins
48d2bae56d Merge "Embrane Neutron Plugin" 2013-09-04 17:33:22 +00:00
Jenkins
42cfd92556 Merge "OpenFlow distributed router support in NEC plugin" 2013-09-04 17:33:11 +00:00
Jenkins
18386c6fcb Merge "Add Neutron l3 metering agent" 2013-09-04 15:47:55 +00:00