InlineVnf_instancesVnfInstanceIdChange_vnfpkgRequestBody

InlineVnf_instancesVnfInstanceIdChange_vnfpkgRequestBody
InlineVnf_instancesVnfInstanceIdChange_vnfpkgRequestBody

This type represents request parameters for the "Change current VNF package" operation to replace the VNF package on which a VNF instance is based. NOTE 1: The indication of externally-managed internal VLs is needed in case networks have been pre-configured for use with certain VNFs, for instance to ensure that these networks have certain properties such as security or acceleration features, or to address particular network topologies. The present document assumes that externally-managed internal VLs are managed by the NFVO and created towards the VIM. NOTE 2: It is possible to have several ExtManagedVirtualLinkData for the same VNF internal VL in case of a multi-site VNF spanning several VIMs. The set of ExtManagedVirtualLinkData corresponding to the same VNF internal VL shall indicate so by referencing to the same VnfVirtualLinkDesc and externally-managed multi-site VL instance (refer to clause 4.4.1.12).

JSON Example
{
    "vnfdId": "string",
    "extVirtualLinks": [
        {
            "id": "string",
            "vimConnectionId": "string",
            "resourceProviderId": "string",
            "resourceId": "string",
            "extCps": [
                {
                    "cpdId": "string"
                }
            ],
            "extLinkPorts": [
                {
                    "id": "string",
                    "resourceHandle": {
                        "vimConnectionId": "string",
                        "resourceProviderId": "string",
                        "resourceId": "string",
                        "vimLevelResourceType": "string",
                        "vimLevelAdditionalResourceInfo": {
                            "hostName": "string",
                            "persistentVolume": "string"
                        },
                        "containerNamespace": "string"
                    },
                    "trunkResourceId": "string"
                }
            ],
            "extNetAttDefResourceData": [
                {
                    "netAttDefResourceId": "string",
                    "resourceHandle": {
                        "vimConnectionId": "string",
                        "resourceProviderId": "string",
                        "resourceId": "string",
                        "vimLevelResourceType": "string",
                        "vimLevelAdditionalResourceInfo": {
                            "hostName": "string",
                            "persistentVolume": "string"
                        },
                        "containerNamespace": "string"
                    }
                }
            ]
        }
    ],
    "extManagedVirtualLinks": [
        {
            "id": "string",
            "vnfVirtualLinkDescId": "string",
            "vimConnectionId": "string",
            "resourceProviderId": "string",
            "resourceId": "string",
            "netAttDefResourceData": [
                {
                    "netAttDefResourceId": "string",
                    "resourceHandle": {
                        "vimConnectionId": "string",
                        "resourceProviderId": "string",
                        "resourceId": "string",
                        "vimLevelResourceType": "string",
                        "vimLevelAdditionalResourceInfo": {
                            "hostName": "string",
                            "persistentVolume": "string"
                        },
                        "containerNamespace": "string"
                    }
                }
            ],
            "intCp": [
                {
                    "cpdId": "string",
                    "netAttDefResourceId": [
                        "string"
                    ]
                }
            ],
            "vnfLinkPort": [
                {
                    "vnfLinkPortId": "string",
                    "resourceHandle": {
                        "vimConnectionId": "string",
                        "resourceProviderId": "string",
                        "resourceId": "string",
                        "vimLevelResourceType": "string",
                        "vimLevelAdditionalResourceInfo": {
                            "hostName": "string",
                            "persistentVolume": "string"
                        },
                        "containerNamespace": "string"
                    }
                }
            ],
            "extManagedMultisiteVirtualLinkId": "string"
        }
    ]
}
string
vnfdId
Required

Identifier of the VNFD which defines the destination VNF Package for the change.

array of object
extVirtualLinks
Optional

Information about external VLs to connect the VNF to, including configuration information for the CPs via which the VNF instance can attach to this VL. Entries in the list that are unchanged need not be supplied as part of this request. The following applies to the "ExtVirtualLinkData" information provided in this request, together with the related "ExtVirtualLinkInfo" information known to the VNFM represented in the "VnfInstance" structure (see clause 5.5.2.2) and the related overriding information provided in the "Grant" structure (see clause 9.5.2.3): Even if the VNF is not in fully scaled-out state after the change of the VNF package, the API consumer shall provide enough CP configuration records to allow connecting the VNF instance, fully scaled out in all scaling aspects, to the external VLs.

array of object
extManagedVirtualLinks
Optional

Information about internal VLs that are managed by the NFVO. See notes 1 and 2.

object
vimConnectionInfo
Optional

Information about VIM or CISM connections to be used for managing the resources for the VNF instance, or refer to external virtual links. This attribute shall only be supported and may be present if

  • the resources for at least one of the VNFCs shall be managed by a VIM and VNF-related resource management in direct mode is applicable.
  • the resources for at least one of the VNFCs shall be managed by a CISM. The VNFM shall apply the content of this attribute to the "vimConnectionInfo" attribute of "VnfInstance" according to the rules of JSON Merge Patch (see IETF RFC 7396 [5]).
object
additionalParams
Optional

Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the underlying VNF package is changed, as declared in the VNFD as part of "ChangeCurrentVnfPkgOpConfig" defined in ETSI GS NFV-IFA 011 [10].

object
extensions
Optional

If present, this attribute provides modifications to the values of the "extensions" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling extensions during the operation, and needed passed parameter values in case of conflicts, are defined in clause 5.4.11a.3.1.

object
vnfConfigurableProperties
Optional

If present, this attribute provides modifications to the values of the "vnfConfigurableProperties" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling VNF configurable properties during the operation, and needed passed parameter values in case of conflicts, are defined in clause 5.4.11a.3.1.