+#
+# Generated by scripts/gen-onap-oom-yaml.sh; MANUAL CHANGES WILL BE LOST
+#
heat_template_version: 2015-10-15
description: ONAP on Kubernetes using OOM
type: string
description: The ID of the Public network for floating IP address allocation
- public_net_name:
+ oam_network_cidr:
type: string
- description: The name of the Public network referred by public_net_id
+ description: CIDR of the OAM ONAP network
- dns_list:
- type: comma_delimited_list
- description: List of External DNS for OAM ONAP network
+ ubuntu_1604_image:
+ type: string
+ description: Name of the Ubuntu 16.04 image
- oam_network_cidr:
+ rancher_vm_flavor:
type: string
- description: CIDR of the OAM ONAP network
+ description: VM flavor for Rancher
- keystone_url:
+ k8s_vm_flavor:
type: string
- description: URL of OpenStack Keystone
+ description: VM flavor for k8s hosts
- openstack_tenant_id:
+ etcd_vm_flavor:
type: string
- description: OpenStack tenant ID
+ description: VM flavor for etcd hosts
- openstack_tenant_name:
+ orch_vm_flavor:
type: string
- description: OpenStack tenant name (matching with the openstack_tenant_id)
+ description: VM flavor for orch hosts
- openstack_username:
+ integration_override_yaml:
type: string
- description: OpenStack username
+ description: Content for integration_override.yaml
- openstack_api_key:
+ integration_gerrit_branch:
type: string
- description: OpenStack password or API Key
+ default: "master"
- ubuntu_1404_image:
+ integration_gerrit_refspec:
type: string
- description: Name of the Ubuntu 14.04 image
+ default: "refs/heads/master"
- ubuntu_1604_image:
+ oom_gerrit_branch:
type: string
- description: Name of the Ubuntu 16.04 image
+ default: "master"
- centos_7_image:
+ oom_gerrit_refspec:
type: string
- description: the id/name of the CentOS 7 VM imange
+ default: "refs/heads/master"
- rancher_vm_flavor:
+ docker_manifest:
type: string
- description: Name of the Ubuntu 14.04 image
+ default: ""
- k8s_vm_flavor:
+ key_name:
+ type: string
+ default: "onap_key"
+
+ docker_version:
type: string
- description: Name of the Ubuntu 14.04 image
+ default: "17.03.2"
- dcae_ip_addr:
+ rancher_version:
type: string
+ default: "1.6.22"
- dns_forwarder:
+ rancher_agent_version:
type: string
- description: the forwarder address for setting up ONAP's private DNS server
+ default: "1.2.11"
+ kubectl_version:
+ type: string
+ default: "1.11.2"
+
+ helm_version:
+ type: string
+ default: "2.9.1"
resources:
random-str:
properties:
length: 4
+ # ONAP security group
+ onap_sg:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name:
+ str_replace:
+ template: base_rand
+ params:
+ base: onap_sg
+ rand: { get_resource: random-str }
+ description: security group used by ONAP
+ rules:
+ # All egress traffic
+ - direction: egress
+ ethertype: IPv4
+ - direction: egress
+ ethertype: IPv6
+ # ingress traffic
+ # ICMP
+ - protocol: icmp
+ - protocol: udp
+ port_range_min: 1
+ port_range_max: 65535
+ - protocol: tcp
+ port_range_min: 1
+ port_range_max: 65535
+
+
+ # ONAP management private network
+ oam_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: oam_network_rand
+ params:
+ rand: { get_resource: random-str }
+
+ oam_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ name:
+ str_replace:
+ template: oam_network_rand
+ params:
+ rand: { get_resource: random-str }
+ network_id: { get_resource: oam_network }
+ cidr: { get_param: oam_network_cidr }
+ dns_nameservers: [ "8.8.8.8" ]
+
+ router:
+ type: OS::Neutron::Router
+ properties:
+ name:
+ list_join: ['-', [{ get_param: 'OS::stack_name' }, 'router']]
+ external_gateway_info:
+ network: { get_param: public_net_id }
+
+ router_interface:
+ type: OS::Neutron::RouterInterface
+ properties:
+ router_id: { get_resource: router }
+ subnet_id: { get_resource: oam_subnet }
+
+ rancher_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ rancher_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: rancher_private_port }
+
rancher_vm:
type: OS::Nova::Server
properties:
- name: rancher
- image: xenial
+ name:
+ list_join: ['-', [{ get_param: 'OS::stack_name' }, 'rancher']]
+ image: { get_param: ubuntu_1604_image }
flavor: { get_param: rancher_vm_flavor }
- key_name: onap_key
+ key_name: { get_param: key_name }
networks:
- - network: { get_param: public_net_id }
+ - port: { get_resource: rancher_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ template:
+ get_file: rancher_vm_entrypoint.sh
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __integration_override_yaml__: { get_param: integration_override_yaml }
+ __integration_gerrit_branch__: { get_param: integration_gerrit_branch }
+ __integration_gerrit_refspec__: { get_param: integration_gerrit_refspec }
+ __oom_gerrit_branch__: { get_param: oom_gerrit_branch }
+ __oom_gerrit_refspec__: { get_param: oom_gerrit_refspec }
+ __docker_manifest__: { get_param: docker_manifest }
+ __docker_version__: { get_param: docker_version }
+ __rancher_version__: { get_param: rancher_version }
+ __rancher_agent_version__: { get_param: rancher_agent_version }
+ __kubectl_version__: { get_param: kubectl_version }
+ __helm_version__: { get_param: helm_version }
+ __public_net_id__: { get_param: public_net_id }
+ __oam_network_cidr__: { get_param: oam_network_cidr }
+ __oam_network_id__: { get_resource: oam_network }
+ __oam_subnet_id__: { get_resource: oam_subnet }
+ __sec_group__: { get_resource: onap_sg }
+ __k8s_1_vm_ip__: { get_attr: [k8s_1_floating_ip, floating_ip_address] }
+ __k8s_vm_ips__: [
+ get_attr: [k8s_1_floating_ip, floating_ip_address],
+ get_attr: [k8s_2_floating_ip, floating_ip_address],
+ get_attr: [k8s_3_floating_ip, floating_ip_address],
+ get_attr: [k8s_4_floating_ip, floating_ip_address],
+ get_attr: [k8s_5_floating_ip, floating_ip_address],
+ get_attr: [k8s_6_floating_ip, floating_ip_address],
+ get_attr: [k8s_7_floating_ip, floating_ip_address],
+ get_attr: [k8s_8_floating_ip, floating_ip_address],
+ get_attr: [k8s_9_floating_ip, floating_ip_address],
+ get_attr: [k8s_10_floating_ip, floating_ip_address],
+ get_attr: [k8s_11_floating_ip, floating_ip_address],
+ ]
+ __k8s_private_ips__: [
+ get_attr: [k8s_1_floating_ip, fixed_ip_address],
+ get_attr: [k8s_2_floating_ip, fixed_ip_address],
+ get_attr: [k8s_3_floating_ip, fixed_ip_address],
+ get_attr: [k8s_4_floating_ip, fixed_ip_address],
+ get_attr: [k8s_5_floating_ip, fixed_ip_address],
+ get_attr: [k8s_6_floating_ip, fixed_ip_address],
+ get_attr: [k8s_7_floating_ip, fixed_ip_address],
+ get_attr: [k8s_8_floating_ip, fixed_ip_address],
+ get_attr: [k8s_9_floating_ip, fixed_ip_address],
+ get_attr: [k8s_10_floating_ip, fixed_ip_address],
+ get_attr: [k8s_11_floating_ip, fixed_ip_address],
+ ]
+ k8s_1_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_1_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_1_private_port }
+
+ k8s_1_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '1' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_1_private_port }
user_data_format: RAW
user_data:
str_replace:
params:
__docker_proxy__: { get_param: docker_proxy }
__apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
template:
- get_file: rancher_vm_entrypoint.sh
+ get_file: k8s_vm_entrypoint.sh
- k8s_vm:
+ k8s_2_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_2_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_2_private_port }
+
+ k8s_2_vm:
type: OS::Nova::Server
properties:
- name: k8s
- image: xenial
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '2' ] ]
+ image: { get_param: ubuntu_1604_image }
flavor: { get_param: k8s_vm_flavor }
- key_name: onap_key
+ key_name: { get_param: key_name }
networks:
- - network: { get_param: public_net_id }
+ - port: { get_resource: k8s_2_private_port }
user_data_format: RAW
user_data:
str_replace:
params:
__docker_proxy__: { get_param: docker_proxy }
__apt_proxy__: { get_param: apt_proxy }
- __rancher_ip_addr__: { get_attr: [rancher_vm, first_address] }
- __openstack_tenant_id__: { get_param: openstack_tenant_id }
- __openstack_tenant_name__: { get_param: openstack_tenant_name }
- __openstack_username__: { get_param: openstack_username }
- __openstack_api_key__: { get_param : openstack_api_key }
- __public_net_id__: { get_param: public_net_id }
- __public_net_name__: { get_param: public_net_name }
- __oam_network_cidr__: { get_param: oam_network_cidr }
- __ubuntu_1404_image__: { get_param: ubuntu_1404_image }
- __ubuntu_1604_image__: { get_param: ubuntu_1604_image }
- __centos_7_image__: { get_param: centos_7_image }
- __keystone_url__: { get_param: keystone_url }
- __dcae_ip_addr__: { get_param: dcae_ip_addr }
- __dns_list__: { get_param: [dns_list, 0] }
- __dns_forwarder__: { get_param: dns_forwarder }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ k8s_3_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_3_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_3_private_port }
+
+ k8s_3_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '3' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_3_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ k8s_4_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_4_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_4_private_port }
+
+ k8s_4_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '4' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_4_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ k8s_5_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_5_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_5_private_port }
+
+ k8s_5_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '5' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_5_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ k8s_6_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_6_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_6_private_port }
+
+ k8s_6_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '6' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_6_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
template:
get_file: k8s_vm_entrypoint.sh
+
+ k8s_7_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_7_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_7_private_port }
+
+ k8s_7_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '7' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_7_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ k8s_8_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_8_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_8_private_port }
+
+ k8s_8_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '8' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_8_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ k8s_9_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_9_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_9_private_port }
+
+ k8s_9_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '9' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_9_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ k8s_10_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_10_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_10_private_port }
+
+ k8s_10_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '10' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_10_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ k8s_11_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ k8s_11_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: k8s_11_private_port }
+
+ k8s_11_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'k8s', '11' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: k8s_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: k8s_11_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'compute'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ etcd_1_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ etcd_1_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: etcd_1_private_port }
+
+ etcd_1_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'etcd', '1' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: etcd_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: etcd_1_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'etcd'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ etcd_2_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ etcd_2_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: etcd_2_private_port }
+
+ etcd_2_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'etcd', '2' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: etcd_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: etcd_2_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'etcd'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ etcd_3_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ etcd_3_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: etcd_3_private_port }
+
+ etcd_3_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'etcd', '3' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: etcd_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: etcd_3_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'etcd'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ orch_1_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ orch_1_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: orch_1_private_port }
+
+ orch_1_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'orch', '1' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: orch_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: orch_1_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'orchestration'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+ orch_2_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_network }
+ fixed_ips: [{"subnet": { get_resource: oam_subnet }}]
+ security_groups:
+ - { get_resource: onap_sg }
+
+ orch_2_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: orch_2_private_port }
+
+ orch_2_vm:
+ type: OS::Nova::Server
+ properties:
+ name:
+ list_join: ['-', [ { get_param: 'OS::stack_name' }, 'orch', '2' ] ]
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: orch_vm_flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: orch_2_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __docker_proxy__: { get_param: docker_proxy }
+ __apt_proxy__: { get_param: apt_proxy }
+ __docker_version__: { get_param: docker_version }
+ __rancher_ip_addr__: { get_attr: [rancher_floating_ip, floating_ip_address] }
+ __rancher_private_ip_addr__: { get_attr: [rancher_floating_ip, fixed_ip_address] }
+ __host_label__: 'orchestration'
+ template:
+ get_file: k8s_vm_entrypoint.sh
+
+outputs:
+ rancher_vm_ip:
+ description: The IP address of the rancher instance
+ value: { get_attr: [rancher_floating_ip, floating_ip_address] }
+
+ k8s_1_vm_ip:
+ description: The IP address of the k8s_1 instance
+ value: { get_attr: [k8s_1_floating_ip, floating_ip_address] }
+
+ k8s_2_vm_ip:
+ description: The IP address of the k8s_2 instance
+ value: { get_attr: [k8s_2_floating_ip, floating_ip_address] }
+
+ k8s_3_vm_ip:
+ description: The IP address of the k8s_3 instance
+ value: { get_attr: [k8s_3_floating_ip, floating_ip_address] }
+
+ k8s_4_vm_ip:
+ description: The IP address of the k8s_4 instance
+ value: { get_attr: [k8s_4_floating_ip, floating_ip_address] }
+
+ k8s_5_vm_ip:
+ description: The IP address of the k8s_5 instance
+ value: { get_attr: [k8s_5_floating_ip, floating_ip_address] }
+
+ k8s_6_vm_ip:
+ description: The IP address of the k8s_6 instance
+ value: { get_attr: [k8s_6_floating_ip, floating_ip_address] }
+
+ k8s_7_vm_ip:
+ description: The IP address of the k8s_7 instance
+ value: { get_attr: [k8s_7_floating_ip, floating_ip_address] }
+
+ k8s_8_vm_ip:
+ description: The IP address of the k8s_8 instance
+ value: { get_attr: [k8s_8_floating_ip, floating_ip_address] }
+
+ k8s_9_vm_ip:
+ description: The IP address of the k8s_9 instance
+ value: { get_attr: [k8s_9_floating_ip, floating_ip_address] }
+
+ k8s_10_vm_ip:
+ description: The IP address of the k8s_10 instance
+ value: { get_attr: [k8s_10_floating_ip, floating_ip_address] }
+
+ k8s_11_vm_ip:
+ description: The IP address of the k8s_11 instance
+ value: { get_attr: [k8s_11_floating_ip, floating_ip_address] }
+