17504 Commits

Author SHA1 Message Date
Daniel Alvarez
3b22541a2a Switch ns-metadata-proxy to haproxy
Due to the high memory footprint of current Python ns-metadata-proxy,
it has to be replaced with a lighter process to avoid OOM conditions in
large environments.

This patch spawns haproxy through a process monitor using a pidfile.
This allows tracking the process and respawn it if necessary as it was
done before. Also, it implements an upgrade path which consists of
detecting any running Python instance of ns-metadata-proxy and
replacing them by haproxy. Therefore, upgrades will take place by
simply restarting neutron-l3-agent and neutron-dhcp-agent.

According to /proc/<pid>/smaps, memory footprint goes down from ~50MB
to ~1.5MB.

Also, haproxy is added to bindep in order to ensure that it's installed.

UpgradeImpact

Depends-On: I36a5531cacc21c0d4bb7f20d4bec6da65d04c262
Depends-On: Ia37368a7ff38ea48c683a7bad76f87697e194b04

Closes-Bug: #1524916
Change-Id: I5a75cc582dca48defafb440207d10e2f7b4f218b
2017-03-08 15:20:50 +00:00
da52700
67da6a3122 Fix typo in .pylintrc file
Change-Id: I00be2feff24a56e82b2c9f3639f5cb33178dd5b3
2017-02-09 01:07:07 +00:00
Jenkins
ff2c051429 Merge "Deprecate get_locked_port_and_binding" 2017-02-08 09:51:24 +00:00
Jenkins
0d53546294 Merge "Skip reading config files from neutron.conf.d for the namespace proxy" 2017-02-08 07:25:42 +00:00
Jenkins
a076e13b43 Merge "Fix typo in test_l2_lb_agent.py" 2017-02-08 06:52:02 +00:00
Jenkins
72ed1f0dd9 Merge "Fix duplicated sg rules check for remote_ip_prefix" 2017-02-08 06:16:25 +00:00
Jenkins
42747c03b4 Merge "Remove python 3.4 support" 2017-02-08 05:09:55 +00:00
Jenkins
ef50cf9c2e Merge "Fix error in openvswitch firewall doc" 2017-02-07 17:50:06 +00:00
Jenkins
2c50de512b Merge "Add DBError to _is_nested_instance" 2017-02-07 12:26:17 +00:00
jufeng
0df39b5817 Fix error in openvswitch firewall doc
Change-Id: I662c8959bd8998c9c74ee46413494f92a508ca4f
2017-02-07 17:29:33 +08:00
Jenkins
31e5176a36 Merge "Switch to 'subquery' for 1-M relationships" 2017-02-07 07:10:05 +00:00
Jenkins
3af0fb98a3 Merge "Typo fix: underlaying => underlying" 2017-02-07 06:04:54 +00:00
Jenkins
c6705b42e2 Merge "Use only_contrib option for nova_client calls" 2017-02-07 06:04:39 +00:00
Jenkins
324e6156f2 Merge "Open Pike DB migration branch" 2017-02-07 05:18:00 +00:00
Jenkins
e30becd9b3 Merge "Tag the alembic migration revisions for Ocata" 2017-02-07 05:16:21 +00:00
yujie
785656744a Fix duplicated sg rules check for remote_ip_prefix
Security group rule setting remote_ip_prefix 0.0.0.0/0 for ipv4 or
::/0 for ipv6 plays the same role as the sg rules without setting
remote_ip_prefix. We could treat them as duplicate.

Change-Id: Ic9213e77d3b03aded7fc34d486066c8af4a3b2a1
Closes-Bug: #1534113
2017-02-07 04:46:37 +00:00
Jenkins
e6ee6ad8ee Merge "Improve tunnel_sync" 2017-02-07 04:05:19 +00:00
Anh Tran
de8f5381ca Typo fix: underlaying => underlying
Change-Id: I587d55b27641cade16ba8e41e1bafde775444268
2017-02-07 10:52:39 +07:00
Jenkins
866b184d93 Merge "DVR: Add static routes to FIP namespace" 2017-02-07 01:57:32 +00:00
Jenkins
4be9800e4b Merge "tempest: Pin Ubuntu image to one version" 2017-02-07 00:11:24 +00:00
Jenkins
ae3eea1664 Merge "Simplify notify transaction tests" 2017-02-06 20:53:16 +00:00
Armando Migliaccio
2901c7439d Open Pike DB migration branch
Change-Id: I654f2ee50466f466cf543f8b2e0caa18b918b4ea
2017-02-06 20:31:22 +00:00
Armando Migliaccio
28c93a4476 Tag the alembic migration revisions for Ocata
Change-Id: Ia7bfa3accb5dbe5a53f4d0da393050bd1edc126b
2017-02-06 20:31:11 +00:00
Kevin Benton
ffa7695038 Deprecate get_locked_port_and_binding
This deprecates get_locked_port_and_binding and removes
its usage from ML2.

This function was misleading because it uses with_lockmode('update')
which does not actually block concurrent uses in galera multi-writer
deployments. A lock violation in multi-writer will manifest as a
deadlock at that end.

The revision service plugin already provides us with protection from
concurrent updates within a transaction via a compare and swap on the
revision number that will manifest as a staledataerror in races. This
error can then be retried by the retry decorator in the same way a
deadlock on multi-writer would.

This also will help us avoid trying to carry this db locking into
oslo versioned objects.

Partially-Implements: blueprint adopt-oslo-versioned-objects-for-db
Change-Id: Id9f14db607cc5c6ca02293cb7e87bc1e68301808
2017-02-06 19:49:17 +00:00
Kevin Benton
eb203582d4 Simplify notify transaction tests
With the callback system these tests can be simplified greatly.
Their heavy use of mocking has made them difficult to work with
and questionable in value.

