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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
|
tosca.policies.Root:
description: The TOSCA Policy Type all other TOSCA Policy Types derive from
tosca.policies.Placement:
derived_from: tosca.policies.Root
description: The TOSCA Policy Type definition that is used to govern placement of TOSCA nodes or groups of nodes.
tosca.policies.Scaling:
derived_from: tosca.policies.Root
description: The TOSCA Policy Type definition that is used to govern scaling of TOSCA nodes or groups of nodes.
tosca.policies.Update:
derived_from: tosca.policies.Root
description: The TOSCA Policy Type definition that is used to govern update of TOSCA nodes or groups of nodes.
tosca.policies.Performance:
derived_from: tosca.policies.Root
description: The TOSCA Policy Type definition that is used to declare performance requirements for TOSCA nodes or groups of nodes.
org.openecomp.policies.placement.Antilocate:
derived_from: tosca.policies.Placement
description: My placement policy for separation based upon container type value
properties:
name:
type: string
description: The name of the policy
required: false
status: supported
container_type:
type: string
description: container type
required: false
status: supported
constraints:
- valid_values:
- host
- region
- compute
org.openecomp.policies.placement.Colocate:
derived_from: tosca.policies.Placement
description: Keep associated nodes (groups of nodes) based upon affinity value
properties:
name:
type: string
description: The name of the policy
required: false
status: supported
affinity:
type: string
description: affinity
required: true
status: supported
constraints:
- valid_values:
- host
- region
- compute
org.openecomp.policies.placement.valet.Diversity:
derived_from: tosca.policies.Placement
description: Valet Diversity
properties:
level:
type: string
description: diversity
required: false
default: host
status: supported
constraints:
- valid_values:
- host
- rack
org.openecomp.policies.placement.valet.Exclusivity:
derived_from: tosca.policies.Placement
description: Valet Exclusivity
properties:
level:
type: string
description: exclusivity
required: false
default: host
status: supported
constraints:
- valid_values:
- host
- rack
org.openecomp.policies.placement.valet.Affinity:
derived_from: tosca.policies.Placement
description: Valet Affinity
properties:
level:
type: string
description: affinity
required: false
default: host
status: supported
constraints:
- valid_values:
- host
- rack
org.openecomp.policies.scaling.Fixed:
derived_from: tosca.policies.Scaling
properties:
quantity:
description: the exact number of instances to keep up
type: integer
required: true
org.openecomp.policies.External:
derived_from: tosca.policies.Root
description: externally managed policy (for example, type="network assignment", source="Policy Manager", name="route target")
properties:
source:
type: string
description: The name of the server that exposes the policy with predefined type and name.
required: false
type:
type: string
description: The type (category) of the policy same as it is defined in the source.
required: false
name:
type: string
description: The name of the policy, that related to specific type, same as it is defined in the source.
required: false
### Policy types for closed loop ###
onap.policies.Monitoring:
derived_from: tosca.policies.Root
description: A base policy type for all policies that governs monitoring provisioning
onap.policies.monitoring.cdap.tca.hi.lo.app:
derived_from: onap.policies.Monitoring
version: 1.0.0
properties:
tca_policy:
type: map
description: TCA Policy JSON
entry_schema:
type: onap.datatypes.monitoring.tca_policy
## PM Mapper policies for closed loop ##
onap.policies.monitoring.dcae-pm-mapper:
derived_from: onap.policies.Monitoring
version : 1.0.0
properties:
pm-mapper-filter:
type: map
description: PM mapper filter on measInfo, measInfoId, measType, instanceId
entry_schema:
type: onap.datatypes.monitoring.pm-mapper-filter
## PM Subscription Handler policy for closed loop ##
onap.policies.monitoring.dcae-pm-subscription-handler:
derived_from: onap.policies.Monitoring
version : 1.0.0
properties:
subscription:
type: map
description: PM Subscription Handler Subscription
entry_schema:
type: onap.datatypes.monitoring.subscription
## Restconf collector policy for closed loop ##
onap.policies.monitoring.dcae-restconfcollector:
derived_from: onap.policies.Monitoring
version: 1.0.0
properties:
rcc_policy:
type: list
description: RCC Policy JSON
entry_schema:
type: onap.datatypes.monitoring.rcc_policy
## NFV policies ##
tosca.policies.nfv.InstantiationLevels:
derived_from: tosca.policies.Root
description: The InstantiationLevels type is a policy type representing all the instantiation levels of resources to be instantiated within a deployment flavour and including default instantiation level in term of the number of VNFC instances to be created as defined in ETSI GS NFV-IFA 011 [1].
properties:
levels:
type: map # key: levelId
description: Describes the various levels of resources that can be used to instantiate the VNF using this flavour.
required: true
entry_schema:
type: tosca.datatypes.nfv.InstantiationLevel
default_level:
type: string # levelId
description: The default instantiation level for this flavour.
required: false # required if multiple entries in levels
tosca.policies.nfv.VduInstantiationLevels:
derived_from: tosca.policies.Root
description: The VduInstantiationLevels type is a policy type representing all the instantiation levels of resources to be instantiated within a deployment flavour in term of the number of VNFC instances to be created from each vdu.Compute. as defined in ETSI GS NFV-IFA 011 [1]
properties:
levels:
type: map # key: levelId
description: Describes the Vdu.Compute levels of resources that can be used to instantiate the VNF using this flavour
required: true
entry_schema:
type: tosca.datatypes.nfv.VduLevel
targets: [ tosca.nodes.nfv.Vdu.Compute ]
tosca.policies.nfv.VirtualLinkInstantiationLevels:
derived_from: tosca.policies.Root
description: The VirtualLinkInstantiationLevels type is a policy type representing all the instantiation levels of virtual link resources to be instantiated within a deployment flavour as defined in ETSI GS NFV-IFA 011 [1].
properties:
levels:
type: map # key: levelId
description: Describes the virtual link levels of resources that can be used to instantiate the VNF using this flavour.
required: true
entry_schema:
type: tosca.datatypes.nfv.VirtualLinkBitrateLevel
targets: [ tosca.nodes.nfv.VnfVirtualLink ]
tosca.policies.nfv.ScalingAspects:
derived_from: tosca.policies.Root
description: The ScalingAspects type is a policy type representing the scaling aspects used for horizontal scaling as defined in ETSI GS NFV-IFA 011 [1].
properties:
aspects:
type: map # key: aspectId
description: Describe maximum scale level for total number of scaling steps that can be applied to a particular aspect
required: true
entry_schema:
type: tosca.datatypes.nfv.ScalingAspect
tosca.policies.nfv.VduScalingAspectDeltas:
derived_from: tosca.policies.Root
description: The VduScalingAspectDeltas type is a policy type representing the Vdu.Compute detail of an aspect deltas used for horizontal scaling, as defined in ETSI GS NFV-IFA 011 [1].
properties:
aspect:
type: string
description: Represents the scaling aspect to which this policy applies
required: true
deltas:
type: map # key: scalingDeltaId
description: Describes the Vdu.Compute scaling deltas to be applied for every scaling steps of a particular aspect.
required: true
entry_schema:
type: tosca.datatypes.nfv.VduLevel
targets: [ tosca.nodes.nfv.Vdu.Compute ]
tosca.policies.nfv.VirtualLinkBitrateScalingAspectDeltas:
derived_from: tosca.policies.Root
description: The VirtualLinkBitrateScalingAspectDeltas type is a policy type representing the VnfVirtualLink detail of an aspect deltas used for horizontal scaling, as defined in ETSI GS NFV-IFA 011 [1].
properties:
aspect:
type: string
description: Represents the scaling aspect to which this policy applies.
required: true
deltas:
type: map # key: scalingDeltaId
description: Describes the VnfVirtualLink scaling deltas to be applied for every scaling steps of a particular aspect.
required: true
entry_schema:
type: tosca.datatypes.nfv.VirtualLinkBitrateLevel
targets: [ tosca.nodes.nfv.VnfVirtualLink ]
tosca.policies.nfv.VduInitialDelta:
derived_from: tosca.policies.Root
description: The VduInitialDelta type is a policy type representing the Vdu.Compute detail of an initial delta used for horizontal scaling, as defined in ETSI GS NFV-IFA 011 [1].
properties:
initial_delta:
type: tosca.datatypes.nfv.VduLevel
description: Represents the initial minimum size of the VNF.
required: true
targets: [ tosca.nodes.nfv.Vdu.Compute ]
tosca.policies.nfv.VirtualLinkBitrateInitialDelta:
derived_from: tosca.policies.Root
description: The VirtualLinkBitrateInitialDelta type is a policy type representing the VnfVirtualLink detail of an initial deltas used for horizontal scaling, as defined in ETSI GS NFV-IFA 011 [1].
properties:
initial_delta:
type: tosca.datatypes.nfv.VirtualLinkBitrateLevel
description: Represents the initial minimum size of the VNF.
required: true
targets: [ tosca.nodes.nfv.VnfVirtualLink ]
tosca.policies.nfv.SecurityGroupRule:
derived_from: tosca.policies.Root
description: The SecurityGroupRule type is a policy type specified the matching criteria for the ingress and/or egress traffic to/from visited connection points as defined in ETSI GS NFV-IFA 011 [1].
properties:
description:
type: string
description: Human readable description of the security group rule.
required: false
direction:
type: string
description: The direction in which the security group rule is applied. The direction of 'ingress' or 'egress' is specified against the associated CP. I.e., 'ingress' means the packets entering a CP, while 'egress' means the packets sent out of a CP.
required: false
constraints:
- valid_values: [ ingress, egress ]
default: ingress
ether_type:
type: string
description: Indicates the protocol carried over the Ethernet layer.
required: false
constraints:
- valid_values: [ ipv4, ipv6 ]
default: ipv4
protocol:
type: string
description: Indicates the protocol carried over the IP layer. Permitted values include any protocol defined in the IANA protocol registry, e.g. TCP, UDP, ICMP, etc.
required: false
constraints:
- valid_values: [ hopopt, icmp, igmp, ggp, ipv4, st, tcp, cbt, egp, igp, bbn_rcc_mon, nvp_ii, pup, argus, emcon, xnet, chaos, udp, mux, dcn_meas, hmp, prm, xns_idp, trunk_1, trunk_2, leaf_1, leaf_2, rdp, irtp, iso_tp4, netblt, mfe_nsp, merit_inp, dccp, 3pc, idpr, xtp, ddp, idpr_cmtp, tp++, il, ipv6, sdrp, ipv6_route, ipv6_frag, idrp, rsvp, gre, dsr, bna, esp, ah, i_nlsp, swipe, narp, mobile, tlsp, skip, ipv6_icmp, ipv6_no_nxt, ipv6_opts, cftp, sat_expak, kryptolan, rvd, ippc, sat_mon, visa, ipcv, cpnx, cphb, wsn, pvp, br_sat_mon, sun_nd, wb_mon, wb_expak, iso_ip, vmtp, secure_vmtp, vines, ttp, iptm, nsfnet_igp, dgp, tcf, eigrp, ospfigp, sprite_rpc, larp, mtp, ax.25, ipip, micp, scc_sp, etherip, encap, gmtp, ifmp, pnni, pim, aris, scps, qnx, a/n, ip_comp, snp, compaq_peer, ipx_in_ip, vrrp, pgm, l2tp, ddx, iatp, stp, srp, uti, smp, sm, ptp, isis, fire, crtp, crudp, sscopmce, iplt, sps, pipe, sctp, fc, rsvp_e2e_ignore, mobility, udp_lite, mpls_in_ip, manet, hip, shim6, wesp, rohc ]
default: tcp
port_range_min:
type: integer
description: Indicates minimum port number in the range that is matched by the security group rule. If a value is provided at design-time, this value may be overridden at run-time based on other deployment requirements or constraints.
required: false
constraints:
- greater_or_equal: 0
- less_or_equal: 65535
default: 0
port_range_max:
type: integer
description: Indicates maximum port number in the range that is matched by the security group rule. If a value is provided at design-time, this value may be overridden at run-time based on other deployment requirements or constraints.
required: false
constraints:
- greater_or_equal: 0
- less_or_equal: 65535
default: 65535
targets: [ tosca.nodes.nfv.VduCp, tosca.nodes.nfv.VnfExtCp ]
tosca.policies.nfv.SupportedVnfInterface:
derived_from: tosca.policies.Root
description: this policy type represents interfaces produced by a VNF, the details to access them and the applicable connection points to use to access these interfaces
properties:
interface_name:
type: string
description: Identifies an interface produced by the VNF.
required: true
constraints:
- valid_values: [ vnf_indicator, vnf_configuration ]
details:
type: tosca.datatypes.nfv.InterfaceDetails
description: Provide additional data to access the interface endpoint
required: false
targets: [ tosca.nodes.nfv.VnfExtCp, tosca.nodes.nfv.VduCp ]
tosca.policies.nfv.AffinityRule:
derived_from: tosca.policies.Placement
description: The AffinityRule describes the affinity rules applicable for the defined targets
properties:
scope:
type: string
description: scope of the rule is an NFVI_node, an NFVI_PoP, etc.
required: true
constraints:
- valid_values: [ nfvi_node, zone, zone_group, nfvi_pop ]
targets: [ tosca.nodes.nfv.Vdu.Compute, tosca.nodes.nfv.VnfVirtualLink, tosca.groups.nfv.PlacementGroup ]
tosca.policies.nfv.AntiAffinityRule:
derived_from: tosca.policies.Placement
description: The AntiAffinityRule describes the anti-affinity rules applicable for the defined targets
properties:
scope:
type: string
description: scope of the rule is an NFVI_node, an NFVI_PoP, etc.
required: true
constraints:
- valid_values: [ nfvi_node, zone, zone_group, nfvi_pop ]
targets: [ tosca.nodes.nfv.Vdu.Compute, tosca.nodes.nfv.VnfVirtualLink, tosca.groups.nfv.PlacementGroup ]
|