tripleo-heat-templates/environments/neutron-ovs-dvr.yaml

67 lines
3.4 KiB
YAML

# A Heat environment file that enables DVR in the overcloud.
# This works by configuring L3 and Metadata agents on the
# compute nodes.
resource_registry:
# Default Neutron ML2 puppet plugin to use when NeutronCorePlugin is set to ML2
# FIXME(bogdando): can not be switched yet due to puppet-base issues
# see https://review.opendev.org/#/c/563443
OS::TripleO::Docker::NeutronMl2PluginBase: ../deployment/neutron/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronServer: ../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronApi: ../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronCorePlugin: ../deployment/neutron/neutron-plugin-ml2-container-puppet.yaml
OS::TripleO::Services::NeutronMetadataAgent: ../deployment/neutron/neutron-metadata-container-puppet.yaml
OS::TripleO::Services::NeutronOvsAgent: ../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronDhcpAgent: ../deployment/neutron/neutron-dhcp-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronOvsAgent: ../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronL3Agent: ../deployment/neutron/neutron-l3-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronL3Agent: ../deployment/neutron/neutron-l3-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronMetadataAgent: ../deployment/neutron/neutron-metadata-container-puppet.yaml
# With using default template values, the Compute nodes also need the br-ex
# bridge to be connected to a physical network.
OS::TripleO::Compute::Net::SoftwareConfig: ../net-config-bridge.yaml
# Disable OVN services
OS::TripleO::Services::OVNController: OS::Heat::None
OS::TripleO::Services::OVNDBs: OS::Heat::None
OS::TripleO::Services::OVNMetadataAgent: OS::Heat::None
parameter_defaults:
# DVR requires that the L2 population feature is enabled
NeutronMechanismDrivers: ['openvswitch', 'l2population']
NeutronEnableL2Pop: 'True'
#L2 population require ARP responder feature
NeutronEnableARPResponder: true
NeutronTypeDrivers: 'vxlan,vlan,flat,gre'
NeutronNetworkType: 'vxlan'
NeutronServicePlugins: 'router,qos,segments,trunk'
NeutronVniRanges: ['1:4094', ]
KernelIpNonLocalBind: 0
# Setting NeutronEnableDVR enables distributed routing support in the
# ML2 plugin and agents that support this feature
NeutronEnableDVR: true
# We also need to set the proper agent mode for the L3 agent. This will only
# affect the agent on the controller node.
NeutronL3AgentMode: 'dvr_snat'
# Enabling DVR deploys additional services to the compute nodes that through
# normal operation will consume memory. The amount required is roughly
# proportional to the number of Neutron routers that will be scheduled to
# that host. It is necessary to reserve memory on the compute nodes to avoid
# memory issues when creating instances that are connected to routed
# networks. The current expected consumption is 50 MB per router in addition
# to the base reserved amount. Deployers should refer to existing
# documentation, release notes, etc. for additional information on estimating
# an appropriate value. The provided value here is based on an estimate of 10
# routers and is an example value *only* and should be reviewed and modified
# if necessary before deploying.
NovaReservedHostMemory: 2560
ComputeParameters:
NeutronL3AgentMode: 'dvr'