aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/reclass/classes/cluster/mcp-odl-ha
diff options
context:
space:
mode:
Diffstat (limited to 'mcp/reclass/classes/cluster/mcp-odl-ha')
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-ha/infra/config.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-odl-ha/infra/config.yml)19
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-ha/infra/kvm.yml.j219
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-ha/infra/maas.yml.j27
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-ha/opendaylight/control.yml.j27
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-ha/openstack/compute.yml17
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-ha/openstack/control.yml8
-rw-r--r--mcp/reclass/classes/cluster/mcp-odl-ha/openstack/init.yml.j226
7 files changed, 77 insertions, 26 deletions
diff --git a/mcp/reclass/classes/cluster/mcp-odl-ha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-odl-ha/infra/config.yml.j2
index f72993f89..950c49355 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-ha/infra/config.yml
+++ b/mcp/reclass/classes/cluster/mcp-odl-ha/infra/config.yml.j2
@@ -7,17 +7,26 @@
##############################################################################
---
classes:
- - system.reclass.storage.system.opendaylight_control_single
- cluster.mcp-common-ha.infra.config
- cluster.mcp-odl-ha.infra
parameters:
+ _param:
+ opendaylight_server_node01_hostname: odl01
+ opendaylight_server_node02_hostname: odl02
+ opendaylight_server_node03_hostname: odl03
reclass:
storage:
node:
- opendaylight_control_node01:
+{%- for i in range(1, 4) %}
+ opendaylight_control_node0{{ i }}:
+ name: ${_param:opendaylight_server_node0{{ i }}_hostname}
+ domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.opendaylight.control
params:
- linux_system_codename: xenial
- single_address: ${_param:opendaylight_server_node01_single_address}
- pxe_admin_address: ${_param:opnfv_opendaylight_server_node01_pxe_admin_address}
+ salt_master_host: ${_param:reclass_config_master}
+ linux_system_codename: ${_param:linux_system_codename}
+ single_address: ${_param:opendaylight_server_node0{{ i }}_address}
+ pxe_admin_address: ${_param:opnfv_opendaylight_server_node0{{ i }}_pxe_admin_address}
+ keepalived_vip_priority: 10{{ i }}
+{%- endfor %}
diff --git a/mcp/reclass/classes/cluster/mcp-odl-ha/infra/kvm.yml.j2 b/mcp/reclass/classes/cluster/mcp-odl-ha/infra/kvm.yml.j2
index ab0da39b3..9ff091941 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-ha/infra/kvm.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-odl-ha/infra/kvm.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 %}
---
{%- if conf.MCP_VCP %}
# NOTE(armband): we don't want to pull in salt.control for novcp
@@ -24,9 +25,19 @@ parameters:
cluster:
internal:
node:
- odl01:
- name: ${_param:opendaylight_server_node01_hostname}
- provider: ${_param:infra_kvm_node02_hostname}.${_param:cluster_domain}
- image: ${_param:salt_control_xenial_image}
+ {%- for i in range(1, 4) %}
+ odl0{{ i }}:
+ name: ${_param:opendaylight_server_node0{{ i }}_hostname}
+ provider: ${_param:infra_kvm_node0{{ i }}_hostname}.${_param:cluster_domain}
+ image: ${_param:salt_control_bionic_image}
size: opendaylight.server
+ {%- if conf.nodes[nm.ctl01.idx].node.arch == 'aarch64' %}
+ machine: virt
+ cpu_mode: host-passthrough
+ loader:
+ readonly: 'yes'
+ type: pflash
+ path: /usr/share/AAVMF/AAVMF_CODE.fd
+ {%- endif %}
+ {%- endfor %}
{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-odl-ha/infra/maas.yml.j2 b/mcp/reclass/classes/cluster/mcp-odl-ha/infra/maas.yml.j2
index c06643089..3a87ab558 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-ha/infra/maas.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-odl-ha/infra/maas.yml.j2
@@ -8,10 +8,5 @@
{%- import 'net_map.j2' as nm with context %}
---
classes:
- - cluster.mcp-common-ha.infra.maas
- cluster.mcp-odl-ha.infra
-{%- if 'aarch64' not in nm.cluster.arch %}
-parameters:
- _param:
- hwe_kernel: 'ga-16.04'
-{%- endif %}
+ - cluster.all-mcp-arch-common.infra.maas
diff --git a/mcp/reclass/classes/cluster/mcp-odl-ha/opendaylight/control.yml.j2 b/mcp/reclass/classes/cluster/mcp-odl-ha/opendaylight/control.yml.j2
index 685cd9ec1..23d1072d7 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-ha/opendaylight/control.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-odl-ha/opendaylight/control.yml.j2
@@ -7,14 +7,14 @@
##############################################################################
---
classes:
- - service.opendaylight.server.single
+ - service.opendaylight.server.cluster
- cluster.mcp-common-ha.openstack_interface_vcp_biport
{%- if conf.MCP_VCP %}
- cluster.mcp-odl-ha
{%- endif %}
parameters:
_param:
- linux_system_codename: xenial
+ linux_system_codename: bionic
opendaylight:
server:
odl_bind_ip: ${_param:single_address}
@@ -22,9 +22,12 @@ parameters:
java_min_mem: 6g
java_max_mem: 6g
router_enabled: true
+ netvirt_natservice:
+ nat_mode: conntrack
karaf_features:
odl_default:
- odl-restconf-all
- odl-aaa-authn
netvirt:
- odl-netvirt-openstack
+ seed_nodes_list: {%- for i in range(1, 4) %} ${_param:opendaylight_server_node0{{ i }}_address}{%- endfor %}
diff --git a/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/compute.yml b/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/compute.yml
index 992d1c8bf..3a49a69be 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/compute.yml
+++ b/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/compute.yml
@@ -15,3 +15,20 @@ parameters:
neutron:
gateway:
agent_mode: ${_param:neutron_gateway_agent_mode}
+ backend:
+ ovsdb_connection: tcp:127.0.0.1:6640
+ opendaylight:
+ ovsdb_server_iface: ptcp:6640:127.0.0.1
+ linux:
+ 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
diff --git a/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/control.yml b/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/control.yml
index 7b03f29e4..fe5a29714 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/control.yml
+++ b/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/control.yml
@@ -17,7 +17,11 @@ parameters:
openrc_extra:
# For HA, all public services are available through nginx on prx
sdn_controller_ip: ${_param:cluster_public_host}
- sdn_username: admin # Hardcoded to default ODL values for now
- sdn_password: admin
+ sdn_controller_user: admin # Hardcoded to default ODL values for now
+ sdn_controller_password: ${_param:opendaylight_password}
sdn_controller_webport: ${_param:opendaylight_rest_port}
sdn_controller_restconfport: ${_param:opendaylight_rest_port}
+ neutron:
+ server:
+ backend:
+ password: ${_param:opendaylight_password}
diff --git a/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/init.yml.j2 b/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/init.yml.j2
index 6301e737a..1dd02bb8a 100644
--- a/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/init.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-odl-ha/openstack/init.yml.j2
@@ -10,18 +10,30 @@ classes:
- cluster.mcp-common-ha.openstack_init
parameters:
_param:
+ neutron_tenant_network_types: "flat,vxlan"
+
# opendaylight options
- opendaylight_service_host: ${_param:opendaylight_server_node01_single_address}
+ opendaylight_service_host: ${_param:opnfv_opendaylight_server_address}
opendaylight_rest_port: 8282
-
- neutron_tenant_network_types: "flat,vxlan"
{%- if conf.MCP_VCP %}
+ opendaylight_server_node01_hostname: odl01
+ opendaylight_server_node02_hostname: odl02
+ opendaylight_server_node03_hostname: odl03
+ opendaylight_server_node01_address: ${_param:opnfv_opendaylight_server_node01_address}
+ opendaylight_server_node02_address: ${_param:opnfv_opendaylight_server_node02_address}
+ opendaylight_server_node03_address: ${_param:opnfv_opendaylight_server_node03_address}
linux:
network:
host:
- odl01:
- address: ${_param:opendaylight_service_host}
+ {%- for i in range(1, 4) %}
+ odl0{{ i }}:
+ address: ${_param:opendaylight_server_node0{{ i }}_address}
names:
- - ${_param:opendaylight_server_node01_hostname}
- - ${_param:opendaylight_server_node01_hostname}.${_param:cluster_domain}
+ - ${_param:opendaylight_server_node0{{ i }}_hostname}
+ - ${_param:opendaylight_server_node0{{ i }}_hostname}.${_param:cluster_domain}
+ {%- endfor %}
+{%- else %}
+ opendaylight_control_hostname: ${_param:openstack_control_node02_hostname}
+ opendaylight_server_node01_hostname: ${_param:opendaylight_control_hostname}
+ opendaylight_server_node01_address: ${_param:opnfv_openstack_control_node02_address}
{%- endif %}