1 ##############################################################################
2 # Copyright (c) 2018 Mirantis Inc., Enea AB and others.
3 # All rights reserved. This program and the accompanying materials
4 # are made available under the terms of the Apache License, Version 2.0
5 # which accompanies this distribution, and is available at
6 # http://www.apache.org/licenses/LICENSE-2.0
7 ##############################################################################
8 {%- import 'net_map.j2' as nm with context %}
10 # NOTE: pod_config is generated and transferred into its final location on
11 # cfg01 only during deployment to prevent leaking sensitive data
13 - system.maas.region.single
14 - service.maas.cluster.single
15 - cluster.all-mcp-arch-common.opnfv.lab_proxy_pdf
16 - cluster.all-mcp-arch-common.opnfv.pod_config
19 mcpcontrol_interface: ${_param:opnfv_fn_vm_primary_interface}
20 primary_interface: ${_param:opnfv_fn_vm_secondary_interface}
21 pxe_admin_interface: ${_param:opnfv_fn_vm_tertiary_interface}
22 linux_system_codename: xenial
23 maas_admin_username: opnfv
24 dns_server01: '{{ nm.dns_public[0] }}'
25 pxe_admin_address: ${_param:infra_maas_node01_deploy_address}
26 single_address: ${_param:pxe_admin_address}
27 hwe_kernel: 'hwe-16.04'
28 opnfv_maas_timeout_comissioning: {{ nm.maas_timeout_comissioning }}
29 opnfv_maas_timeout_deploying: {{ nm.maas_timeout_deploying }}
32 {%- if '-ovs-' in conf.MCP_DEPLOY_SCENARIO or '-fdio-' in conf.MCP_DEPLOY_SCENARIO %}
35 comment: 'Enable 1G pagesizes on aarch64'
36 definition: '//capability[@id="asimd"]'
37 kernel_opts: 'default_hugepagesz=1G hugepagesz=1G'
40 # Set maas.wait_for_<state> timeouts to ~2.5x of MaaS <state> timeout
41 ready: {{ nm.maas_timeout_comissioning * 150 }}
42 deployed: {{ nm.maas_timeout_deploying * 150 }}
44 boot_sources_delete_all_others: true
47 url: http://images.maas.io/ephemeral-v3/daily
48 keyring_file: /usr/share/keyrings/ubuntu-cloudimage-keyring.gpg
49 boot_sources_selections:
51 url: "http://images.maas.io/ephemeral-v3/daily"
53 release: "${_param:linux_system_codename}"
55 {%- for arch in nm.cluster.arch %}
56 - "{{ arch | dpkg_arch }}"
66 description: Fabric for PXE/admin
70 description: PXE/admin VLAN
72 primary_rack: "${linux:network:hostname}"
75 name: {{ nm.net_admin }}
76 cidr: {{ nm.net_admin }}
77 gateway_ip: ${_param:single_address}
78 fabric: ${maas:region:fabrics:pxe_admin:name}
82 start: {{ nm.net_admin_pool_start }}
83 end: {{ nm.net_admin_pool_end }}
86 - '{{ conf.MAAS_SSH_KEY }}'
87 {%- if 'aarch64' in nm.cluster.arch %}
92 url: 'http://linux.enea.com/mcp-repos/${_param:armband_repo_version}/${_param:linux_system_codename}'
93 distributions: '${_param:armband_repo_version}-armband'
96 key: ${_param:armband_key}
98 salt_master_ip: ${_param:reclass_config_master}
99 domain: ${_param:cluster_domain}
102 active_discovery_interval: 600
103 ntp_external_only: true
104 upstream_dns: ${_param:dns_server01}
105 commissioning_distro_series: 'xenial'
106 default_distro_series: 'xenial'
107 default_osystem: 'ubuntu'
108 default_storage_layout: 'lvm'
109 enable_http_proxy: true
110 disk_erase_with_secure_erase: false
111 dnssec_validation: 'no'
112 enable_third_party_drivers: true
113 network_discovery: 'enabled'
114 default_min_hwe_kernel: ${_param:hwe_kernel}
116 saltstack_repo_xenial: "deb [arch=amd64] http://repo.saltstack.com/apt/ubuntu/16.04/amd64/2017.7/ xenial main"
121 net.ipv4.ip_forward: 1
124 mcpcontrol_interface:
126 name: ${_param:mcpcontrol_interface}
129 mtu: ${_param:interface_mtu}
132 name: ${_param:primary_interface}
134 {%- if conf.idf.fuel.jumphost.get('trunks', {}).get('mgmt', False) and (nm.vlan_mgmt | int > 0) %}
136 mtu: ${_param:interface_mtu}
137 primary_interface_vlan:
140 name: ${_param:primary_interface}.{{ nm.vlan_mgmt }}
142 - ${_param:primary_interface}
145 mtu: ${_param:interface_mtu}
146 address: ${_param:infra_maas_node01_address}
147 netmask: ${_param:opnfv_net_mgmt_mask}
150 name: ${_param:pxe_admin_interface}
151 # MaaS has issues using MTU > 1500 for PXE interface
154 address: ${_param:single_address}
155 netmask: ${_param:opnfv_net_admin_mask}
163 persistent_config: /etc/iptables/rules.v4
173 rule: -s ${_param:single_address}/${_param:opnfv_net_admin_mask}
175 rule: -d ${_param:single_address}/${_param:opnfv_net_admin_mask}
182 rule: -s ${_param:single_address}/${_param:opnfv_net_admin_mask}