169 Commits

Author SHA1 Message Date
Michal Nasiadka
07815a21da neutron: Add neutron-ovn-agent support
Depends-On: https://review.opendev.org/c/openstack/neutron/+/878535
Change-Id: I05d8b29b59a7de76da488f68775547a8f0f11d0f
2023-05-19 10:20:16 +00:00
Bartosz Bezak
95895d5b06 Default neutron_tls_proxy and glance_tls_proxy to haproxy_tag
neutron_tls_proxy and glance_tls_proxy are using haproxy container
image. Pin them to haproxy_tag directly.

Change-Id: I73142db48ebe6641520d21b560f16de892e07c34
2023-01-30 16:45:56 +00:00
Zuul
99d1e3c710 Merge "Adding optional delay between l3 agent restarts" 2023-01-25 14:08:06 +00:00
Alex-Welsh
391aa4677f Adding optional delay between l3 agent restarts
This change serialises the neutron l3 agent restart process and adds a
user configurable delay between restarts. This can prevent connectivity
loss due to all agents being restarted at the same time.

Routers increase the recovery time, making this issue more prevalent.

Change-Id: I3be0ebfa12965e6ae32d1b5f13f8fd23c3f52b8c
2023-01-23 09:14:59 +00:00
Matt Crees
6c2aace8d6 Integrate oslo-config-validator
Regularly, we experience issues in Kolla Ansible deployments because we
use wrong options in OpenStack configuration files. This is because
OpenStack services ignore unknown options. We also need to keep on top
of deprecated options that may be removed in the future. Integrating
oslo-config-validator into Kolla Ansible will greatly help.

Adds a shared role to run oslo-config-validator on each service. Takes
into account that services have multiple containers, and these may also
use multiple config files. Service roles are extended to use this shared
role. Executed with the new command ``kolla-ansible validate-config``.

Change-Id: Ic10b410fc115646d96d2ce39d9618e7c46cb3fbc
2022-12-21 17:19:09 +00:00
Radosław Piliszek
6a7e6a25bc Remove deprecated sysctl knobs
Kolla Ansible stopped setting them as they turned out to be
unnecessary for its operations, yet may have conflicted with
security policies of the hosts. [1] [2]

[1] https://launchpad.net/bugs/1837551
[2] https://launchpad.net/bugs/1945453

Change-Id: Ie8ccd3ab6f22a6f548b1da8d3acd334068dc48f5
2022-09-26 11:54:08 +00:00
Michal Nasiadka
1aac65de0c Fix issues introduced by ansible-lint 6.6.0
mainly jinja spacing and jinja[invalid] related

Change-Id: I6f52f2b0c1ef76de626657d79486d31e0f47f384
2022-09-21 14:34:54 +00:00
Zuul
89c3a92066 Merge "Add api_workers for each service to defaults" 2022-08-22 15:30:33 +00:00
Michal Arbet
baad47ac61 Edit services roles to support database sharding
Depends-On: https://review.opendev.org/c/openstack/kolla/+/769385
Depends-On: https://review.opendev.org/c/openstack/kolla/+/765781

Change-Id: I3c4182a6556dafd2c936eaab109a068674058fca
2022-08-09 12:15:26 +02:00
Michal Nasiadka
dcf5a8b65f Fix var-spacing
ansible-lint introduced var-spacing - let's fix our code.

Change-Id: I0d8aaf3c522a5a6a5495032f6dbed8a2be0251f0
2022-07-25 22:15:15 +02:00
Michal Arbet
3e8db91a1e Add api_workers for each service to defaults
Render {{ openstack_service_workers }} for workers
of each openstack service is not enough. There are
several services which has to have more workers because
there are more requests sent to them.

This patch is just adding default value for workers for
each service and sets {{ openstack_service_workers }} as
default, so value can be overrided in hostvars per server.
Nothing changed for normal user.

Change-Id: Ifa5863f8ec865bbf8e39c9b2add42c92abe40616
2022-07-12 20:09:16 +02:00
Dr. Jens Harbott
3f8683cccc Don't disable neutron-bgp-dragent with OVN
The neutron-bgp-dragent container is also needed when using OVN as
backend plugin.

Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: Idec79a53fad048f45139af3b8c72e85385ac80b6
2022-07-03 22:01:52 +02:00
Radosław Piliszek
3e75a33ad4 Use the new image naming scheme
Change-Id: Ib4b15ed4feac82d8492b1c0f0238a752eac668e6
2022-05-23 06:37:25 +00:00
Marcin Juszkiewicz
1620ab5be9 drop install_type from image names
We have only one value for install_type now and it gets removed from
image names.

