Pacemaker HA suport for OVN DB servers
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
This commit is contained in:
parent
eab0cd441c
commit
b327ea5d86
24
environments/neutron-ml2-ovn-ha.yaml
Normal file
24
environments/neutron-ml2-ovn-ha.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
# A Heat environment file which can be used to enable OVN
|
||||
# extensions, configured via puppet
|
||||
resource_registry:
|
||||
OS::TripleO::Services::NeutronCorePlugin: OS::TripleO::Services::NeutronCorePluginML2OVN
|
||||
OS::TripleO::Services::ComputeNeutronCorePlugin: ../puppet/services/neutron-compute-plugin-ovn.yaml
|
||||
OS::TripleO::Services::OVNDBs: ../puppet/services/pacemaker/ovn-dbs.yaml
|
||||
# Disabling Neutron services that overlap with OVN
|
||||
OS::TripleO::Services::NeutronL3Agent: OS::Heat::None
|
||||
OS::TripleO::Services::NeutronOvsAgent: OS::Heat::None
|
||||
OS::TripleO::Services::NeutronMetadataAgent: OS::Heat::None
|
||||
OS::TripleO::Services::NeutronDhcpAgent: OS::Heat::None
|
||||
OS::TripleO::Services::ComputeNeutronOvsAgent: OS::Heat::None
|
||||
|
||||
parameter_defaults:
|
||||
NeutronMechanismDrivers: ovn
|
||||
OVNVifType: ovs
|
||||
OVNNeutronSyncMode: log
|
||||
OVNQosDriver: ovn-qos
|
||||
OVNTunnelEncapType: geneve
|
||||
NeutronEnableDHCPAgent: false
|
||||
NeutronTypeDrivers: 'geneve,vxlan,vlan,flat'
|
||||
NeutronNetworkType: 'geneve'
|
||||
NeutronServicePlugins: 'qos,ovn-router'
|
||||
NeutronVniRanges: ['1:65536', ]
|
@ -44,6 +44,7 @@ outputs:
|
||||
ovn::northbound::port: {get_param: OVNNorthboundServerPort}
|
||||
ovn::southbound::port: {get_param: OVNSouthboundServerPort}
|
||||
ovn::northd::dbs_listen_ip: {get_param: [ServiceNetMap, OvnDbsNetwork]}
|
||||
tripleo::haproxy::ovn_dbs_manage_lb: true
|
||||
tripleo.ovn_dbs.firewall_rules:
|
||||
'121 OVN DB server ports':
|
||||
proto: 'tcp'
|
||||
|
61
puppet/services/pacemaker/ovn-dbs.yaml
Normal file
61
puppet/services/pacemaker/ovn-dbs.yaml
Normal file
@ -0,0 +1,61 @@
|
||||
heat_template_version: ocata
|
||||
|
||||
description: >
|
||||
OVN databases configured with puppet in HA mode
|
||||
|
||||
parameters:
|
||||
ServiceNetMap:
|
||||
default: {}
|
||||
description: Mapping of service_name -> network name. Typically set
|
||||
via parameter_defaults in the resource registry. This
|
||||
mapping overrides those in ServiceNetMapDefaults.
|
||||
type: json
|
||||
DefaultPasswords:
|
||||
default: {}
|
||||
type: json
|
||||
RoleName:
|
||||
default: ''
|
||||
description: Role name on which the service is applied
|
||||
type: string
|
||||
RoleParameters:
|
||||
default: {}
|
||||
description: Parameters specific to the role
|
||||
type: json
|
||||
EndpointMap:
|
||||
default: {}
|
||||
description: Mapping of service endpoint -> protocol. Typically set
|
||||
via parameter_defaults in the resource registry.
|
||||
type: json
|
||||
OVNNorthboundServerPort:
|
||||
description: Port of the OVN Northbound DB server
|
||||
type: number
|
||||
default: 6641
|
||||
OVNSouthboundServerPort:
|
||||
description: Port of the OVN Southbound DB server
|
||||
type: number
|
||||
default: 6642
|
||||
|
||||
resources:
|
||||
|
||||
OVNDBsBase:
|
||||
type: ../ovn-dbs.yaml
|
||||
properties:
|
||||
ServiceNetMap: {get_param: ServiceNetMap}
|
||||
DefaultPasswords: {get_param: DefaultPasswords}
|
||||
EndpointMap: {get_param: EndpointMap}
|
||||
RoleName: {get_param: RoleName}
|
||||
RoleParameters: {get_param: RoleParameters}
|
||||
|
||||
outputs:
|
||||
role_data:
|
||||
description: Role data for the OVN northd service
|
||||
value:
|
||||
service_name: ovn_dbs
|
||||
config_settings:
|
||||
map_merge:
|
||||
- get_attr: [OVNDBsBase, role_data, config_settings]
|
||||
- tripleo::haproxy::ovn_dbs_manage_lb: false
|
||||
tripleo::profile::pacemaker::ovn_northd::nb_db_port: {get_param: OVNNorthboundServerPort}
|
||||
tripleo::profile::pacemaker::ovn_northd::sb_db_port: {get_param: OVNSouthboundServerPort}
|
||||
step_config: |
|
||||
include ::tripleo::profile::pacemaker::ovn_northd
|
3
releasenotes/notes/ovn-ha-c0139ac519680872.yaml
Normal file
3
releasenotes/notes/ovn-ha-c0139ac519680872.yaml
Normal file
@ -0,0 +1,3 @@
|
||||
---
|
||||
features:
|
||||
- Support HA for OVN db servers and ovn-northd using Pacemaker.
|
Loading…
x
Reference in New Issue
Block a user