blob: ba12ebcbd128d601b5a78b7e5ba608ab7b91f36b (
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
116
|
heat_template_version: 2014-10-16
#################################
# Author: Dmitry Orzhehovsky
# Email: dorzheho@cisco.com
#################################
description: >
Creates Cinder volumes.
Cinder volume is a storage in the form of block devices.
It can be used, for example, for providing storage to instance.
Volume supports creation from snapshot, backup or image.
Also volume can be created only by size.
The template creates volumes for vSON DC leaders
(Virtual Function Component DCL).
parameters:
vnf_name:
type: string
label: VF name
description: Unique name for this VF instance.
vf_module_name:
type: string
label: VF module name
description: Unique name for this VF module instance.
availability_zone_0:
type: string
label: Availability zone 0
description: First availability zone.
availability_zone_1:
type: string
label: Availability zone 1
description: Second availability zone.
vson_dcl_volume_size_0:
type: number
label: Cinder volume ID 0 size
description: >
Size of the first Cinder volume. Measured in gigabytes.
vson_dcl_volume_size_1:
type: number
label: Cinder volume ID 1 size
description: >
Size of the second Cinder volume. Measured in gigabytes.
vson_dcl_volume_size_2:
type: number
label: Cinder volume ID 2 size
description: >
Size of the third Cinder volume. Measured in gigabytes.
resources:
vson_dcl_volume_0:
type: OS::Cinder::Volume
properties:
name:
str_replace:
template: VNF_NAME_dcl_volume_0
params:
VNF_NAME: { get_param: vnf_name}
metadata:
vnf_name: {get_param: vnf_name}
vf_module_name: {get_param: vf_module_name}
availability_zone: {get_param: availability_zone_0}
size: {get_param: vson_dcl_volume_size_0}
description: Cinder volume for the first vSON DC leader.
vson_dcl_volume_1:
type: OS::Cinder::Volume
properties:
name:
str_replace:
template: VNF_NAME_dcl_volume_1
params:
VNF_NAME: { get_param: vnf_name}
metadata:
vnf_name: {get_param: vnf_name}
vf_module_name: {get_param: vf_module_name}
availability_zone: {get_param: availability_zone_1}
size: {get_param: vson_dcl_volume_size_1}
description: Cinder volume for the second vSON DC leader.
vson_dcl_volume_2:
type: OS::Cinder::Volume
properties:
name:
str_replace:
template: VNF_NAME_dcl_volume_2
params:
VNF_NAME: { get_param: vnf_name}
metadata:
vnf_name: {get_param: vnf_name}
vf_module_name: {get_param: vf_module_name}
availability_zone: {get_param: availability_zone_0}
size: {get_param: vson_dcl_volume_size_2}
description: Cinder volume for the third vSON DC leader.
outputs:
vson_dcl_volume_id_0:
value: {get_resource: vson_dcl_volume_0}
description: ID of the first vSON DC leader volume.
vson_dcl_volume_id_1:
value: {get_resource: vson_dcl_volume_1}
description: ID of the second vSON DC leader volume.
vson_dcl_volume_id_2:
value: {get_resource: vson_dcl_volume_2}
description: ID of the third vSON DC leader volume.
|