The OVN environment files - environments/neutron-ml2-ovn-dvr-ha.yaml
and environments/neutron-ml2-ovn-ha.yaml
are not correct. Moreoever the correct path for OVN environment files is
- environment/services.
Having multiple files is confusing and hard to maintain.
Depends-On: https://review.opendev.org/#/c/662143/
Change-Id: I8dc362bcbf860386b497490e57eec69d69f69cc8
This change combines the previous puppet and docker files into a single
file that performs the docker service installation and configuration
for the ovn services.
Related-Blueprint: services-yaml-flattening
Change-Id: I6261863c15f594fed8207ff258f1d9c809a9a864
NeutronEnableDHCPAgent is no longer consumed anywhere in OpenStack so
this patch is removing all occurrences of it in the environment files.
Change-Id: I042944c3f24d22fa60d4ed13fd9a56c5b93f465f
Signed-off-by: Daniel Alvarez <dalvarez@redhat.com>
When OVN DBs pacemaker bundle is started on the controller nodes,
all the ovsdb-servers are configured to listen on the virtual ip
(on ports 6641/6642). But only master node is configured with virtual ip.
On the other nodes, we see the below error messages
ovsdb_jsonrpc_server|ERR|ptcp:6641:172.17.1.18: listen failed: Cannot assign
requested address.
The commit [1] addressed this issue in puppet-tripleo by setting the
sysctl value 'net.ipv4.ip_nonlocal_bind' to 1 using puppet's sysctl::value.
But the ovn-dbs.yaml service file is missing this puppet tag when the
container 'ovn_dbs_init_bundle' is started.
We can fix the issue by defining this tag, but this also requires setting
'privileged=true' when starting the docker container.
Instead, this patch makes use of the t-h-t param 'KernelIpNonLocalBind'
which was introduced in this commit [2].
[1] - I6f762534350a3f96696c87ccd2d14545dccc8a0b
[2] - Idd3d432b8f7eb573d94cd56be8e05614510ebddf
Change-Id: I5ae8cd368bcd58810b18e172ee685fdbf0e48d98
Closes-bug: #1781585
Mark regular non-containerized services with FIXME
to be switched, once it is containerized
Do not mark yet an external/backend/plugin/host-config
related puppet services templates with that FIXME
Mark puppet/services/ceph- related templates as TODO
switch it to containerized ceph-ansible eventually, maybe.
Change-Id: Ib9fbad05eeb57dc641499fbf411cb5870da7a8e9
Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
If Networker role is used, we want to deploy OVNController service
on such nodes and configure the right CMS options in OVN.
Change-Id: I09de4a764fa1a2bb7dff6056e903173220300cb4
Signed-off-by: Daniel Alvarez <dalvarez@redhat.com>
This patch adds support for networking-ovn-metadata-agent.
It will deploy the agent on compute nodes and disable Nova
force_config_drive.
The following two patches have been squashed into this one:
* https://review.openstack.org/#/c/525164/
* https://review.openstack.org/#/c/522813/
The reason behind the squash is that we had interdepenencies
and this patch alone wouldn't be testing the code properly
without the two other ones since scenario007 job in baremetal
has been removed for this cycle.
UpgradeImpact
Depends-On: I678652294cb8f964c34b742a0bc0ea360d736fb9
Depends-On: If3dffde5e0db8f7607a9708d36d54d1600fe5da8
Depends-On: I38f775479d178f5b252619635b67f876bc8c5ed5
Depends-On: Ifdd42437333730a3b3e6f36cbab6df0a2971a5a1
Depends-On: I940cec6d670df39ac6e2a3559a028acbeee99331
Change-Id: Idc2bb4e31a64502ac6fcdac771d823509dc328e7
Signed-off-by: Daniel Alvarez <dalvarez@redhat.com>
In order for a node to provide external connectivity to tenant traffic,
ovn-bridge-mappings should be defined which is read by ovn-controller service.
This value comes from the T-H-T param 'NeutronBridgeMappings'. Presently
this param is defined with the default value "datacentre:br-ex" and is configured
on every node where ovn-controller service is enabled. This would cause problems
if some of the hosts do not provide external connectvity.
To solve this problem, this patch adds 'NeutronBridgeMappings' as a role parameter
so that it can set to empty string if the role doesn't provide external connectivity.
In the OVN environment template files, this param is set to empty for Compute role.
Since NeutronBridgeMappings is also used by neutron-ovs-agent service, this patch
also modifies puppet/services/neutron-ovs-agent.yaml to define NeutronBridgeMappings
as a role parameter.
Change-Id: I6a00b8dc1ff387cc5e1e62b4d9d7da5e1239ee31
Closes-bug: #1730711
ML2/OVN doesn't support VXLAN, it doesn't make sense
to configure it as a Type Driver and may confuse
operators.
Change-Id: I1810663ad57e378f3fd995566262511a03663743
Presently the ovn-controller service (puppet/services/neutron-compute-plugin-ovn.yaml)
is started only on compute nodes. But for the cases where the controller nodes
provide the north/south traffic, we need ovn-controller service runninng in controller
nodes as well.
This patch
- Renames the neutron-compute-plugin-ovn.yaml to ovn-controller.yaml which makes more
sense and sets the service name as 'ovn-controller'.
- Adds the service 'ovn-controller' to Controller and Compute roles.
- Adds the missing 'upgrade_tasks' section in ovn-dbs.yaml and ovn-controller.yaml
Depends-On: Ie3f09dc70a582f3d14de093043e232820f837bc3
Depends-On: Ide11569d81f5f28bafccc168b624be505174fc53
Change-Id: Ib7747406213d18fd65b86820c1f86ee7c39f7cf5
This patch adds the templates required to enable the OVN DB servers
to be started in master/slave mode in the pacemaker cluster.
For the OVN DBs base profile, ::tripleo::haproxy expects the parameter
'ovn_dbs_manage_lb' set to true in order for it to configure OVN DBs
for load balancing (please see this commit [1]). So this patch sets
'ovn_dbs_manage_lb' to true.
[1] - I9dc366002ef5919339961e5deebbf8aa815c73db
Co-authored-by: Babu Shanmugam (babu.shanmugam@gmail.com)
Depends-on: I94d3960e6c5406e3af309cc8c787ac0a6c9b1756
Change-Id: I60c55abfc523973aa926d8a12ec77f198d885916
Closes-bug: #1670564