| heat_template_version: queens |
| |
| parameters: |
| image: |
| type: string |
| description: Name of image to use for servers |
| public_net_id: |
| type: string |
| default: '' |
| description: > |
| ID of public network for which floating IP addresses will be allocated/ |
| for baremetal case flat provision network for nodes |
| lab_network_cidr: |
| type: string |
| default: '10.0.0.0/8' |
| main_network_cidr: |
| type: string |
| default: '10.0.0.0/16' |
| main_control_network_cidr: |
| type: string |
| description: The CIDR of control network, used to detect control interface. |
| default: '10.0.1.0/24' |
| main_tunnel_network_cidr: |
| type: string |
| default: '10.0.2.0/24' |
| main_storage_frontend_network_cidr: |
| type: string |
| default: '10.0.3.0/24' |
| main_storage_backend_network_cidr: |
| type: string |
| default: '10.0.4.0/24' |
| main_private_floating_network_cidr: |
| type: string |
| default: '10.0.5.0/24' |
| main_private_floating_network_interface: |
| type: string |
| default: 'ens4' |
| rack01_network_cidr: |
| type: string |
| default: '10.1.0.0/16' |
| rack01_control_network_cidr: |
| type: string |
| description: The CIDR of control network, used to detect control interface. |
| default: '10.1.1.0/24' |
| rack01_central_router_uplink_network_cidr: |
| type: string |
| default: '192.168.0.0/28' |
| rack02_network_cidr: |
| type: string |
| default: '10.2.0.0/16' |
| rack02_control_network_cidr: |
| type: string |
| description: The CIDR of control network, used to detect control interface. |
| default: '10.2.1.0/24' |
| rack02_central_router_uplink_network_cidr: |
| type: string |
| default: '192.168.0.16/28' |
| main_worker_size: |
| type: number |
| description: Number of workers to deploy |
| default: 3 |
| rack01_cmp_size: |
| type: number |
| description: Number of cmp workers to deploy |
| default: 0 |
| rack02_cmp_size: |
| type: number |
| description: Number of cmp workers to deploy |
| default: 0 |
| cluster_public_key: |
| type: string |
| ucp_metadata: |
| type: json |
| default: {"role":"ucp"} |
| main_worker_metadata: |
| type: json |
| default: {} |
| rack01_cmp_metadata: |
| type: json |
| default: {} |
| rack02_cmp_metadata: |
| type: json |
| default: {} |
| ucp_flavor: |
| type: string |
| default: 'kaas-bm.worker' |
| main_worker_flavor: |
| type: string |
| default: 'system.compact.openstack.control' |
| rack01_cmp_flavor: |
| type: string |
| default: 'system.compact.openstack.control' |
| rack02_cmp_flavor: |
| type: string |
| default: 'system.compact.openstack.control' |
| docker_ee_url: |
| type: string |
| default: 'http://mirror-us.mcp.mirantis.net/.snapshots/docker-ee-bionic-latest' |
| # default: 'https://s3-us-west-2.amazonaws.com/internal-docker-ee-builds/docker-ee-linux/ubuntu' |
| docker_ee_release: |
| type: string |
| default: 'stable-19.03' |
| docker_ucp_image: |
| type: string |
| default: 'docker/ucp:3.2.4' |
| docker_default_address_pool: |
| type: string |
| tunnel_interface: |
| type: string |
| default: '' |
| main_worker_hardware_metadata: |
| type: string |
| default: '' |
| |
| resources: |
| keypair_name: |
| type: OS::Heat::RandomString |
| properties: |
| character_classes: [{"class": "hexdigits", "min": 1}] |
| length: 128 |
| salt: constant |
| key_pair: |
| type: OS::Nova::KeyPair |
| properties: |
| name: { get_attr: [keypair_name, value] } |
| public_key: { get_param: cluster_public_key } |
| save_private_key: false |
| |
| central_site: |
| type: MCP2::CentralSite |
| properties: |
| ucp_metadata: { get_param: ucp_metadata} |
| docker_ee_url: { get_param: docker_ee_url } |
| docker_ee_release: { get_param: docker_ee_release } |
| docker_ucp_image: { get_param: docker_ucp_image} |
| docker_default_address_pool: { get_param: docker_default_address_pool } |
| key_name: { get_attr: [keypair_name, value] } |
| image: { get_param: image } |
| ucp_flavor: { get_param: ucp_flavor } |
| public_net_id: { get_param: public_net_id } |
| control_network_cidr: { get_param: main_control_network_cidr } |
| tunnel_network_cidr: { get_param: main_tunnel_network_cidr } |
| storage_frontend_network_cidr: { get_param: main_storage_frontend_network_cidr } |
| storage_backend_network_cidr: { get_param: main_storage_backend_network_cidr } |
| private_floating_network_cidr: { get_param: main_private_floating_network_cidr } |
| private_floating_network_interface: { get_param: main_private_floating_network_interface } |
| worker_size: { get_param: main_worker_size } |
| worker_flavor: { get_param: main_worker_flavor } |
| worker_metadata: { get_param: main_worker_metadata } |
| worker_hardware_metadata: { get_param: main_worker_hardware_metadata } |
| |
| rack01_router_routes: |
| type: MCP2::RackRouterRoutes |
| properties: |
| central_router: { get_attr: [central_site, router_id] } |
| central_router_uplink_network_cidr: { get_param: rack01_central_router_uplink_network_cidr } |
| site_cidr: { get_param: rack01_network_cidr } |
| lab_network_cidr: { get_param: lab_network_cidr } |
| public_net_id: { get_param: public_net_id } |
| |
| rack01: |
| depends_on: |
| - central_site |
| type: MCP2::Rack |
| properties: |
| docker_ee_url: { get_param: docker_ee_url } |
| docker_ee_release: { get_param: docker_ee_release } |
| docker_ucp_image: { get_param: docker_ucp_image} |
| docker_default_address_pool: { get_param: docker_default_address_pool } |
| key_name: { get_attr: [keypair_name, value] } |
| image: { get_param: image } |
| public_net_id: { get_param: public_net_id } |
| control_network_cidr: { get_param: rack01_control_network_cidr } |
| cmp_size: { get_param: rack01_cmp_size } |
| cmp_flavor: { get_param: rack01_cmp_flavor } |
| cmp_metadata: { get_param: rack01_cmp_metadata } |
| ucp_master_host: { get_attr: [central_site, ucp_control_ip] } |
| rack_router: {get_attr: [rack01_router_routes, router_id] } |
| |
| rack02_router_routes: |
| depends_on: |
| - rack01_router_routes |
| type: MCP2::RackRouterRoutes |
| properties: |
| central_router: { get_attr: [central_site, router_id] } |
| central_router_uplink_network_cidr: { get_param: rack02_central_router_uplink_network_cidr } |
| site_cidr: { get_param: rack02_network_cidr } |
| lab_network_cidr: { get_param: lab_network_cidr } |
| public_net_id: { get_param: public_net_id } |
| |
| rack02: |
| depends_on: |
| - central_site |
| type: MCP2::Rack |
| properties: |
| docker_ee_url: { get_param: docker_ee_url } |
| docker_ee_release: { get_param: docker_ee_release } |
| docker_ucp_image: { get_param: docker_ucp_image} |
| docker_default_address_pool: { get_param: docker_default_address_pool } |
| key_name: { get_attr: [keypair_name, value] } |
| image: { get_param: image } |
| public_net_id: { get_param: public_net_id } |
| control_network_cidr: { get_param: rack02_control_network_cidr } |
| cmp_size: { get_param: rack02_cmp_size } |
| cmp_flavor: { get_param: rack02_cmp_flavor } |
| cmp_metadata: { get_param: rack02_cmp_metadata } |
| ucp_master_host: { get_attr: [central_site, ucp_control_ip] } |
| rack_router: {get_attr: [rack02_router_routes, router_id] } |
| |
| outputs: |
| central_site_worker_public_ip: |
| description: IP address of server in private network |
| value: { get_attr: [central_site, worker_public_ip] } |
| ucp_public_ip: |
| description: IP address of server in private network |
| value: { get_attr: [central_site, ucp_public_ip] } |
| central_site_worker_wc_data: |
| description: Metadata from instance |
| value: { get_attr: [central_site, worker_wc_data]} |
| rack01_cmp_public_ip: |
| value: { get_attr: [rack01, cmp_public_ip] } |
| rack02_cmp_public_ip: |
| value: { get_attr: [rack02, cmp_public_ip] } |