summaryrefslogtreecommitdiffstats
path: root/mcp/reclass/classes/cluster/mcp-common-noha
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2018-04-07 05:27:48 +0200
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2018-06-19 15:47:11 +0200
commit33c017d388bf0f9cef5199c186bec5b4fd01f767 (patch)
tree7a90ebe50f00224bb51dce6bc772b9ec9d8c5e8c /mcp/reclass/classes/cluster/mcp-common-noha
parent3dbd313cc111455f8cf88d0d072ec8a2f3c6f705 (diff)
Enforce static configuration instead of DHCP
- noha: 'accept_policy: open_mode' to align with ha scenarios; - s/cmp01/cmp001/g to align all scenarios and allow code reuse; - rename network params: s/dhcp/mcpcontrol/g, cleanup; - computes XDF data: drop 'opnfv_*' layer of params, cleanup; - local vPDF: add comments with default roles by node index; - parameterize all netmasks; - drop unused address/netmask for 'proto: manual' interfaces; - virsh_net: cleanup definitions, remove hardcodes, align IP on jumpserver and DHCP range with MaaS for pxebr; - maas: parameterize hardcoded '/24' cidr for PXE/admin, refactor maas.region.machines parameterization; - merge <all-mcp-arch-common/infra/config_*pdf.yaml.j2> templates; - move reclass.storage definitions of compute nodes to common dir; - drop 'openstack_compute_*' reclass params in favor of expanding them via j2 directly in reclass.storage params; - adopt `nm.cluster.has_*_nodes` where possible; - obsolete `runtime.yml` from reclass model; - refactor arch-specific reclass param selection; - remove unused defaults in favor of mandatory IDF properties; - noha: prepare for baremetal node support in cinder_lvm_devices; - interfaces: add interface_mtu and 'noifupdown: true' everywhere; - interfaces: use j2 macros to generate eth/vlan config; - states cleanup: remove DHCP route disable workaround on prx/cmp; - allow configuring NTP servers via: `idf.fuel.network.ntp_strata_host{1,2}`; - ovs_bridge: Allow setting gateway, dns-nameservers - apache: Adjust module list for novcp class inheritance; - glusterfs PPA: pin with same prio of MCP repos for novcp scenario; JIRA: FUEL-319 JIRA: FUEL-326 JIRA: FUEL-337 Change-Id: Ia6ad64ba8cade85a75fb22c9a2505decc3834360 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'mcp/reclass/classes/cluster/mcp-common-noha')
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/infra/config.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-common-noha/infra/config.yml)41
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/init_options.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute_pdf.yml.j217
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_control.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_control_pdf.yml.j212
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_gateway_pdf.yml.j212
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml)19
8 files changed, 51 insertions, 56 deletions
diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-common-noha/infra/config.yml.j2
index 0a2924bac..ac53e8225 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/infra/config.yml
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/infra/config.yml.j2
@@ -5,34 +5,22 @@
# 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:
- - service.git.client
- - system.linux.system.single
- - system.linux.system.repo.mcp.salt
- - system.salt.master.api
- - system.salt.master.pkg
- - system.reclass.storage.salt
- - system.salt.minion.ca.salt_master
- system.mysql.client.single
- - system.reclass.storage.system.openstack_compute_multi
+ - cluster.all-mcp-arch-common.infra.config_pdf
parameters:
_param:
openstack_control_node01_hostname: ctl01
- reclass_data_repository: local
- reclass_config_master: ${_param:opnfv_infra_config_pxe_address}
- salt_master_environment_repository: "https://github.com/tcpcloud"
- salt_master_environment_revision: master
+ reclass_config_master: ${_param:opnfv_infra_config_pxe_admin_address}
single_address: ${_param:opnfv_infra_config_address}
salt_master_host: 127.0.0.1
- salt_master_base_environment: prd
salt_minion_ca_host: ${linux:network:fqdn}
- # yamllint disable-line rule:line-length
- salt_api_password_hash: "$6$sGnRlxGf$al5jMCetLP.vfI/fTl3Z0N7Za1aeiexL487jAtyRABVfT3NlwZxQGVhO7S1N8OwS/34VHYwZQA8lkXwKMN/GS1"
linux:
network:
interface:
- dhcp:
+ mcpcontrol_int:
enabled: true
type: eth
proto: dhcp
@@ -43,14 +31,14 @@ parameters:
type: eth
proto: static
address: ${_param:single_address}
- netmask: 255.255.255.0
- pxe:
+ netmask: ${_param:opnfv_net_mgmt_mask}
+ pxe_admin_int:
enabled: true
type: eth
proto: static
name: ${_param:opnfv_fn_vm_tertiary_interface}
- address: ${_param:opnfv_infra_config_pxe_address}
- netmask: 255.255.255.0
+ address: ${_param:opnfv_infra_config_pxe_admin_address}
+ netmask: ${_param:opnfv_net_admin_mask}
salt:
master:
file_recv: true
@@ -58,8 +46,6 @@ parameters:
command_timeout: 20
reclass:
storage:
- data_source:
- engine: local
node:
openstack_control_node01:
name: ${_param:openstack_control_node01_hostname}
@@ -70,13 +56,4 @@ parameters:
linux_system_codename: xenial
salt_master_host: ${_param:reclass_config_master}
single_address: ${_param:openstack_control_node01_address}
- openstack_compute_node01:
- params:
- single_address: ${_param:opnfv_openstack_compute_node01_control_address}
- tenant_address: ${_param:opnfv_openstack_compute_node01_tenant_address}
- external_address: ${_param:opnfv_openstack_compute_node01_external_address}
- openstack_compute_node02:
- params:
- single_address: ${_param:opnfv_openstack_compute_node02_control_address}
- tenant_address: ${_param:opnfv_openstack_compute_node02_tenant_address}
- external_address: ${_param:opnfv_openstack_compute_node02_external_address}
+ pxe_admin_address: ${_param:opnfv_openstack_control_node01_pxe_admin_address}
diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/init_options.yml b/mcp/reclass/classes/cluster/mcp-common-noha/init_options.yml
index 69aba92ad..462ab8312 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/init_options.yml
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/init_options.yml
@@ -24,5 +24,3 @@ parameters:
openstack_message_queue_node03_address: ${_param:openstack_control_node03_address}
openstack_gateway_address: ${_param:opnfv_openstack_gateway_node01_address}
control_address: ${_param:openstack_control_address}
- ntp_strata_host1: 1.se.pool.ntp.org
- ntp_strata_host2: 0.se.pool.ntp.org
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 edd7f9f58..671f6eb07 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute.yml
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_compute.yml
@@ -21,7 +21,7 @@ parameters:
_param:
interface_mtu: 9000
linux_system_codename: xenial
- ~cinder_lvm_devices: ['/dev/vdb']
+ single_address: ${_param:control_address}
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 64af148fd..aebd88828 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
@@ -10,6 +10,15 @@
---
parameters:
_param:
+ # Should later be determined via PDF/IDF, AArch64 has ESP on /dev/sda1
+{%- if conf.nodes[nm.cmp001.idx].node.type == 'virtual' %}
+ ~cinder_lvm_devices: ['/dev/vdb']
+{%- elif conf.nodes[nm.cmp001.idx].node.arch == 'aarch64' or
+ conf.nodes[nm.cmp001.idx].disks.0.disk_capacity | storage_size_num | float > 2000000000000 %}
+ ~cinder_lvm_devices: ['/dev/sda2']
+{%- 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 }}
@@ -17,11 +26,13 @@ parameters:
network:
bridge: openvswitch
interface:
- dhcp_int:
+ pxe_admin_int:
enabled: true
name: {{ nm.cmp001.nic_admin }}
- proto: dhcp
+ proto: static
type: eth
+ address: ${_param:pxe_admin_address}
+ netmask: ${_param:opnfv_net_admin_mask}
mtu: ${_param:interface_mtu}
primary_interface:
enabled: true
@@ -39,6 +50,6 @@ parameters:
type: bridge
proto: static
address: ${_param:single_address}
- netmask: 255.255.255.0
+ netmask: ${_param:opnfv_net_mgmt_mask}
use_interfaces:
- ${_param:primary_interface}
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 c4915c795..f458281ce 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control.yml
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_control.yml
@@ -150,7 +150,7 @@ parameters:
path: /srv/nova/instances
host:
nova:
- host: ${_param:single_address}/24
+ host: ${_param:single_address}/${_param:opnfv_net_mgmt_mask}
params:
- rw
- no_root_squash
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 8219637dc..b0b55afb9 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
@@ -11,22 +11,26 @@ parameters:
linux:
network:
interface:
- dhcp_int:
+ pxe_admin_int:
enabled: true
name: {{ nm.ctl01.nic_admin }}
- proto: dhcp
+ proto: static
type: eth
+ address: ${_param:pxe_admin_address}
+ netmask: ${_param:opnfv_net_admin_mask}
single_int:
enabled: true
name: {{ nm.ctl01.nic_mgmt }}
type: eth
proto: static
address: ${_param:single_address}
- netmask: 255.255.255.0
+ netmask: ${_param:opnfv_net_mgmt_mask}
public_int:
enabled: true
name: {{ nm.ctl01.nic_public }}
type: eth
proto: static
address: ${_param:cluster_public_host}
- netmask: 255.255.255.0
+ netmask: ${_param:opnfv_net_public_mask}
+ gateway: ${_param:opnfv_net_public_gw}
+ name_servers: {{ nm.dns_public }}
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 7067d59a4..6bd61a2d4 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
@@ -16,11 +16,13 @@ parameters:
network:
bridge: openvswitch
interface:
- dhcp_int:
+ pxe_admin_int:
enabled: true
name: {{ nm.ctl01.nic_admin }}
- proto: dhcp
+ proto: static
type: eth
+ address: ${_param:pxe_admin_address}
+ netmask: ${_param:opnfv_net_admin_mask}
mtu: ${_param:interface_mtu}
primary_interface:
enabled: true
@@ -40,6 +42,8 @@ parameters:
mtu: ${_param:interface_mtu}
proto: manual
type: eth
+ gateway: ${_param:opnfv_net_public_gw}
+ name_servers: {{ nm.dns_public }}
br-floating:
enabled: true
type: ovs_bridge
@@ -49,7 +53,7 @@ parameters:
type: bridge
proto: static
address: ${_param:single_address}
- netmask: 255.255.255.0
+ netmask: ${_param:opnfv_net_mgmt_mask}
mtu: ${_param:interface_mtu}
use_interfaces:
- ${_param:primary_interface}
@@ -63,7 +67,7 @@ parameters:
type: bridge
mtu: ${_param:interface_mtu}
address: ${_param:external_address}
- netmask: 255.255.255.0
+ netmask: ${_param:opnfv_net_public_mask}
use_interfaces:
- ${_param:external_interface}
use_ovs_ports:
diff --git a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml.j2
index f76333374..a62057ac3 100644
--- a/mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.yml
+++ b/mcp/reclass/classes/cluster/mcp-common-noha/openstack_init.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 %}
---
parameters:
_param:
@@ -122,13 +123,13 @@ parameters:
names:
- gtw01
- gtw01.${_param:cluster_domain}
- cmp01:
- address: ${_param:opnfv_openstack_compute_node01_control_address}
+{#- For compute nodes, expand values in-place, bypassing reclass param expansion #}
+{%- for cmp in range(1, nm.cmp_nodes + 1) %}
+ {%- set h = 'cmp%03d' | format(cmp) %}
+ {%- set mgmt = nm.net_mgmt_hosts | length + nm.start_ip[nm.net_mgmt] + loop.index %}
+ {{ h }}:
+ address: {{ nm.net_mgmt | ipnet_hostaddr(mgmt) }}
names:
- - cmp01
- - cmp01.${_param:cluster_domain}
- cmp02:
- address: ${_param:opnfv_openstack_compute_node02_control_address}
- names:
- - cmp02
- - cmp02.${_param:cluster_domain}
+ - {{ h }}
+ - {{ h }}.${_param:cluster_domain}
+{%- endfor %}