heat_template_version: wallaby description: > OpenStack Neutron ML2 Plugin configured with Puppet parameters: ServiceData: default: {} description: Dictionary packing service data type: json ServiceNetMap: default: {} description: Mapping of service_name -> network name. Typically set via parameter_defaults in the resource registry. Use parameter_merge_strategies to merge it with the defaults. 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 NeutronMechanismDrivers: default: 'ovn' description: | The mechanism drivers for the Neutron tenant network. type: comma_delimited_list NeutronTypeDrivers: default: "geneve,vxlan,vlan,flat" description: | Comma-separated list of network type driver entrypoints to be loaded. type: comma_delimited_list NeutronFlatNetworks: type: comma_delimited_list default: 'datacentre' description: If set, flat networks to configure in neutron plugins. NeutronPluginExtensions: default: "qos,port_security,dns" description: | Comma-separated list of extensions enabled for the Neutron plugin. type: comma_delimited_list NeutronNetworkVLANRanges: default: 'datacentre:1:1000' description: > The Neutron ML2 and OpenVSwitch vlan mapping range to support. See the Neutron documentation for permitted values. Defaults to permitting VLANs 1 to 1000 on the 'datacentre' physical network (See NeutronBridgeMappings). type: comma_delimited_list NeutronTunnelIdRanges: description: | Comma-separated list of : tuples enumerating ranges of GRE tunnel IDs that are available for tenant network allocation default: ["1:4094", ] type: comma_delimited_list NeutronVniRanges: description: | Comma-separated list of : tuples enumerating ranges of VXLAN VNI IDs that are available for tenant network allocation default: ["1:65536", ] type: comma_delimited_list NeutronNetworkType: default: 'geneve' description: The tenant network type for Neutron. type: comma_delimited_list NeutronOverlayIPVersion: default: 4 description: IP version used for all overlay network endpoints. type: number constraints: - allowed_values: [4,6] NeutronML2PhysicalNetworkMtus: default: [] description: | A list of mappings of physical networks to MTU values. The format of the mapping is :. This mapping allows specifying a physical network MTU value that differs from the default segment_mtu value in ML2 plugin. And overwrite values from global_physnet_mtu for selected network. type: comma_delimited_list NeutronOvsVnicTypeProhibitlist: description: | Comma-separated list of VNIC types for which support in Neutron is administratively prohibited by the OVS mechanism driver. type: comma_delimited_list default: [] NeutronSriovVnicTypeProhibitlist: description: > Comma-separated list of VNIC types for which support in Neutron is administratively prohibited by the SR-IOV mechanism driver. type: comma_delimited_list default: [] # DEPRECATED: the NeutronFirewallDriver option is deprecated and is currently # maintained for backwards compatibility. It has no any effect on the # deployment and will be removed in the W release. # Please use NeutronOVSFirewallDriver to configure driver in the ovs agent. NeutronFirewallDriver: description: Firewall driver for realizing neutron security group function type: string default: '' NeutronOvsVnicTypeBlacklist: description: | Comma-separated list of VNIC types for which support in Neutron is administratively prohibited by the OVS mechanism driver. type: comma_delimited_list default: [] NeutronSriovVnicTypeBlacklist: description: > Comma-separated list of VNIC types for which support in Neutron is administratively prohibited by the SR-IOV mechanism driver. type: comma_delimited_list default: [] parameter_groups: - label: deprecated description: | The following parameters are deprecated and will be removed. They should not be relied on for new deployments. If you have concerns regarding deprecated parameters, please contact the TripleO development team on IRC or the OpenStack mailing list. parameters: - NeutronOverlayIPVersion - NeutronFirewallDriver - NeutronOvsVnicTypeBlacklist - NeutronSriovVnicTypeBlacklist conditions: physical_network_mtus_set: {not: {equals: [{get_param: NeutronML2PhysicalNetworkMtus}, []]}} ovs_vnic_type_prohibit_list_set: {not: {equals: [{get_param: NeutronOvsVnicTypeProhibitlist}, []]}} sriov_vnic_type_prohibit_list_set: {not: {equals: [{get_param: NeutronSriovVnicTypeProhibitlist}, []]}} resources: NeutronBase: type: ./neutron-base.yaml properties: ServiceData: {get_param: ServiceData} ServiceNetMap: {get_param: ServiceNetMap} EndpointMap: {get_param: EndpointMap} RoleName: {get_param: RoleName} RoleParameters: {get_param: RoleParameters} outputs: role_data: description: Role data for the Neutron ML2 plugin. value: service_name: neutron_plugin_ml2 config_settings: map_merge: - get_attr: [NeutronBase, role_data, config_settings] - neutron::plugins::ml2::mechanism_drivers: {get_param: NeutronMechanismDrivers} neutron::plugins::ml2::type_drivers: {get_param: NeutronTypeDrivers} neutron::plugins::ml2::flat_networks: {get_param: NeutronFlatNetworks} neutron::plugins::ml2::extension_drivers: {get_param: NeutronPluginExtensions} neutron::plugins::ml2::network_vlan_ranges: {get_param: NeutronNetworkVLANRanges} neutron::plugins::ml2::tunnel_id_ranges: {get_param: NeutronTunnelIdRanges} neutron::plugins::ml2::vni_ranges: {get_param: NeutronVniRanges} neutron::plugins::ml2::tenant_network_types: {get_param: NeutronNetworkType} neutron::plugins::ml2::ovs_driver::vnic_type_prohibitlist: if: - ovs_vnic_type_prohibit_list_set - {get_param: NeutronOvsVnicTypeProhibitlist} - {get_param: NeutronOvsVnicTypeBlacklist} neutron::plugins::ml2::sriov_driver::vnic_type_prohibitlist: if: - sriov_vnic_type_prohibit_list_set - {get_param: NeutronSriovVnicTypeProhibitlist} - {get_param: NeutronSriovVnicTypeBlacklist} neutron::plugins::ml2::overlay_ip_version: get_param: - ServiceData - net_ip_version_map - {get_param: [ServiceNetMap, NeutronTenantNetwork]} neutron::plugins::ml2::physical_network_mtus: if: - physical_network_mtus_set - {get_param: NeutronML2PhysicalNetworkMtus} step_config: | include tripleo::profile::base::neutron::plugins::ml2 service_config_settings: {} metadata_settings: get_attr: [NeutronBase, role_data, metadata_settings]