Change-Id: I8bf95fd7aa9dd26b80d618ca0fcb097003b4cb0a
2022-04-20 12:29:12 +02:00
Zuul
5dbcbda475 Merge "designate: Allow to disable notifications" 2022-03-25 12:06:37 +00:00
Michał Nasiadka
a19e1eb44e designate: Allow to disable notifications
Designate sink is an optional service that consumes notifications,
users should have an option to disable it when they don't use them.

Change-Id: I1d5465d9845aea94cff39ff5158cd8b1dccc4834
2022-03-24 11:17:23 +01:00
Mark Goddard
caf33be54b Explicitly unset net.ipv4.ip_forward sysctl
While I8bb398e299aa68147004723a18d3a1ec459011e5 stopped setting
the net.ipv4.ip_forward sysctl, this change explicitly removes the
option from the Kolla sysctl config file. In the absence of another
source for this sysctl, it should revert to the default of 0 after the
next reboot.

A deployer looking to more aggressively change the value may set
neutron_l3_agent_host_ipv4_ip_forward to 0. Any deployments still
relying on the previous value may set
neutron_l3_agent_host_ipv4_ip_forward to 1.

Related-Bug: #1945453

Change-Id: I9b39307ad8d6c51e215fe3d3bc56aab998d218ec
2022-03-07 17:31:46 +00:00
Mark Goddard
a6768dd33b Fix location of release note for ironic-neutron-agent healthcheck
TrivialFix

Change-Id: Id85a5d69e1222b616705e24885252425c92af527
2022-02-22 12:12:00 +00:00
Zuul
b668e27356 Merge "Add support for VMware NSXP" 2022-02-18 12:04:41 +00:00
Alban Lecorps
458c8b13df Add support for VMware NSXP
NSXP is the OpenStack support for the NSX Policy platform.
This is supported from neutron in the Stein version. This patch
adds Kolla support

This adds a new neutron_plugin_agent type 'vmware_nsxp'. The plugin
does not run any neutron agents.

Change-Id: I9e9d8f07e586bdc143d293e572031368af7f3fca
2022-02-17 08:59:14 +00:00
Zuul
70a46fdeb5 Merge "Use subnet_dns_publish_fixed_ip Neutron extension" 2022-01-25 13:40:38 +00:00
Dr. Jens Harbott
e00e46d337 Use subnet_dns_publish_fixed_ip Neutron extension
There are multiple Neutron extensions that can be used for DNS
integration. The "dns" extension has only minimum functionality, for
most deployments either "dns_domain_ports" or
"subnet_dns_publish_fixed_ip" would be used, with the latter being a
superset of the two others [0].

[0] https://docs.openstack.org/neutron/xena/admin/config-dns-int-ext-serv.html#use-case-3-ports-are-published-directly-in-the-external-dns-service

Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: I1056bddfd49265ffe21b4d000898d72bba3ebfad
2022-01-21 22:27:23 +00:00
likui
98c6a4b65a Use Docker healthchecks for ironic-neutron-agent services
This change enables the use of Docker healthchecks for ironic-neutron-agent services.

Change-Id: I80f8319b2cf2e4ae09904a08532cde5ec0385fa3
Implements: blueprint container-health-check
2022-01-19 10:06:41 +00:00
Pierre Riteau
56fc74f231 Move project_name and kolla_role_name to role vars
Role vars have a higher precedence than role defaults. This allows to
import default vars from another role via vars_files without overriding
project_name (see related bug for details).

Change-Id: I3d919736e53d6f3e1a70d1267cf42c8d2c0ad221
Related-Bug: #1951785
2021-12-31 09:26:25 +00:00
Zuul
42fd0a795e Merge "Stop creating non-keystone admin endpoints" 2021-12-27 15:06:12 +00:00
Dr. Jens Harbott
479a78706a Stop creating non-keystone admin endpoints
The admin interface for endpoints never had any real use, the
functionality was the same as for the public or internal endpoints,
except for Keystone. Even for Keystone with API v3 it would no longer
really be needed, but it is still being required by some libraries that
cannot be changed in order to stay backwards compatible.

Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: Icf3bf08deab2c445361f0a0124d87ad8b0e4e9d9
2021-12-21 13:09:36 +01:00
Zuul
16db562f87 Merge "Use Docker healthchecks for neutron-bgp-dragent service" 2021-12-20 16:06:11 +00:00
Radosław Piliszek
4e5e9abcd2 Fix wrong distro assumptions
It seems some cases were missed in reviews and not fixed by
the previous iterations:
Ifc252ae793e6974356fcdca810b373f362d24ba5
I838e526b930d5276d3ce24f5188262af7eb33280

