blob: bd4ba1fc0e443cae0ed6e47d4559b2880d1f3839 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
${VM_TYPE}_${VM_NUM}_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 }
${VM_TYPE}_${VM_NUM}_floating_ip:
type: OS::Neutron::FloatingIP
properties:
floating_network_id: { get_param: public_net_id }
port_id: { get_resource: ${VM_TYPE}_${VM_NUM}_private_port }
${VM_TYPE}_${VM_NUM}_vm_scripts:
type: OS::Heat::CloudConfig
properties:
cloud_config:
power_state:
mode: reboot
runcmd:
- [ /opt/k8s_vm_install.sh ]
write_files:
- path: /opt/k8s_vm_install.sh
permissions: '0755'
content:
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_private_ip_addr__: { get_attr: [${VM_TYPE}_${VM_NUM}_floating_ip, fixed_ip_address] }
__mtu__: { get_param: mtu }
template:
get_file: k8s_vm_install.sh
- path: /opt/k8s_vm_init.sh
permissions: '0755'
content:
str_replace:
params:
__host_private_ip_addr__: { get_attr: [${VM_TYPE}_${VM_NUM}_floating_ip, fixed_ip_address] }
__host_label__: '$HOST_LABEL'
template:
get_file: k8s_vm_init.sh
- path: /etc/init.d/k8s_vm_init_serv
permissions: '0755'
content:
get_file: k8s_vm_init_serv.sh
${VM_TYPE}_${VM_NUM}_vm_config:
type: OS::Heat::MultipartMime
properties:
parts:
- config: { get_resource: ${VM_TYPE}_${VM_NUM}_vm_scripts }
${VM_TYPE}_${VM_NUM}_vm:
type: OS::Nova::Server
properties:
name:
list_join: ['-', [ { get_param: 'OS::stack_name' }, '${VM_TYPE}', '${VM_NUM}' ] ]
image: { get_param: ubuntu_1804_image }
flavor: { get_param: ${VM_TYPE}_vm_flavor }
key_name: { get_param: key_name }
networks:
- port: { get_resource: ${VM_TYPE}_${VM_NUM}_private_port }
user_data_format: SOFTWARE_CONFIG
user_data: { get_resource: ${VM_TYPE}_${VM_NUM}_vm_config }
|