Extend K8S and RIC installation instructions
[it/dep.git] / tools / k8s / heat / parts / part-2.yaml
1   ${VM_TYPE}_${VM_NUM}_private_port:
2     type: OS::Neutron::Port
3     properties:
4       network: { get_resource: int_network }
5       fixed_ips: [{"subnet": { get_resource: int_subnet }}]
6       security_groups:
7       - { get_resource: ric_sg }
8
9   ${VM_TYPE}_${VM_NUM}_floating_ip:
10     type: OS::Neutron::FloatingIP
11     properties:
12       floating_network_id: { get_param: public_net_id }
13       port_id: { get_resource: ${VM_TYPE}_${VM_NUM}_private_port }
14
15   ${VM_TYPE}_${VM_NUM}_vm_scripts:
16     type: OS::Heat::CloudConfig
17     properties:
18       cloud_config:
19         power_state:
20           mode: reboot
21         runcmd:
22         - [ /opt/k8s_vm_install.sh ]
23         write_files:
24         - path: /opt/k8s_vm_install.sh
25           permissions: '0755'
26           content:
27             str_replace:
28               params:
29                 __docker_proxy__: { get_param: docker_proxy }
30                 __apt_proxy__: { get_param: apt_proxy }
31                 __docker_version__: { get_param: docker_version }
32                 __k8s_version__: { get_param: k8s_version }
33                 __k8s_cni_version__: { get_param: k8s_cni_version }
34                 __helm_version__: { get_param: helm_version }
35                 __host_private_ip_addr__: { get_attr: [${VM_TYPE}_${VM_NUM}_floating_ip, fixed_ip_address] }
36                 __k8s_mst_floating_ip_addr__: { get_attr: [${VM_TYPE}_mst_floating_ip, floating_ip_address] }
37                 __k8s_mst_private_ip_addr__: { get_attr: [${VM_TYPE}_mst_floating_ip, fixed_ip_address] }
38                 __mtu__: { get_param: mtu }
39                 __cinder_volume_id__: { get_resource: cinder_volume }
40                 __stack_name__: { get_param: OS::stack_name }
41               template:
42                 get_file: k8s_vm_install.sh
43         - path: /opt/k8s_vm_init.sh
44           permissions: '0755'
45           content:
46             str_replace:
47               params:
48                 __host_private_ip_addr__: { get_attr: [${VM_TYPE}_${VM_NUM}_floating_ip, fixed_ip_address] }
49                 __host_label__: '$HOST_LABEL'
50               template:
51                 get_file: k8s_vm_init.sh
52         - path: /etc/init.d/k8s_vm_init_serv
53           permissions: '0755'
54           content:
55             get_file: k8s_vm_init_serv.sh
56
57   ${VM_TYPE}_${VM_NUM}_vm_config:
58     type: OS::Heat::MultipartMime
59     properties:
60       parts:
61       - config: { get_resource: ${VM_TYPE}_${VM_NUM}_vm_scripts }
62
63   ${VM_TYPE}_${VM_NUM}_vm:
64     type: OS::Nova::Server
65     properties:
66       name:
67         list_join: ['-', [ { get_param: 'OS::stack_name' }, '${VM_TYPE}', '${VM_NUM}' ] ]
68       image: { get_param: ubuntu_1604_image }
69       flavor: { get_param: ${VM_TYPE}_vm_flavor }
70       key_name: { get_param: key_name }
71       networks:
72       - port: { get_resource: ${VM_TYPE}_${VM_NUM}_private_port }
73       user_data_format: SOFTWARE_CONFIG
74       user_data: { get_resource: ${VM_TYPE}_${VM_NUM}_vm_config }
75