Change-Id: Id57da1c5024e1efc5810baca8fbe18967cf95a68
2021-10-22 17:06:10 +00:00
Zuul
3101c5abc3 Merge "Skip setting rp_filter by default" 2021-09-23 19:14:55 +00:00
Zuul
2bd945b0f6 Merge "Add a ovsdb_timeout variable for better configuration" 2021-09-09 11:01:11 +00:00
Michal Arbet
4900bbf5a5 Use Docker healthchecks for neutron-bgp-dragent service
This change enables the use of Docker healthchecks for
neutron-bgp-dragent service.

Change-Id: I8c7e69b04d87acd1742c33269cde5b88ce75e619
2021-08-20 15:04:57 +02:00
Mark Goddard
ade5bfa302 Use ansible_facts to reference facts
By default, Ansible injects a variable for every fact, prefixed with
ansible_. This can result in a large number of variables for each host,
which at scale can incur a performance penalty. Ansible provides a
configuration option [0] that can be set to False to prevent this
injection of facts. In this case, facts should be referenced via
ansible_facts.<fact>.

This change updates all references to Ansible facts within Kolla Ansible
from using individual fact variables to using the items in the
ansible_facts dictionary. This allows users to disable fact variable
injection in their Ansible configuration, which may provide some
performance improvement.

This change disables fact variable injection in the ansible
configuration used in CI, to catch any attempts to use the injected
variables.

[0] https://docs.ansible.com/ansible/latest/reference_appendices/config.html#inject-facts-as-vars