These replacement tests are much shorter and verify the expected
transaction semantics without any mocking.

TrivialFix
Change-Id: If9612897cbde8fbe8aa8a19fc946b57e85290ce7
2017-02-06 03:52:43 -08:00
Jenkins
f8e942c5bd Merge "Terminate macvtap agent when physical_interface_mapping config not present" 2017-02-06 11:17:03 +00:00
Kevin Benton
3ffe006743 Switch to 'subquery' for 1-M relationships
This switches to the use of subqueries for 1-m relationships
which will result in a higher constant query factor but will
eliminate the potential for cross-product explosions.

Closes-Bug: #1649317
Change-Id: I6952c48236153a8e2f2f155375b70573ddc2cf0f
2017-02-06 09:01:31 +00:00
Jenkins
df7de345fc Merge "Enhance tag mechanism" 2017-02-06 08:56:38 +00:00
Jenkins
4bc5ab4f00 Merge "Use same session object for ml2 dict extend functions" 2017-02-06 08:40:18 +00:00
Jenkins
9fe45bda36 Merge "Refactor L3 scheduler (unify code paths)" 2017-02-06 03:37:09 +00:00
Kevin Benton
0df9087b37 Add DBError to _is_nested_instance
Add support for oslo.db's DBError to is_nested_instance
so we can check for IntegrityErrors in DBErrors easily
that come back from oslo.db.

This will enable the patch that depends on this to detect
port creation/network delete races very easily and retry
them.

Change-Id: I617f2549caced6547d478caba968710ad8f913b3
2017-02-05 17:42:08 -08:00
Jenkins
40b67c277b Merge "Ensure that subnet update does not creat RPC client" 2017-02-05 11:53:43 +00:00
Hirofumi Ichihara
b56f008f3a Enhance tag mechanism
This patch enhances the tag mechanism for subnet, port, subnetpool,
router resources. The tag-ext as new extension is added so that
tag supports their resources.

APIImpact: Adds tag support to subnet, port, subnetpool, router
DocImpact: allow users to set tags on some resources

Change-Id: I3ab8c2f47f283bee7219f39f20b07361b8e0c5f1
Closes-Bug: #1661608
2017-02-04 11:07:04 +09:00
c0dfb3018a Update reno for stable/ocata
Change-Id: I863d8ded02f1ce3821a0944708caa38964d5e97c
2017-02-04 01:04:32 +00:00
Jenkins
10420f68be Merge "Use assertGreater(len(x), y) instead of assertTrue(len(x) > y)" 2017-02-04 00:12:57 +00:00
Jenkins
cdeb93b0b3 Merge "Multiple tweaks for Ocata release notes" 2017-02-03 23:25:34 +00:00
Jenkins
eb01cd2f6d Merge "Add IPv6 Prefix Delegation support for DVR" 2017-02-03 23:22:24 +00:00
Kevin Benton
dde91631f6 Use same session object for ml2 dict extend functions
This adjusts the ML2 dict extend functions to pass the
same session to the drivers that was used to generate
the sqlalchemy object that will be passed to them. This
will prevent reloading objects in a separate session that
can result in a performance hit or reads to an entirely
different server than the one that the object was generated
from.

Partially-Implements blueprint: enginefacade-switch
Change-Id: Id2dbb13e8aa5fcb86fab8e815033e57e6f0e98e8
2017-02-03 15:05:29 -08:00
Dirk Mueller
751c62a601 Skip reading config files from neutron.conf.d for the namespace proxy
The namespace proxy should only be handling config options passed in
via commandline. To achieve that it overwrites default config file
detection by explicitely passing in an empty list, however it did
not overwrite default config dir detection.

Starting with oslo.config 3.20.0, a default config_dir setting reads
files from $service.conf.d.

As Newton shipped with oslo.config 3.17, which did not expose this new
feature, this is a fix for Ocata only and does not affect Upgrade.

Change-Id: Id2dffe6f53afbfd48128d91c5d807be8785534eb
Closes-Bug: #1661106
2017-02-04 00:01:47 +01:00
Jenkins
6ace0d42d3 Merge "Add Loki service plugin for optional DB havoc" 2017-02-03 21:08:23 +00:00
Jenkins
6b69fee6d3 Merge "Remove --omit argument in run_tests.sh" 2017-02-03 21:08:08 +00:00
Jenkins
f760bd792f Merge "configure_for_func_testing.sh: Remove neutron-legacy inclusion" 2017-02-03 21:02:24 +00:00
Jenkins
b90ec94dc3 Merge "Add support for Keepalived VRRP health check" 2017-02-03 18:08:39 +00:00
Jenkins
265cec7b0f Merge "Add bulk pull OVO interface" 2017-02-03 18:00:55 +00:00
Kevin Benton
1e1e7a842f Add Loki service plugin for optional DB havoc
This adds a service plugin to introduce random delays
and deadlocks to DB operations to make it easier for
us to see that retry decorators are correctly applied
and race conditions are handled.

Change-Id: I8e283c1b53165faee548d26b3560a2c883dfb977
2017-02-03 05:12:33 -08:00
Jenkins
7df76e162a Merge "Fix WaitTimeout string representations" 2017-02-03 12:39:56 +00:00
Jenkins
f39a212230 Merge "Include port_security check in fullstack tests" 2017-02-03 12:34:36 +00:00
Jenkins
d142f25689 Merge "Update in-tree code to use new neighbour functions" 2017-02-03 11:09:06 +00:00
Jenkins
5735ea06b3 Merge "Remove duplicated and unused code in iptables_firewall" 2017-02-03 11:07:22 +00:00
Jenkins
e2550837bb Merge "TrivialFix: Modify the spelling mistake" 2017-02-03 09:59:05 +00:00