diff options
Diffstat (limited to 'mcp/reclass/classes/cluster/mcp-ovn-ha')
14 files changed, 242 insertions, 0 deletions
diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/config.yml new file mode 100644 index 000000000..6cfca4f78 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/config.yml @@ -0,0 +1,12 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - cluster.mcp-common-ha.infra.config + - cluster.mcp-ovn-ha.infra + - cluster.all-mcp-arch-common.infra.config_pdf diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/init.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/init.yml new file mode 100644 index 000000000..198e460de --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/init.yml @@ -0,0 +1,14 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - cluster.mcp-common-ha.infra + - cluster.mcp-ovn-ha.openstack +parameters: + _param: + cluster_name: mcp-ovn-ha diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/init_vcp.yml.j2 b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/init_vcp.yml.j2 new file mode 100644 index 000000000..d62335703 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/init_vcp.yml.j2 @@ -0,0 +1,12 @@ +############################################################################## +# 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 +############################################################################## +--- +{%- if conf.MCP_VCP %} +classes: + - cluster.mcp-ovn-ha.infra +{%- endif %} diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/kvm.yml.j2 b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/kvm.yml.j2 new file mode 100644 index 000000000..1e6ed8554 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/kvm.yml.j2 @@ -0,0 +1,14 @@ +############################################################################## +# 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 +############################################################################## +--- +{%- if conf.MCP_VCP %} +# NOTE(armband): we don't want to pull in salt.control for novcp +classes: + - cluster.mcp-common-ha.infra.kvm + - cluster.mcp-ovn-ha.infra +{%- endif %} diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/maas.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/maas.yml new file mode 100644 index 000000000..5007749d1 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/infra/maas.yml @@ -0,0 +1,11 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - cluster.mcp-ovn-ha.infra + - cluster.all-mcp-arch-common.infra.maas diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/init.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/init.yml new file mode 100644 index 000000000..a8cb4d8f8 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/init.yml @@ -0,0 +1,12 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - cluster.all-mcp-arch-common + - cluster.mcp-ovn-ha.infra + - cluster.mcp-ovn-ha.openstack diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/compute.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/compute.yml new file mode 100644 index 000000000..9af431b9a --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/compute.yml @@ -0,0 +1,17 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - service.neutron.compute.ovn.single + - cluster.mcp-common-ha.openstack_compute + - cluster.mcp-ovn-ha.openstack.compute_pdf + - cluster.mcp-ovn-ha.infra +parameters: + neutron: + gateway: + ~message_queue: ~ diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/compute_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/compute_pdf.yml.j2 new file mode 100644 index 000000000..f3844ad8c --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/compute_pdf.yml.j2 @@ -0,0 +1,36 @@ +############################################################################## +# 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 %} +{#- Filter-out NIC duplicates by constructing a dict (used NICs only) #} +{%- set nics = { nm.cmp001.nic_private: True } %} +{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %} +{%- set vlans = { vlan_private_start: nm.cmp001.nic_private } %} +--- +parameters: + linux: + network: + interface: + +{#- 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-mesh: + enabled: true + type: bridge + address: ${_param:tenant_address} + netmask: ${_param:opnfv_net_private_mask} + mtu: 1500 + use_interfaces: + - {{ ma.interface_str(nm.cmp001.nic_private, vlan_private_start) }} diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/control.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/control.yml new file mode 100644 index 000000000..94ca6ebb8 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/control.yml @@ -0,0 +1,53 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - system.neutron.control.cluster + - cluster.mcp-common-ha.openstack_interface_vcp_biport + - cluster.mcp-common-ha.openstack_control + - cluster.mcp-ovn-ha.infra +parameters: + _param: + neutron_control_dvr: "False" + neutron_l3_ha: "False" + neutron_global_physnet_mtu: 1500 + neutron_external_mtu: 1500 + neutron_enable_qos: "False" + neutron_enable_vlan_aware_vms: "False" + neutron: + server: + global_physnet_mtu: ${_param:neutron_global_physnet_mtu} + l3_ha: ${_param:neutron_l3_ha} + dvr: ${_param:neutron_control_dvr} + qos: ${_param:neutron_enable_qos} + vlan_aware_vms: ${_param:neutron_enable_vlan_aware_vms} + backend: + engine: ovn + tenant_network_types: "${_param:neutron_tenant_network_types}" + external_mtu: ${_param:neutron_external_mtu} + mechanism: + ovn: + driver: ovn + ovn: + metadata_enabled: true + compute: + region: ${_param:openstack_region} + database: + host: ${_param:opnfv_openstack_database_address} + identity: + region: ${_param:openstack_region} + message_queue: + members: + - host: ${_param:openstack_message_queue_node01_address} + - host: ${_param:openstack_message_queue_node02_address} + - host: ${_param:openstack_message_queue_node03_address} + ovn_ctl_opts: + db-nb-create-insecure-remote: 'yes' + db-sb-create-insecure-remote: 'yes' + db-nb-addr: ${_param:cluster_vip_address} + db-sb-addr: ${_param:cluster_vip_address} diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/database.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/database.yml new file mode 100644 index 000000000..f0e96daa6 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/database.yml @@ -0,0 +1,12 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - cluster.mcp-common-ha.openstack_interface_vcp_biport + - cluster.mcp-common-ha.openstack_database + - cluster.mcp-ovn-ha.infra.init_vcp diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/init.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/init.yml new file mode 100644 index 000000000..737af52e3 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/init.yml @@ -0,0 +1,13 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - cluster.mcp-common-ha.openstack_init +parameters: + _param: + neutron_tenant_network_types: "geneve,flat" diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/message_queue.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/message_queue.yml new file mode 100644 index 000000000..9b2f5c1c0 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/message_queue.yml @@ -0,0 +1,12 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - cluster.mcp-common-ha.openstack_interface_vcp_biport + - cluster.mcp-common-ha.openstack_message_queue + - cluster.mcp-ovn-ha.infra.init_vcp diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/proxy.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/proxy.yml new file mode 100644 index 000000000..3979af548 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/proxy.yml @@ -0,0 +1,12 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - cluster.mcp-common-ha.openstack_interface_vcp_triport + - cluster.mcp-common-ha.openstack_proxy + - cluster.mcp-ovn-ha.infra.init_vcp diff --git a/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/telemetry.yml b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/telemetry.yml new file mode 100644 index 000000000..aee142c43 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-ovn-ha/openstack/telemetry.yml @@ -0,0 +1,12 @@ +############################################################################## +# 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 +############################################################################## +--- +classes: + - cluster.mcp-common-ha.openstack_interface_vcp_biport + - cluster.mcp-common-ha.openstack_telemetry + - cluster.mcp-ovn-ha.infra.init_vcp |