aboutsummaryrefslogtreecommitdiffstats
path: root/mcp
diff options
context:
space:
mode:
Diffstat (limited to 'mcp')
-rwxr-xr-xmcp/config/states/openstack_ha2
-rwxr-xr-xmcp/config/states/openstack_noha2
-rwxr-xr-xmcp/config/states/virtual_control_plane2
-rw-r--r--mcp/reclass/classes/cluster/.gitignore1
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j24
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j22
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_biport.yml.j21
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_triport.yml.j21
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_proxy.yml.j25
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j22
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute.yml1
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute_pdf.yml.j232
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_control.yml5
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_control_pdf.yml.j231
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j240
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml.j22
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-noha/opendaylight/control_pdf.yml.j223
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-noha/openstack/compute.yml.j212
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-noha/openstack/gateway.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-odl-noha/openstack/gateway.yml)5
-rw-r--r--mcp/reclass/classes/cluster/mcp-ovn-noha/openstack/compute.yml.j210
-rw-r--r--mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/compute.yml.j22
-rw-r--r--mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/gateway.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/gateway.yml)3
-rw-r--r--mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/compute.yml.j24
-rw-r--r--mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/gateway.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/gateway.yml)5
-rw-r--r--mcp/scripts/lib.sh7
25 files changed, 139 insertions, 65 deletions
diff --git a/mcp/config/states/openstack_ha b/mcp/config/states/openstack_ha
index 12d6ae656..d7d8cbd45 100755
--- a/mcp/config/states/openstack_ha
+++ b/mcp/config/states/openstack_ha
@@ -68,7 +68,7 @@ salt -I 'aodh:server' state.sls aodh -b 1
salt -I 'ceilometer:server' state.sls ceilometer
salt -I 'ceilometer:agent' state.sls ceilometer
-salt -I 'horizon:server' state.sls horizon
+salt -I 'horizon:server' state.sls apache,horizon
salt -I 'nginx:server' state.sls nginx
cluster_public_host=$(salt -C 'I@nginx:server and *01*' --out=yaml \
diff --git a/mcp/config/states/openstack_noha b/mcp/config/states/openstack_noha
index 02530236a..9a42d4813 100755
--- a/mcp/config/states/openstack_noha
+++ b/mcp/config/states/openstack_noha
@@ -56,4 +56,4 @@ salt -I 'aodh:server' state.sls aodh
salt -I 'ceilometer:server' state.sls ceilometer
salt -I 'ceilometer:agent' state.sls ceilometer
-salt -I 'horizon:server' state.sls horizon
+salt -I 'horizon:server' state.sls apache,horizon
diff --git a/mcp/config/states/virtual_control_plane b/mcp/config/states/virtual_control_plane
index 8105b2666..8ea5047ae 100755
--- a/mcp/config/states/virtual_control_plane
+++ b/mcp/config/states/virtual_control_plane
@@ -57,4 +57,4 @@ wait_for 10.0 "salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' ssh.set_auth_key ${SUDO_
salt -C 'prx*' system.reboot
wait_for 30.0 "salt -C 'prx*' test.ping"
-salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' pkg.upgrade refresh=False
+salt -C 'E@^(?!cfg01|mas01|kvm|cmp00).*' pkg.upgrade refresh=False dist_upgrade=True
diff --git a/mcp/reclass/classes/cluster/.gitignore b/mcp/reclass/classes/cluster/.gitignore
index 437712ec6..733689355 100644
--- a/mcp/reclass/classes/cluster/.gitignore
+++ b/mcp/reclass/classes/cluster/.gitignore
@@ -27,3 +27,4 @@ mcp-odl-noha/infra/config.yml
mcp-*-noha/openstack/compute.yml
mcp-common-noha/infra/init.yml
mcp-common-noha/init_options.yml
+mcp-*-noha/openstack/gateway.yml
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j2
index 33c74fda6..a7e8fcde3 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j2
@@ -23,6 +23,7 @@ classes:
- system.barbican.server.cluster
- system.apache.server.site.barbican
- service.barbican.server.plugin.simple_crypto
+ - system.apache.server.single
- system.bind.server.single
- system.haproxy.proxy.listen.openstack.placement
- system.glusterfs.client.cluster
@@ -70,6 +71,7 @@ parameters:
cluster_node03_address: ${_param:openstack_control_node03_address}
nova_vncproxy_url: https://${_param:cluster_public_host}:6080
glusterfs_version: '3.13'
+ barbican_integration_enabled: 'false'
nova:
controller: &db_conn_recycle_time
database:
@@ -125,7 +127,7 @@ parameters:
apache:
server:
bind:
- ~ports: ~
+ listen_default_ports: false
# sync from common-ha kvm role
glusterfs:
server:
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j2
index 7aae337c4..dc286452b 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j2
@@ -187,7 +187,7 @@ parameters:
mysql_barbican_password: opnfv_secret
keystone_barbican_password: opnfv_secret
barbican_simple_crypto_kek: "YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoxMjM0NTY="
- barbican_integration_enabled: false
+ barbican_integration_enabled: true
ceilometer_secret_key: opnfv_secret
horizon_version: ${_param:openstack_version}
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_biport.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_biport.yml.j2
index 4fa959797..cb4c233cd 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_biport.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_biport.yml.j2
@@ -28,6 +28,7 @@ parameters:
gateway: {{ nm.net_admin_gw }}
name_servers:
- {{ nm.net_admin_gw }}
+ noifupdown: true
single:
enabled: true
type: eth
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_triport.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_triport.yml.j2
index 05550a299..38a436138 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_triport.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_interface_vcp_triport.yml.j2
@@ -27,6 +27,7 @@ parameters:
name: ${_param:pxe_admin_interface}
address: ${_param:pxe_admin_address}
netmask: ${_param:opnfv_net_admin_mask}
+ noifupdown: true
single_int:
enabled: true
type: eth
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_proxy.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_proxy.yml.j2
index d7ccff532..c23b50993 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_proxy.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_proxy.yml.j2
@@ -14,6 +14,7 @@ classes:
- system.nginx.server.proxy.openstack_web
- system.nginx.server.proxy.openstack.aodh
- system.nginx.server.proxy.openstack.ceilometer
+ - system.apache.server.single
- system.horizon.server.single
- system.salt.minion.cert.proxy
- system.sphinx.server.doc.reclass
@@ -93,3 +94,7 @@ parameters:
vrrp_scripts:
check_pidof:
args: 'nginx'
+ apache:
+ server:
+ bind:
+ listen_default_ports: false
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j2
index c55ea0049..9a9144ca7 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j2
@@ -69,6 +69,8 @@ parameters:
- python-memcache
apache:
server:
+ bind:
+ listen_default_ports: false
~modules:
- rewrite
{%- if conf.MCP_VCP %} {#- wsgi module will be enabled by a different class inherited later #}
diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute.yml b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute.yml
index 32aefd29c..5c9c16d6b 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute.yml
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute.yml
@@ -22,7 +22,6 @@ parameters:
_param:
interface_mtu: 9000
linux_system_codename: xenial
- barbican_integration_enabled: true
nova:
compute:
libvirt_service: libvirtd
diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute_pdf.yml.j2
index aebd88828..38f57688f 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute_pdf.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute_pdf.yml.j2
@@ -7,6 +7,11 @@
##############################################################################
{#- NOTE: br-{mgmt,ctl} are cross-referenced, careful when changing names #}
{%- import 'net_map.j2' as nm with context %}
+{%- import 'net_macros.j2' as ma with context %}
+{#- Filter-out NIC duplicates by constructing a dict (used NICs only) #}
+{%- set nics = { nm.cmp001.nic_mgmt: True, nm.cmp001.nic_private: True } %}
+{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %}
+{%- set vlans = { nm.vlan_mgmt: nm.cmp001.nic_mgmt, vlan_private_start: nm.cmp001.nic_private } %}
---
parameters:
_param:
@@ -19,9 +24,6 @@ parameters:
{%- else %}
~cinder_lvm_devices: ['/dev/sda1']
{%- endif %}
- primary_interface: {{ nm.cmp001.nic_mgmt }}
- tenant_interface: {{ nm.cmp001.nic_private }}
- external_interface: {{ nm.cmp001.nic_public }}
linux:
network:
bridge: openvswitch
@@ -34,17 +36,17 @@ parameters:
address: ${_param:pxe_admin_address}
netmask: ${_param:opnfv_net_admin_mask}
mtu: ${_param:interface_mtu}
- primary_interface:
- enabled: true
- name: ${_param:primary_interface}
- proto: manual
- type: eth
- tenant_interface:
- enabled: true
- name: ${_param:tenant_interface}
- mtu: ${_param:interface_mtu}
- proto: manual
- type: eth
+ noifupdown: true
+
+{#- prevent duplicates for tagged mgmt on the same physical interface as PXE/admin #}
+{%- if nm.cmp001.nic_admin in nics %}
+ {%- do nics.pop(nm.cmp001.nic_admin) %}
+{%- endif %}
+
+{{ ma.linux_network_interfaces_nic(nics) }}
+
+{{ ma.linux_network_interfaces_vlan(vlans) }}
+
br-mgmt:
enabled: true
type: bridge
@@ -52,4 +54,4 @@ parameters:
address: ${_param:single_address}
netmask: ${_param:opnfv_net_mgmt_mask}
use_interfaces:
- - ${_param:primary_interface}
+ - {{ ma.interface_str(nm.cmp001.nic_mgmt, nm.vlan_mgmt) }}
diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control.yml b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control.yml
index 0eeff7c05..48f99ca59 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control.yml
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control.yml
@@ -60,14 +60,17 @@ classes:
- system.apache.server.site.gnocchi
- system.apache.server.site.panko
- system.apache.server.site.barbican
+ - system.apache.server.single
- system.horizon.server.single
- service.haproxy.proxy.single
- cluster.mcp-common-noha.haproxy_openstack_api
- cluster.mcp-common-noha.openstack_control_pdf
parameters:
_param:
+ interface_mtu: 1500
linux_system_codename: xenial
ceilometer_create_gnocchi_resources: 'True'
+ barbican_integration_enabled: 'false'
linux:
system:
package:
@@ -174,6 +177,8 @@ parameters:
root_helper_daemon: false
apache:
server:
+ bind:
+ listen_default_ports: false
site:
gnocchi: &wsgi_threads
wsgi:
diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control_pdf.yml.j2
index b0b55afb9..7a1c3532d 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control_pdf.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control_pdf.yml.j2
@@ -6,6 +6,10 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
{%- import 'net_map.j2' as nm with context %}
+{%- import 'net_macros.j2' as ma with context %}
+{#- Filter-out NIC duplicates by constructing a dict (used NICs only) #}
+{%- set nics = { nm.ctl01.nic_mgmt: True, nm.ctl01.nic_public: True } %}
+{%- set vlans = { nm.vlan_mgmt: nm.ctl01.nic_mgmt, nm.vlan_public: nm.ctl01.nic_public } %}
---
parameters:
linux:
@@ -18,19 +22,34 @@ parameters:
type: eth
address: ${_param:pxe_admin_address}
netmask: ${_param:opnfv_net_admin_mask}
- single_int:
+ noifupdown: true
+
+{#- prevent duplicates for tagged mgmt on the same physical interface as PXE/admin #}
+{%- if nm.ctl01.nic_admin in nics %}
+ {%- do nics.pop(nm.ctl01.nic_admin) %}
+{%- endif %}
+
+{{ ma.linux_network_interfaces_nic(nics) }}
+
+{{ ma.linux_network_interfaces_vlan(vlans) }}
+
+ br-ctl:
enabled: true
- name: {{ nm.ctl01.nic_mgmt }}
- type: eth
+ type: bridge
proto: static
address: ${_param:single_address}
netmask: ${_param:opnfv_net_mgmt_mask}
- public_int:
+ noifupdown: true
+ use_interfaces:
+ - {{ ma.interface_str(nm.ctl01.nic_mgmt, nm.vlan_mgmt) }}
+ br-ext:
enabled: true
- name: {{ nm.ctl01.nic_public }}
- type: eth
+ type: bridge
proto: static
address: ${_param:cluster_public_host}
netmask: ${_param:opnfv_net_public_mask}
gateway: ${_param:opnfv_net_public_gw}
name_servers: {{ nm.dns_public }}
+ use_interfaces:
+ - {{ ma.interface_str(nm.ctl01.nic_public, nm.vlan_public) }}
+ noifupdown: true
diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j2
index 4f22d4fa2..972069ec1 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j2
@@ -7,11 +7,12 @@
##############################################################################
---
{%- import 'net_map.j2' as nm with context %}
+{%- import 'net_macros.j2' as ma with context %}
+{#- Filter-out NIC duplicates by constructing a dict (used NICs only) #}
+{%- set nics = { nm.ctl01.nic_mgmt: True, nm.ctl01.nic_private: True } %}
+{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %}
+{%- set vlans = { nm.vlan_mgmt: nm.ctl01.nic_mgmt, vlan_private_start: nm.ctl01.nic_private } %}
parameters:
- _param:
- primary_interface: {{ nm.ctl01.nic_mgmt }}
- tenant_interface: {{ nm.ctl01.nic_private }}
- external_interface: {{ nm.ctl01.nic_public }}
linux:
network:
bridge: openvswitch
@@ -24,21 +25,20 @@ parameters:
address: ${_param:pxe_admin_address}
netmask: ${_param:opnfv_net_admin_mask}
mtu: ${_param:interface_mtu}
- primary_interface:
+ noifupdown: true
+
+{#- prevent duplicates for tagged mgmt on the same physical interface as PXE/admin #}
+{%- if nm.ctl01.nic_admin in nics %}
+ {%- do nics.pop(nm.ctl01.nic_admin) %}
+{%- endif %}
+
+{{ ma.linux_network_interfaces_nic(nics) }}
+
+{{ ma.linux_network_interfaces_vlan(vlans) }}
+
+ ovs_port_{{ nm.ctl01.nic_public }}:
enabled: true
- name: ${_param:primary_interface}
- mtu: ${_param:interface_mtu}
- proto: manual
- type: eth
- tenant_interface:
- enabled: true
- name: ${_param:tenant_interface}
- mtu: ${_param:interface_mtu}
- proto: manual
- type: eth
- external_interface:
- enabled: true
- name: ${_param:external_interface}
+ name: {{ ma.interface_str(nm.ctl01.nic_public, nm.vlan_public) }}
proto: manual
ovs_port_type: OVSPort
type: ovs_port
@@ -52,7 +52,7 @@ parameters:
address: ${_param:external_address}
netmask: ${_param:opnfv_net_public_mask}
use_interfaces:
- - ${_param:external_interface}
+ - {{ ma.interface_str(nm.ctl01.nic_public, nm.vlan_public) }}
gateway: ${_param:opnfv_net_public_gw}
name_servers: {{ nm.dns_public }}
br-mgmt:
@@ -63,4 +63,4 @@ parameters:
netmask: ${_param:opnfv_net_mgmt_mask}
mtu: ${_param:interface_mtu}
use_interfaces:
- - ${_param:primary_interface}
+ - {{ ma.interface_str(nm.ctl01.nic_mgmt, nm.vlan_mgmt) }}
diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml.j2
index e25d8e301..da6d30601 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml.j2
@@ -91,7 +91,7 @@ parameters:
mysql_barbican_password: opnfv_secret
keystone_barbican_password: opnfv_secret
barbican_simple_crypto_kek: "YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoxMjM0NTY="
- barbican_integration_enabled: false
+ barbican_integration_enabled: true
aodh_version: ${_param:openstack_version}
keystone_aodh_password: opnfv_secret
diff --git a/mcp/reclass/classes/cluster/mcp-odl-noha/opendaylight/control_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-odl-noha/opendaylight/control_pdf.yml.j2
index 5bb591765..5e647d0c0 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-noha/opendaylight/control_pdf.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-odl-noha/opendaylight/control_pdf.yml.j2
@@ -6,6 +6,10 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
{%- import 'net_map.j2' as nm with context %}
+{%- import 'net_macros.j2' as ma with context %}
+{#- Filter-out NIC duplicates by constructing a dict (used NICs only) #}
+{%- set nics = { nm.ctl01.nic_mgmt: True } %}
+{%- set vlans = { nm.vlan_mgmt: nm.ctl01.nic_mgmt } %}
---
parameters:
linux:
@@ -18,13 +22,26 @@ parameters:
type: eth
address: ${_param:pxe_admin_address}
netmask: ${_param:opnfv_net_admin_mask}
+ mtu: ${_param:interface_mtu}
+ noifupdown: true
gateway: {{ nm.net_admin_gw }}
name_servers:
- {{ nm.net_admin_gw }}
- single_int:
+
+{#- prevent duplicates for tagged mgmt on the same physical interface as PXE/admin #}
+{%- if nm.ctl01.nic_admin in nics %}
+ {%- do nics.pop(nm.ctl01.nic_admin) %}
+{%- endif %}
+
+{{ ma.linux_network_interfaces_nic(nics) }}
+
+{{ ma.linux_network_interfaces_vlan(vlans) }}
+
+ br-ctl:
enabled: true
- name: {{ nm.ctl01.nic_mgmt }}
- type: eth
+ type: bridge
proto: static
address: ${_param:single_address}
netmask: ${_param:opnfv_net_mgmt_mask}
+ use_interfaces:
+ - {{ ma.interface_str(nm.ctl01.nic_mgmt, nm.vlan_mgmt) }}
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
index 65792e35e..e9c91ea91 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/compute.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/compute.yml.j2
@@ -6,6 +6,8 @@
# 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
@@ -35,7 +37,7 @@ parameters:
proto: static
address: ${_param:tenant_address}
netmask: ${_param:opnfv_net_private_mask}
- tenant_interface:
+ {{ nm.cmp001.nic_private }}:
type: dpdk # Not a meaningful type, just match 'dpdk' for filtering
{%- else %}
br-mesh:
@@ -45,11 +47,11 @@ parameters:
address: ${_param:tenant_address}
netmask: ${_param:opnfv_net_private_mask}
use_interfaces:
- - ${_param:tenant_interface}
+ - {{ ma.interface_str(nm.cmp001.nic_private, vlan_private_start) }}
{%- endif %}
- external_interface:
+ ovs_port_{{ nm.cmp001.nic_public }}:
enabled: true
- name: ${_param:external_interface}
+ name: {{ ma.interface_str(nm.cmp001.nic_public, nm.vlan_public) }}
proto: manual
ovs_port_type: OVSPort
type: ovs_port
@@ -63,6 +65,6 @@ parameters:
address: ${_param:external_address}
netmask: ${_param:opnfv_net_public_mask}
use_interfaces:
- - ${_param:external_interface}
+ - {{ ma.interface_str(nm.cmp001.nic_public, nm.vlan_public) }}
gateway: ${_param:opnfv_net_public_gw}
name_servers: {{ nm.dns_public }}
diff --git a/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/gateway.yml b/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/gateway.yml.j2
index 678740f40..0bf5502ba 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/gateway.yml
+++ b/mcp/reclass/classes/cluster/mcp-odl-noha/openstack/gateway.yml.j2
@@ -5,6 +5,9 @@
# 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:
- cluster.mcp-common-noha.openstack_gateway
@@ -22,4 +25,4 @@ parameters:
address: ${_param:tenant_address}
netmask: ${_param:opnfv_net_private_mask}
use_interfaces:
- - ${_param:tenant_interface}
+ - {{ ma.interface_str(nm.cmp001.nic_private, vlan_private_start) }}
diff --git a/mcp/reclass/classes/cluster/mcp-ovn-noha/openstack/compute.yml.j2 b/mcp/reclass/classes/cluster/mcp-ovn-noha/openstack/compute.yml.j2
index a6b61645e..ac3555604 100644
--- a/mcp/reclass/classes/cluster/mcp-ovn-noha/openstack/compute.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-ovn-noha/openstack/compute.yml.j2
@@ -6,6 +6,8 @@
# 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.ovn.single
@@ -18,9 +20,9 @@ parameters:
linux:
network:
interface:
- external_interface:
+ ovs_port_{{ nm.cmp001.nic_public }}:
enabled: true
- name: ${_param:external_interface}
+ name: {{ ma.interface_str(nm.cmp001.nic_public, nm.vlan_public) }}
proto: manual
ovs_port_type: OVSPort
type: ovs_port
@@ -33,7 +35,7 @@ parameters:
address: ${_param:tenant_address}
netmask: ${_param:opnfv_net_private_mask}
use_interfaces:
- - ${_param:tenant_interface}
+ - {{ ma.interface_str(nm.cmp001.nic_private, vlan_private_start) }}
br-floating:
enabled: true
type: ovs_bridge
@@ -42,6 +44,6 @@ parameters:
address: ${_param:external_address}
netmask: ${_param:opnfv_net_public_mask}
use_interfaces:
- - ${_param:external_interface}
+ - {{ ma.interface_str(nm.cmp001.nic_public, nm.vlan_public) }}
gateway: ${_param:opnfv_net_public_gw}
name_servers: {{ nm.dns_public }}
diff --git a/mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/compute.yml.j2 b/mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/compute.yml.j2
index 3e4eeceab..df2911104 100644
--- a/mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/compute.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/compute.yml.j2
@@ -37,5 +37,5 @@ parameters:
br-prv:
enabled: true
type: dpdk_ovs_bridge
- tenant_interface:
+ {{ nm.cmp001.nic_private }}:
type: dpdk # Not a meaningful type, just match 'dpdk' for filtering
diff --git a/mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/gateway.yml b/mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/gateway.yml.j2
index 2f9aee6fd..2f89ac3f8 100644
--- a/mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/gateway.yml
+++ b/mcp/reclass/classes/cluster/mcp-ovs-dpdk-noha/openstack/gateway.yml.j2
@@ -5,6 +5,7 @@
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
+{%- import 'net_map.j2' as nm with context %}
---
classes:
- cluster.mcp-common-noha.openstack_gateway
@@ -18,7 +19,7 @@ parameters:
linux:
network:
interface:
- tenant_interface:
+ {{ nm.cmp001.nic_private }}:
ovs_bridge: br-prv
br-prv:
enabled: true
diff --git a/mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/compute.yml.j2 b/mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/compute.yml.j2
index c949de4f4..767b30849 100644
--- a/mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/compute.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/compute.yml.j2
@@ -6,6 +6,8 @@
# 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
@@ -27,4 +29,4 @@ parameters:
address: ${_param:tenant_address}
netmask: ${_param:opnfv_net_private_mask}
use_interfaces:
- - ${_param:tenant_interface}
+ - {{ ma.interface_str(nm.cmp001.nic_private, vlan_private_start) }}
diff --git a/mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/gateway.yml b/mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/gateway.yml.j2
index 5c5547cfc..685402da8 100644
--- a/mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/gateway.yml
+++ b/mcp/reclass/classes/cluster/mcp-ovs-noha/openstack/gateway.yml.j2
@@ -5,6 +5,9 @@
# 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:
- cluster.mcp-common-noha.openstack_gateway
@@ -22,4 +25,4 @@ parameters:
address: ${_param:tenant_address}
netmask: ${_param:opnfv_net_private_mask}
use_interfaces:
- - ${_param:tenant_interface}
+ - {{ ma.interface_str(nm.ctl01.nic_private, vlan_private_start) }}
diff --git a/mcp/scripts/lib.sh b/mcp/scripts/lib.sh
index 4e4f36908..c566cc993 100644
--- a/mcp/scripts/lib.sh
+++ b/mcp/scripts/lib.sh
@@ -546,6 +546,13 @@ function wait_for {
)
}
+function do_udev_cfg {
+ local _conf='/etc/udev/rules.d/99-opnfv-fuel-vnet-mtu.rules'
+ # http://linuxaleph.blogspot.com/2013/01/how-to-network-jumbo-frames-to-kvm-guest.html
+ echo 'SUBSYSTEM=="net", ACTION=="add", KERNEL=="vnet*", RUN+="/sbin/ip link set mtu 9000 dev '"'"%k"'"'"' |& sudo tee "${_conf}"
+ sudo udevadm control --reload || true
+}
+
function do_sysctl_cfg {
local _conf='/etc/sysctl.d/99-opnfv-fuel-bridge.conf'
# https://wiki.libvirt.org/page/Net.bridge.bridge-nf-call_and_sysctl.conf