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
|
@ -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::northbound::port: {get_param: OVNNorthboundServerPort}
|
||||||
ovn::southbound::port: {get_param: OVNSouthboundServerPort}
|
ovn::southbound::port: {get_param: OVNSouthboundServerPort}
|
||||||
ovn::northd::dbs_listen_ip: {get_param: [ServiceNetMap, OvnDbsNetwork]}
|
ovn::northd::dbs_listen_ip: {get_param: [ServiceNetMap, OvnDbsNetwork]}
|
||||||
|
tripleo::haproxy::ovn_dbs_manage_lb: true
|
||||||
tripleo.ovn_dbs.firewall_rules:
|
tripleo.ovn_dbs.firewall_rules:
|
||||||
'121 OVN DB server ports':
|
'121 OVN DB server ports':
|
||||||
proto: 'tcp'
|
proto: 'tcp'
|
||||||
|
|
|
@ -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
|
|
@ -0,0 +1,3 @@
|
||||||
|
---
|
||||||
|
features:
|
||||||
|
- Support HA for OVN db servers and ovn-northd using Pacemaker.
|
Loading…
Reference in New Issue