Newer
Older
# Copyright (c) ETSI 2017.
# https://forge.etsi.org/etsi-forge-copyright-notice.txt
definitions:
CreateVnfRequest:
Identifier that identifies the VNFD which defines the VNF instance to
be created.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
vnfInstanceName:
Human-readable name of the VNF instance to be created.
type: string
vnfInstanceDescription:
Human-readable description of the VNF instance to be created.
type: string
metadata:
If present, this attribute provides additional initial values, overriding those obtained from the VNFD, for
the "metadata" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling metadata
during the operation are defined in clause 5.4.2.3.1.
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
ScaleVnfRequest:
type: object
required:
- type
- aspectId
properties:
type:
Indicates the type of the scale operation requested.
Permitted values:
* SCALE_OUT: adding additional VNFC instances to the VNF to increase
capacity
* SCALE_IN: removing VNFC instances from the VNF in order to release
unused capacity.
enum:
- SCALE_OUT
- SCALE_IN
aspectId:
description: >
Identifier of the scaling aspect.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
numberOfSteps:
description: >
Number of scaling steps to be executed as part of this Scale VNF
operation. It shall be a positive number and the default value
shall be 1.
type: integer
default: 1
additionalParams:
description: >
Additional parameters passed by the NFVO as input to the scaling
process, specific to the VNF being scaled, as declared in the VNFD
as part of "ScaleVnfOpConfig".
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
ScaleVnfToLevelRequest:
description: >
This type represents request parameters for the "Scale VNF to Level"
operation.
type: object
anyOf:
- oneOf:
- required:
- instantiationLevelId
- required:
- scaleInfo
properties:
instantiationLevelId:
Identifier of the target instantiation level of the current
deployment flavour to which the VNF is requested to be scaled.
Either the instantiationLevelId attribute or the scaleInfo attribute
shall be included.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
scaleInfo:
description: >
For each scaling aspect of the current deployment flavour, indicates
the target scale level to which the VNF is to be scaled.
Either the instantiationLevelId attribute or the scaleInfo attribute
shall be included.
type: array
items:
$ref: "#/definitions/ScaleInfo"
additionalParams:
description: >
Additional parameters passed by the NFVO as input to the scaling
process, specific to the VNF being scaled, as declared in the
VNFD as part of "ScaleVnfToLevelOpConfig".
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
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
VnfInfoModificationRequest:
description: >
This type represents attribute modifications for an "Individual VNF instance" resource,
i.e. modifications to a resource representation based on the "VnfInstance" data type.
The attributes of "VnfInstance" that can be modified according to the provisions in clause 5.5.2.2
are included in the "VnfInfoModificationRequest" data type.
The "VnfInfoModificationRequest" data type shall comply with the provisions defined in table 5.5.2.12-1.
type: object
properties:
vnfInstanceName:
description: >
New value of the "vnfInstanceName" attribute in "VnfInstance", or "null" to remove the attribute.
type: string
vnfInstanceDescription:
description: >
New value of the "vnfInstanceDescription" attribute in "VnfInstance", or "null" to remove the attribute.
type: string
vnfdId:
description: >
New value of the "vnfdId" attribute in "VnfInstance". The value "null" is not permitted.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
vnfConfigurableProperties:
description: >
Modifications of the "vnfConfigurableProperties" attribute in "VnfInstance".
If present, these modifications shall be applied according to the rules of
JSON Merge PATCH (see IETF RFC 7396 [15]).
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
metadata:
description: >
Modifications of the "metadattametadata" attribute in "VnfInstance".
If present, these modifications shall be applied according to the rules of
JSON Merge PATCH (see IETF RFC 7396 [15]).
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
extensions:
description: >
Modifications of the "extensions" attribute in "VnfInstance".
If present, these modifications shall be applied according to the rules of
JSON Merge PATCH (see IETF RFC 7396 [15]).
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
vnfcInfoModifications:
description: >
Modifications of certain entries in the "vnfcInfo" attribute array in the
"instantiatedVnfInfo" attribute of "VnfInstance"." to be used as "newList" as defined below this table.
type: array
items:
$ref: "#/definitions/VnfcInfoModifications"
vnfcInfoModificationsDeleteIds:
description: >
List of identifiers entries to be deleted from the 'vnfcInfoModifications" attribute array
to be used as "deleteIdList" as defined below this table.
type: array
items:
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
VnfInfoModifications:
description: >
This type represents attribute modifications that were performed on an
"Individual VNF instance" resource. The attributes that can be included
consist of those requested to be modified explicitly in the
"VnfInfoModificationRequest" data structure, and additional attributes
of the "VnfInstance" data structure that were modified implicitly e.g.
when modifying the referenced VNF package.
type: object
properties:
vnfInstanceName:
description: >
If present, this attribute signals modifications of the
"vnfInstanceName" attribute in "VnfInstance".
type: string
vnfInstanceDescription:
description: >
If present, this attribute signals modifications of the
"vnfInstanceDescription" attribute in "VnfInstance".
type: string
vnfConfigurableProperties:
description: >
If present, this attribute signals modifications of the
"vnfConfigurableProperties" attribute in "VnfInstance".
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
metadata:
description: >
If present, this attribute signals modifications of the "metadata"
attribute in "VnfInstance".
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
extensions:
description: >
If present, this attribute signals modifications of the "extensions"
attribute in "VnfInstance".
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
vnfdId:
description: >
If present, this attribute signals modifications of the "vnfdId"
attribute in "VnfInstance".
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
vnfProvider:
description: >
If present, this attribute signals modifications of the
"vnfProvider" attribute in "VnfInstance".
If present, this attribute (which depends on the value of the
"vnfPkgId" attribute) was modified implicitly following a request to
modify the "vnfPkgId" attribute, by copying the value of this
attribute from the VNFD in the VNF Package identified by the
"vnfPkgId” attribute.
type: string
vnfProductName:
description: >
If present, this attribute signals modifications of the
"vnfProductName" attribute in "VnfInstance".
If present, this attribute (which depends on the value of the
"vnfPkgId" attribute) was modified implicitly following a request to
modify the "vnfPkgId" attribute, by copying the value of this
attribute from the VNFD in the VNF Package identified by the
"vnfPkgId” attribute.
type: string
vnfSoftwareVersion:
description: >
If present, this attribute signals modifications of the
"vnfSoftwareVersion" attribute in "VnfInstance".
$ref: "SOL002SOL003_def.yaml#/definitions/Version"
vnfdVersion:
description: >
If present, this attribute signals modifications of the
"vnfdVersion" attribute in "VnfInstance".
If present, this attribute (which depends on the value of the
"vnfdId" attribute) was modified implicitly following a request to
modify the "vnfdId" attribute, by copying the value of this
attribute from the VNFD in the VNF Package identified by the
$ref: "SOL002SOL003_def.yaml#/definitions/Version"
Giacomo Bernini
committed
vnfcInfoModifications:
description: >
If present, this attribute signals modifications of certain
entries in the "vnfcInfo" attribute array in the
"instantiatedVnfInfo" attribute of "VnfInstance", as defined
in clause 5.5.2.12
type: array
items:
$ref: "#/definitions/VnfcInfoModifications"
VnfLcmOpOcc:
description: >
This type represents a VNF lifecycle management operation occurrence. Shall be set to the value of the "id"
attribute in the "Grant" representing the associated "Individual Grant", if such grant exists.
oneOf:
- required:
- changedInfo
- required:
- modificationsTriggeredByVnfPkgChange
required:
- id
- operationState
- stateEnteredTime
- startTime
- vnfInstanceId
- operation
- isAutomaticInvocation
- isCancelPending
properties:
id:
description: >
Identifier of this VNF lifecycle management operation occurrence.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
operationState:
description: >
The state of the LCM operation.
$ref: "#/definitions/LcmOperationStateType"
stateEnteredTime:
description: >
Date-time when the current state has been entered.
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
$ref: "SOL002SOL003_def.yaml#/definitions/DateTime"
startTime:
description: >
Date-time of the start of the operation.
$ref: "SOL002SOL003_def.yaml#/definitions/DateTime"
vnfInstanceId:
description: >
Identifier of the VNF instance to which the operation applies
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
grantId:
description: >
Identifier of the grant related to this VNF LCM operation
occurrence, if such grant exists.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
operation:
description: >
Type of the actual LCM operation represented by this VNF LCM
operation occurrence.
$ref: "SOL002SOL003_def.yaml#/definitions/LcmOperationType"
isAutomaticInvocation:
description: >
Set to true if this VNF LCM operation occurrence has been triggered
by an automated procedure inside the VNFM (i.e.
ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf
triggered by auto-heal). Set to false otherwise.
$ref: "SOL002SOL003_def.yaml#/definitions/Boolean"
operationParams:
description: >
Input parameters of the LCM operation. This attribute shall be
formatted according to the request data type of the related LCM
operation. The following mapping between operationType and the
data type of this attribute shall apply:
* INSTANTIATE: InstantiateVnfRequest
* SCALE: ScaleVnfRequest
* SCALE_TO_LEVEL: ScaleVnfToLevelRequest
* CHANGE_FLAVOUR: ChangeVnfFlavourRequest
* OPERATE: OperateVnfRequest
* HEAL: HealVnfRequest
* CHANGE_EXT_CONN: ChangeExtVnfConnectivityRequest
* TERMINATE: TerminateVnfRequest
* MODIFY_INFO: VnfInfoModifications
* CREATE_SNAPSHOT: CreateVnfSnapshotRequest
* REVERT_TO_SNAPSHOT: RevertToVnfSnapshotRequest
* CHANGE_VNFPKG: ChangeCurrentVnfPkgRequest
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
type: object
isCancelPending:
description: >
If the VNF LCM operation occurrence is in "STARTING", "PROCESSING"
or "ROLLING_BACK" state and the operation is being cancelled, this
attribute shall be set to true. Otherwise, it shall be set to false.
$ref: "SOL002SOL003_def.yaml#/definitions/Boolean"
cancelMode:
description: >
The mode of an ongoing cancellation. Shall be present when
isCancelPending=true, and shall be absent otherwise.
$ref: "#/definitions/CancelModeType"
error:
description: >
If "operationState" is "FAILED_TEMP" or "FAILED" or "operationState"
is "PROCESSING" or "ROLLING_BACK" and previous value of
"operationState" was "FAILED_TEMP", this attribute shall be present
and contain error information, unless it has been requested to be
excluded via an attribute selector.
$ref: "SOL002SOL003_def.yaml#/definitions/ProblemDetails"
resourceChanges:
description: >
This attribute contains information about the cumulative changes to
virtualised resources that were performed so far by the LCM
operation since its start, if applicable.
type: object
properties:
affectedVnfcs:
description: >
Information about VNFC instances that were affected during the
lifecycle operation.
This allows the API consumer to obtain the information contained in
the latest "result" notification if it has not received it due to an
error or a wrongly configured subscription filter.
type: array
items:
$ref: "SOL002SOL003_def.yaml#/definitions/AffectedVnfc"
affectedVirtualLinks:
description: >
Information about VL instances that were affected during the
lifecycle operation.
This allows the API consumer to obtain the information contained in
the latest "result" notification if it has not received it due to an
error or a wrongly configured subscription filter.
For a particular affected VL, there shall be as many "AffectedVirtualLink"
entries as needed for signalling the different types of changes, i.e.,
one per virtual link and change type. For instance, in the case of
signaling affected VL instances involving the addition of a particular VL
instance with links ports, one "AffectedVirtualLink" entry signals the
addition of the VL by using the "changeType" attribute of "AffectedVirtualLink"
structure equal to "ADDED", and another "AffectedVirtualLink" entry signals
the addition of VNF link ports of the VL by using the "changeType" equal to
"LINK_PORT_ADDED".
type: array
items:
$ref: "#/definitions/AffectedVirtualLink"
affectedExtLinkPorts:
description: >
Information about external VNF link ports that were affected during the lifecycle operation. This allows
the API consumer to obtain the information contained in the latest "result" notification if it has not
received it due to an error or a wrongly configured subscription filter.
type: array
items:
$ref: "#/definitions/AffectedExtLinkPort"
affectedVirtualStorages:
description: >
Information about virtualised storage instances that were affected
during the lifecycle operation.
This allows the API consumer to obtain the information contained
in the latest "result" notification if it has not received it due to
an error or a wrongly configured subscription filter.
type: array
items:
$ref: "#/definitions/AffectedVirtualStorage"
changedInfo:
description: >
Information about the changed VNF instance information, including
VNF configurable properties, if applicable.
This allows the NFVO to obtain the information contained in the
latest "result" notification if it has not received it due to an
error or a wrongly configured subscription filter.
$ref: "#/definitions/VnfInfoModifications"
changedExtConnectivity:
description: >
Information about changed external connectivity, if applicable.
This allows the NFVO to obtain the information contained in the
latest "result" notification if it has not received it due to an
error or a wrongly configured subscription filter.
type: array
items:
$ref: "#/definitions/ExtVirtualLinkInfo"
modificationsTriggeredByVnfPkgChange:
description: >
Information about performed changes of "VnfInstance" attributes triggered by changing the current VNF package,
if applicable. Shall be absent if the "operation" attribute is different from "CHANGE_VNFPKG".
This allows the API consumer to obtain the information contained in the latest "result" notification if it has
not received it due to an error or a wrongly configured subscription filter.
Not more than one of changedInfo and modificationsTriggeredByVnfPkgChange shall be present.
$ref: "#/definitions/ModificationsTriggeredByVnfPkgChange"
Identifier of the "individual VNF snapshot" resource. Shall be present if applicable to the type of LCM operation,
i.e., if the value of the "operation" attribute is either "CREATE_SNAPSHOT" or "REVERT_TO_SNAPSHOT".
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
_links:
description: >
Links to resources related to this resource.
type: object
required:
- self
- vnfInstance
properties:
self:
description: >
URI of this resource.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
vnfInstance:
description: >
Link to the VNF instance that the operation applies to.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
grant:
description: >
Link to the grant for this operation, if one exists.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
cancel:
description: >
Link to the task resource that represents the "cancel" operation
for this VNF LCM operation occurrence, if cancelling is
currently allowed.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
retry:
description: >
Link to the task resource that represents the "retry" operation
for this VNF LCM operation occurrence, if retrying is currently
allowed.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
rollback:
description: >
Link to the task resource that represents the "rollback"
operation for this VNF LCM operation occurrence, if rolling back
is currently allowed.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
fail:
description: >
Link to the task resource that represents the "fail" operation
for this VNF LCM operation occurrence, if declaring as failed is
currently allowed.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
vnfSnapshot:
description: >
Link to the VNF snapshot resource, if the VNF LCM operation occurrence is related to a VNF snapshot.
Shall be present if operation="CREATE_SNAPSHOT" or operation="REVERT_TO_SNAPSHOT".
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
CancelMode:
This type represents a parameter to select the mode of cancelling an
ongoing VNF LCM operation occurrence.
type: object
required:
- cancelMode
properties:
cancelMode:
description: >
Cancellation mode to apply.
$ref: "#/definitions/CancelModeType"
LccnSubscriptionRequest:
This type represents a subscription request related to notifications
about VNF lifecycle changes.
- callbackUri
Filter settings for this subscription, to define the subset of all
notifications this subscription relates to. A particular
notification is sent to the subscriber if the filter matches, or if
there is no filter.
$ref: "#/definitions/LifecycleChangeNotificationsFilter"
callbackUri:
The URI of the endpoint to send the notification to.
$ref: "SOL002SOL003_def.yaml#/definitions/Uri"
authentication:
Authentication parameters to configure the use of Authorization when
sending notifications corresponding to this subscription, as defined
in clause 8.3.4 of ETSI GS NFV-SOL 013.
This attribute shall only be present if the subscriber requires
authorization of notifications.
$ref: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication"
verbosity:
description: >
This attribute signals the requested verbosity of LCM operation occurrence notifications. If it is not present,
it shall default to the value "FULL".
$ref: "#/definitions/LcmOpOccNotificationVerbosityType"
LccnSubscription:
This type represents a subscription related to notifications about VNF
lifecycle changes.
type: object
required:
- id
- callbackUri
properties:
id:
description: >
Identifier of this subscription resource.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
filter:
Filter settings for this subscription, to define the subset of all
notifications this subscription relates to. A particular
notification is sent to the subscriber if the filter matches, or if
there is no filter.
$ref: "#/definitions/LifecycleChangeNotificationsFilter"
callbackUri:
The URI of the endpoint to send the notification to.
$ref: "SOL002SOL003_def.yaml#/definitions/Uri"
verbosity:
description: >
This attribute signals the verbosity of LCM operation occurrence notifications.
$ref: "#/definitions/LcmOpOccNotificationVerbosityType"
Links to resources related to this resource.
type: object
required:
- self
properties:
self:
description: >
URI of this resource.
$ref: "SOL002SOL003_def.yaml#/definitions/Link"
Giacomo Bernini
committed
ExtVirtualLinkInfo:
type: object
- id
- resourceHandle
Identifier of the external VL and the related external VL
information instance.
The identifier is assigned by the NFV-MANO entity that manages this
VL instance.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
resourceHandle:
Reference to the resource realizing this VL.
$ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle"
extLinkPorts:
description: >
Link ports of this VL.
type: array
items:
$ref: "#/definitions/ExtLinkPortInfo"
currentVnfExtCpData:
description: >
Allows the API consumer to read the current CP configuration information for the connection of external CPs
to the external virtual link.
This attribute reflects the current configuration information that has resulted from merging into this attribute
the "VnfExtCpData" information which was passed as part of the "ExtVirtualLinkData" structure in the input of
the most recent VNF LCM operation such as "InstantiateVnfRequest", "ChangeExtVnfConnectivityRequest",
"ChangeVnfFlavourRequest" or "ChangeCurrentVnfPkgRequest", or has been provided by the NFVO during the granting
procedure. If applying such change results in an empty list of "currentVnfExtCpData" structure instances, the
affected instance of "ExtVirtualLinkInfo" shall be removed from its parent data structure.
type: array
items:
$ref: "SOL002SOL003_def.yaml#/definitions/VnfExtCpData"
- id
- vnfVirtualLinkDescId
Giacomo Bernini
committed
- networkResource
Identifier of the externally-managed internal VL and the related
externally-managed VL information instance.
The identifier is assigned by the NFV-MANO entity that manages this
VL instance.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
vnfVirtualLinkDescId:
Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change
current VNF package" operation or due to its final failure).
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
networkResource:
description: >
Reference to the VirtualNetwork resource providing this VL.
$ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle"
vnfLinkPorts:
description: >
Link ports of this VL.
$ref: "#/definitions/VnfLinkPortInfo"
extManagedMultisiteVirtualLinkId:
description: >
Identifier of the externally-managed multi-site VL instance. The identifier is assigned by the NFVMANO entity
that manages the externally managed multi-site VL instance. It shall be present when the externally-managed
internal VL is part of a multi-site VL, e.g., in support of multi-site VNF spanning several VIMs.
All externally-managed internal VL instances corresponding to an internal VL created based on the same
virtualLinkDescId shall refer to the same extManagedMultisiteVirtualLinkId.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
- aspectId
- scaleLevel
type: object
Identifier of the scaling aspect.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change
current VNF package" operation or due to its final failure).
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
scaleLevel:
Indicates the scale level. The minimum value shall be 0 and the
maximum value shall be <= maxScaleLevel as described in the VNFD.
type: integer
VnfcResourceInfo:
description: >
This type represents the information on virtualised compute and storage
resources used by a VNFC in a VNF instance.
type: object
required:
- id
- vduId
- computeResource
properties:
id:
description: >
Identifier of this VnfcResourceInfo instance.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
vduId:
Reference to the applicable VDU in the VNFD.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change
current VNF package" operation or due to its final failure).
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
computeResource:
description: >
Reference to the VirtualCompute resource.
$ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle"
Giacomo Bernini
committed
zoneId:
description: >
The identifier of the resource zone, as managed by the
resource management layer (typically, the VIM), where
the referenced VirtualCompute resource is placed.
Shall be provided if this information is available from the VIM.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
storageResourceIds:
References to the VirtualStorage resources. The value refers to a
VirtualStorageResourceInfo item in the VnfInstance.
type: array
items:
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
reservationId:
The reservation identifier applicable to the resource. It shall be
present when an applicable reservation exists.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
vnfcCpInfo:
All the CPs of the VNFC instance.
Shall be present when that particular CP of the VNFC instance is
associated to an external CP of the VNF instance.
May be present otherwise.
- id
- cpdId
Identifier of this VNFC CP instance and the associated array
entry.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
cpdId:
Identifier of the VDU CPD, cpdId, in the VNFD.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
vnfExtCpId:
description: >
WhenIdentifier of the related external CP. Shall be present when the VNFC CP is exposed as an external
instance or connected to an external CP of the VNF instance and shall be absent otherwise.
A VNFC CP is "connected to" an external CP if the VNFC CP is connected to an internal VL that exposes
an external CP. A VNFC CP is "exposed as" an external CP if it is connected directly to an external VL.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
cpProtocolInfo:
description: >
Network protocol information for this CP. May be omitted if the VNFC CP is exposed as an external CP.
The information can be omitted because it is already available as part of the external CP information.
$ref: "#/definitions/CpProtocolInfo"
vnfLinkPortId:
Identifier of the "vnfLinkPorts" structure in the "VnfVirtualLinkResourceInfo" structure. Shall be present if
the CP is associated to a link port, on an internal VL of the VNF instance and shall be absent otherwise.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
metadata:
Metadata about this CP.
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
metadata:
Metadata about this resource.
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
VnfVirtualLinkResourceInfo:
This type represents the information that allows addressing a virtualised
resource that is used by an internal VL instance in a VNF instance.
type: object
required:
- id
- vnfVirtualLinkDescId
- networkResource
properties:
id:
description: >
Identifier of this VnfVirtualLinkResourceInfo instance.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
vnfVirtualLinkDescId:
Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change
current VNF package" operation or due to its final failure).
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
networkResource:
Reference to the VirtualNetwork resource.
$ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle"
Giacomo Bernini
committed
zoneId:
description: >
The identifier of the resource zone, as managed by the resource
management layer (typically, the VIM), where the referenced
VirtualNetwork resource is placed. Shall be provided if this
information is available from the VIM.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
reservationId:
The reservation identifier applicable to the resource. It shall be
present when an applicable reservation exists.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
vnfLinkPorts:
description: >
Links ports of this VL.
Shall be present when the linkPort is used for external connectivity
by the VNF (refer to VnfLinkPortInfo).
May be present otherwise.
type: array
items:
$ref: "#/definitions/VnfLinkPortInfo"
metadata:
description: >
Metadata about this resource.
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
VirtualStorageResourceInfo:
description: >
This type represents the information that allows addressing a virtualised
resource that is used by a VNF instance.
type: object
required:
- id
- virtualStorageDescId
- storageResource
properties:
id:
description: >
Identifier of this VirtualStorageResourceInfo instance.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
virtualStorageDescId:
description: >
Identifier of the VirtualStorageDesc in the VNFD.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd"
vnfdId:
description: >
Identifier of the VNFD.
Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change
current VNF package" operation or due to its final failure).
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
storageResource:
description: >
Reference to the VirtualStorage resource.
$ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle"
Giacomo Bernini
committed
zoneId:
description: >
The identifier of the resource zone, as managed by the resource
management layer (typically, the VIM), where the referenced
VirtualStorage resource is placed. Shall be provided if this
information is available from the VIM.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
reservationId:
description: >
The reservation identifier applicable to the resource. It shall be
present when an applicable reservation exists.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
description: >
Metadata about this resource.
$ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs"
VnfLinkPortInfo:
type: object
required:
- id
- resourceHandle
properties:
id:
description: >
Identifier of this link port as provided by the entity that has created the link port.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
resourceHandle:
description: >
Reference to the virtualised resource realizing this link
port.
$ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle"
cpInstanceId:
description: >
When the link port is used for external connectivity by the VNF,
this attribute represents the identifier of the external CP of the
VNF to be connected to this link port.
When the link port is used for internal connectivity in the VNF,
Giacomo Bernini
committed
this attribute represents the identifier of the VNFC CP to be connected to this link
port.
Shall be present when the link port is used for external
connectivity by the VNF.
May be present if used to reference a VNFC CP instance.
There shall be at most one link port associated with any external
connection point instance or internal connection point
(i.e. VNFC CP) instance.
The value refers to an "extCpInfo" item in the VnfInstance or a
"vnfcCpInfo" item of a "vnfcResouceInfo" item in the VnfInstance.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
cpInstanceType:
description: >
Type of the CP instance that is identified by cpInstanceId.
Shall be present if "cpInstanceId" is present, and shall be absent otherwise.
Permitted values:
VNFC_CP: The link port is connected to a VNFC CP
EXT_CP: The link port is associated to an external CP.
type: string
enum:
- VNFC_CP
- EXT_CP
ExtLinkPortInfo:
description: >
This type represents information about a link port of an external VL,
i.e. a port providing connectivity for the VNF to an NS VL.
type: object
required:
- id
- resourceHandle
properties:
id:
description: >
Identifier of this link port as provided by the entity that has
created the link port.
$ref: "SOL002SOL003_def.yaml#/definitions/Identifier"
resourceHandle:
description: >
Reference to the virtualised resource realizing this link
port.
$ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle"
cpInstanceId:
description: >
Identifier of the external CP of the VNF connected to this link
port. There shall be at most one link port associated with any
external connection point instance. The value refers to an
"extCpInfo" item in the VnfInstance.
$ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf"
CpProtocolInfo:
description: >
This type describes the protocol layer(s) that a CP uses together with
protocol-related information, like addresses.
required:
- layerProtocol
properties:
layerProtocol:
description: >
The identifier of layer(s) and protocol(s) associated to the network
address information.
Permitted values: IP_OVER_ETHERNET
This attribute allows to signal the addition of further types of
layer and protocol in future versions of the present document in a
backwards-compatible way. In the current version of the present
document, only IP over Ethernet is supported.
type: string
enum:
- IP_OVER_ETHERNET
ipOverEthernet:
description: >
IP addresses over Ethernet to assign to the extCP instance. Shall be
present if layerProtocol is equal to " IP_OVER_ETHERNET", and shall
be absent otherwise.
$ref: "#/definitions/IpOverEthernetAddressInfo"
IpOverEthernetAddressInfo:
description: >
This type represents information about a network address that has been
assigned.
type: object
anyOf:
- required:
- macAddress
- required:
- ipAddresses
oneOf:
- required:
- addresses
- required:
- addressRange
properties:
macAddress:
description: >
MAC address, if assigned.
At least one of "macAddress" or "ipAddresses" shall be present.
$ref: "SOL002SOL003_def.yaml#/definitions/MacAddress"
segmentationId:
description: >
Identification of the network segment to which the Cp instance connects to. If the Cp instance represents a
subport in a trunk, segmentationId shall be present. Otherwise it shall not be present.
Depending on the NFVI networking infrastructure, the segmentationId may indicate the actual network segment
value (e.g. vlan Id, Vxlan segmentation id, etc.) used in the transport header of the packets or it may be an
identifier used between the application and the NFVI networking infrastructure to identify the network
sub-interface of the trunk port in question. In the latter case the NFVI infrastructure will map this local
segmentationId to whatever segmentationId is actually used by the NFVI’s transport technology.
type: string
ipAddresses:
description: >
Addresses assigned to the CP instance. Each entry represents IP
addresses assigned by fixed or dynamic IP address assignment per
subnet.
Giacomo Bernini
committed
At least one of "macAddress" or "ipAddresses" shall be present.
type: array
items: