blob: 37374db3304f39f49a8110a87b5d849bb66802da (
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
heat_template_version: 2013-05-23
description: Simple template to deploy a single compute instance
parameters:
vnf_id:
description: Unique ID for this VNF
type: string
vf_module_id:
description: Unique ID for this VF module
type: string
vnf_name:
type: string
description: Unique name for this VNF instance
ex_image_name:
type: string
label: Image name or ID
description: Image to be used for compute instance
ex_flavor_name:
type: string
label: Flavor
description: Type of instance (flavor) to be used
ex_key:
type: string
label: key pair
description: Name of the key apir the nova server will use
ex_vm_name:
type: string
description: Name of the VM
ex1_vm_names:
type: comma_delimited_list
description: Name of the VM
ex1_image_name:
type: string
label: Image name or ID
description: Image to be used for compute instance
ex1_flavor_name:
type: string
label: Flavor
description: Type of instance (flavor) to be used
ex1_key:
type: string
label: key pair
description: Name of the key apir the nova server will use
int_network_net_id:
type: string
label: Network name
description: Name of the network the nova server will connect to
ex1_server_index:
type: number
label: server index
description: Index of server
constraint:
- range: { min: 1, max: 100 }
availability_zone_0:
type: string
description: availabilityzone name
resources:
ex_software_config_0:
type: OS::Heat::SoftwareConfig
properties:
group: ungrouped
config:
params:
$stack_name: { get_param: 'OS::stack_name' }
ex_nova_serverGroup:
type: OS::Nova::ServerGroup
properties:
vnf_id: { get_param: vnf_id }
vf_module_id: { get_param: vf_module_id }
vnf_name: { get_param: vnf_name }
availability_zones: { list_join: [',', [ { get_param: availability_zone_0 }, { get_param: availability_zone_1 } ] ] }
ex_nova_server_0:
type: OS::Nova::Server
properties:
name: { get_param: ex_vm_name }
metadata:
vnf_id: { get_param: vnf_id }
vf_module_id: { get_param: vf_module_id }
vnf_name: { get_param: vnf_name }
image: { get_param: ex_image_name }
flavor: { get_param: ex_flavor_name }
key_name: { get_param: ex_key }
networks:
- network: { get_param: int_network_net_id }
user_data:
get_resource: ex_software_config_0
ex1_nova_server_0:
type: OS::Nova::Server
properties:
name: { get_param: [ ex1_vm_names, 0 ] }
metadata:
vnf_id: { get_param: vnf_id }
vf_module_id: { get_param: vf_module_id }
vnf_name: { get_param: vnf_name }
image: { get_param: ex1_image_name}
flavor: { get_param: ex1_flavor_name }
key_name: { get_param: ex1_key }
ex1_nova_server_1:
type: OS::Nova::Server
properties:
name: { get_param: [ ex1_vm_names, { get_param: ex1_server_index } ] }
metadata:
vnf_id: { get_param: vnf_id }
vf_module_id: { get_param: vf_module_id }
vnf_name: { get_param: vnf_name }
image: { get_param: ex1_image_name}
flavor: { get_param: ex1_flavor_name }
key_name: { get_param: ex1_key }
|