aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/compute.yml.j2
diff options
context:
space:
mode:
Diffstat (limited to 'mcp/reclass/classes/cluster/mcp-odl-noha/openstack/compute.yml.j2')
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-noha/openstack/compute.yml.j2125
1 files changed, 125 insertions, 0 deletions
diff --git a/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/compute.yml.j2 b/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/compute.yml.j2
new file mode 100644
index 000000000..44ebb86b1
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/compute.yml.j2
@@ -0,0 +1,125 @@
+##############################################################################
+# Copyright (c) 2018 Mirantis Inc., Enea AB and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+{%- import 'net_map.j2' as nm with context %}
+{%- import 'net_macros.j2' as ma with context %}
+{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %}
+---
+classes:
+ - service.neutron.compute.single
+ - service.neutron.compute.opendaylight.single
+{%- if '-ovs-' in conf.MCP_DEPLOY_SCENARIO %}
+ - system.nova.compute.nfv.hugepages
+ - system.neutron.compute.nfv.dpdk
+{%- endif %}
+ - cluster.mcp-common-noha.openstack_compute
+ - cluster.mcp-odl-noha
+parameters:
+ nova:
+ compute:
+ vif_plugging_is_fatal: false
+ vif_plugging_timeout: 60
+ neutron:
+ compute:
+ opendaylight:
+ ovsdb_server_iface: ptcp:6640:127.0.0.1
+ linux:
+ network:
+ ovs_nowait: false
+ interface:
+{%- if '-ovs-' in conf.MCP_DEPLOY_SCENARIO %}
+ dpdk0:
+ name: ${_param:dpdk0_name}
+ pci: ${_param:dpdk0_pci}
+ driver: ${_param:dpdk0_driver}
+ enabled: true
+ bridge: br-prv
+ type: dpdk_ovs_port
+ n_rxq: ${_param:dpdk0_n_rxq}
+ mtu: ${_param:interface_mtu}
+ br-prv:
+ enabled: true
+ type: dpdk_ovs_bridge
+ proto: static
+ address: ${_param:tenant_address}
+ netmask: ${_param:opnfv_net_private_mask}
+ {{ nm.cmp001.nic_private }}:
+ type: dpdk # Not a meaningful type, just match 'dpdk' for filtering
+
+{%- set nics = { nm.cmp001.nic_public: True } %}
+{%- set vlans = { nm.vlan_public: nm.cmp001.nic_public } %}
+
+{{ ma.linux_network_interfaces_nic(nics) }}
+
+{{ ma.linux_network_interfaces_vlan(vlans) }}
+
+ br-floating:
+ enabled: true
+ type: ovs_bridge
+ datapath_type: netdev
+ use_interfaces:
+ - float-to-ex
+ float-to-ex:
+ enabled: true
+ type: ovs_port
+ mtu: ${_param:interface_mtu}
+ bridge: br-floating
+ ovs_bridge: br-floating
+ noifupdown: true
+ br-ex:
+ enabled: true
+ type: bridge
+ address: ${_param:external_address}
+ netmask: ${_param:opnfv_net_public_mask}
+ use_interfaces:
+ - {{ ma.interface_str(nm.cmp001.nic_public, nm.vlan_public) }}
+ use_ovs_ports:
+ - float-to-ex
+ gateway: ${_param:opnfv_net_public_gw}
+ name_servers: {{ nm.dns_public }}
+ noifupdown: true
+{%- else %}
+ br-mesh:
+ enabled: true
+ type: bridge
+ proto: static
+ address: ${_param:tenant_address}
+ netmask: ${_param:opnfv_net_private_mask}
+ use_interfaces:
+ - {{ ma.interface_str(nm.cmp001.nic_private, vlan_private_start) }}
+ {{ ma.interface_str(nm.cmp001.nic_public, nm.vlan_public) }}:
+ enabled: true
+ mtu: ${_param:interface_mtu}
+ proto: manual
+ ovs_port_type: OVSPort
+ type: ovs_port
+ ovs_bridge: br-floating
+ bridge: br-floating
+ br-floating:
+ enabled: true
+ type: ovs_bridge
+ proto: static
+ address: ${_param:external_address}
+ netmask: ${_param:opnfv_net_public_mask}
+ use_interfaces:
+ - {{ ma.interface_str(nm.cmp001.nic_public, nm.vlan_public) }}
+ gateway: ${_param:opnfv_net_public_gw}
+ name_servers: {{ nm.dns_public }}
+ noifupdown: true
+{%- endif %}
+ system:
+ file:
+ /var/tmp/odl_hostconfig.patch:
+ contents: |
+ 420c420
+ < if datapath_types.find(datapath_type) >= 0)
+ ---
+ > if datapath_type in datapath_types)
+ 460c460
+ < return subprocess.check_output(command_line).strip() # nosec
+ ---
+ > return subprocess.check_output(command_line).strip().decode() # nosec