Change-Id: I7e9d5c9b8b9164d4aee3abb4e37c8f28d98ff5d1
Partially-Implements: blueprint performance-improvements
2021-06-23 10:38:06 +01:00
Zuul
f5fa171983 Merge "Add ability to use the Neutron packet logging framework" 2021-06-14 14:44:53 +00:00
Florian LEDUC
e923236001 Add ability to use the Neutron packet logging framework
* Enables the Neutron packet logging framework for OVS
(https://docs.openstack.org/neutron/latest/admin/config-logging.html).
* Adds a toggle variable "enable_neutron_packet_logging"

Change-Id: Ica3594cdac634b496949a06ed813dccd18090af4
Implements: blueprint neutron-log-service-plugin
2021-05-11 13:50:49 +02:00
Radosław Piliszek
7e81e20e76 Skip setting rp_filter by default
We don't do the best job with it and it's better to rely on users'
and distros' default policies than try to water those down.

Closes-Bug: #1837551
Change-Id: I72b13adef60900fc31f1293c516030026f004216
2021-04-25 14:54:55 +00:00
Piotr Parczewski
fc72887d31 Add Neutron DHCP agent to OVN networking setup
This commit adds possibility to deploy Neutron's DHCP agents in OVN
networking scenario.

Co-Authored-By: Michał Nasiadka <mnasiadka@gmail.com>

Change-Id: I073d04319b510182f5c1478e728c0c5bcc8799f1
2021-02-23 13:57:48 +01:00
Jeffrey Zhang
90435f6a9d Add a ovsdb_timeout variable for better configuration
ovsdb_timeout value need be increased when has lots of ports.

Change-Id: I86a8cc7b66dd262282a148f95d22c504fbe81409
Closes-Bug: #1914011
2021-02-01 16:26:39 +08:00
Ghanshyam Mann
c7386a8168 Remove retired Searchlight support
Searchlight project is retiring in Wallaby cycle[1].
This commit removes the ansible roles of Searchlight project
before its code is removed.

Needed-By: https://review.opendev.org/c/openstack/searchlight/+/764526

[1] http://lists.openstack.org/pipermail/openstack-discuss/2020-November/018637.html

Change-Id: I85aab66376ea4f1376c2705066ba3c7e5645644f
2020-12-15 18:37:34 -06:00
James Kirsch
93ad57f47e Add support for encrypting backend Neutron API Server
Add TLS support for backend Neutron API Server communication using
HAProxy to perform TLS termination. When used in conjunction with
enabling TLS for service API endpoints, network communication will be
encrypted end to end, from client through HAProxy to the Neutron
service.

Change-Id: Ib333a1f1bd12491df72a9e52d961161210e2d330
Partially-Implements: blueprint add-ssl-internal-network
2020-10-12 17:27:44 +00:00
Zuul
6c5e9321e4 Merge "Allow to skip and unset sysctl vars" 2020-10-08 10:21:31 +00:00
Zuul
7c61f72108 Merge "Control Neutron migrations" 2020-10-07 16:43:32 +00:00
Michal Nasiadka
c52a89ae04 Use Docker healthchecks for core services
This change enables the use of Docker healthchecks for core OpenStack
services.
Also check-failures.sh has been updated to treat containers with
unhealthy status as failed.

Implements: blueprint container-health-check
Change-Id: I79c6b11511ce8af70f77e2f6a490b59b477fefbb
2020-10-05 08:35:47 +00:00
Radosław Piliszek
8d2d37064e Control Neutron migrations
Since [1] and [2] merged, K-A has to control Neutron migrations
to migrate all required projects.

This patch additionally fixes the other observed issue.

[1] https://review.opendev.org/750075
[2] https://review.opendev.org/753543

Change-Id: I09e1b421e9066890b50bd82331a3050de252464f
Closes-Bug: #1894380
Depends-On: https://review.opendev.org/755346
2020-10-01 10:13:19 +02:00
Radosław Piliszek
bce266201b Allow to skip and unset sysctl vars
via KOLLA_SKIP and KOLLA_UNSET

Change-Id: I7d9af21c2dd8c303066eb1ee4dff7a72bca24283
Related-Bug: #1837551
2020-09-21 13:13:58 +02:00
Bharat Kunwar
c24a280bee Support neutron_sriov_physnet_mappings to support multiple devices
Change-Id: Ifcedcc72307732393a92a702a7567addc043b5b2
2020-09-17 13:26:30 +00:00
Zuul
a8eb112838 Merge "Fix tz handling for newly introduced services" 2020-08-26 13:35:37 +00:00
Radosław Piliszek
7c42204a65 Drop option http-tunnel for neutron-server
Change-Id: I6910bcdb122e42337d7938405f792fa0fe32e49b
Closes-Bug: #1892686
2020-08-24 10:01:27 +02:00
Rafael Weingärtner
f425c0678f Standardize use and construction of endpoint URLs
The goal for this push request is to normalize the construction and use
 of internal, external, and admin URLs. While extending Kolla-ansible
 to enable a more flexible method to manage external URLs, we noticed
 that the same URL was constructed multiple times in different parts
 of the code. This can make it difficult for people that want to work
 with these URLs and create inconsistencies in a large code base with
 time. Therefore, we are proposing here the use of
 "single Kolla-ansible variable" per endpoint URL, which facilitates
 for people that are interested in overriding/extending these URLs.

As an example, we extended Kolla-ansible to facilitate the "override"
of public (external) URLs with the following standard
"<component/serviceName>.<companyBaseUrl>".
Therefore, the "NAT/redirect" in the SSL termination system (HAproxy,
HTTPD or some other) is done via the service name, and not by the port.
This allows operators to easily and automatically create more friendly
 URL names. To develop this feature, we first applied this patch that
 we are sending now to the community. We did that to reduce the surface
  of changes in Kolla-ansible.

Another example is the integration of Kolla-ansible and Consul, which
we also implemented internally, and also requires URLs changes.
Therefore, this PR is essential to reduce code duplicity, and to
facility users/developers to work/customize the services URLs.

Change-Id: I73d483e01476e779a5155b2e18dd5ea25f514e93
Signed-off-by: Rafael Weingärtner <rafael@apache.org>
2020-08-19 07:22:17 +00:00
Radosław Piliszek
479fb85d0d Fix tz handling for newly introduced services
We missed to ensure new neutron switch use the new condition for
timezone file mounting.

Change-Id: I838e526b930d5276d3ce24f5188262af7eb33280
Closes-Bug: #1882553
2020-08-19 07:21:05 +00:00
Bharat Kunwar
4809462f4e Deploy neutron-mlnx-agent and neutron-eswitchd containers
Change-Id: I173669bdf92b1f2ea98907ba16808ca3c914944c
2020-08-13 23:33:57 +01:00