14 Query LCM Operation
This resource represents VNF lifecycle management operation occurrences. This resource can be used to query status information about multiple VNF lifecycle management operation occurrences.
Figure 14-1 VNF LCM Operation

Query LCM Operation, using the following two ways:
- Query individual LCM Operation
- Query All LCM Operation
14.1 Query Individual LCM Operation
If the NFVO intends to read information about a particular LCM
Operation, it sends a GET request to the "Individual LCM operation" resource,
addressed by the appropriate VNF LCM Operation occurrence identifier
(vnfLcmOpOccId
) in its resource URI.
The VNFM returns a
200 OK response to the NFVO, and includes specific data structure
of type "
VnfLcmOpOcc
" related to the VNF LCM Operation occurrence
identifier (vnfLcmOpOccId
) in the payload body.
Sample Request
Query individual LCM Operation
URL:
GET: https://<<VNFM HOST
IP>>:8443/vnflcm/v1/vnf_lcm_op_occs
/<<{vnfLcmOpOccId}>>
Sample Response
URL: GET: https://<<VNFM HOST IP>>:8443/vnflcm/v1/vnf_lcm_op_occs/<<{vnfLcmOpOccId}>>
Accept: application/json
Content-Type: application/json
X-Token: Token generated after login
{
"id": "lcmOp-00301ea4-a7b2-4334-8b93-190377700ab0",
"operationState": "COMPLETED",
"stateEnteredTime": "2019/02/08 07:33:00 UTC",
"startTime": "2019/02/08 07:31:19 UTC",
"vnfInstanceId": "dsrNetworkOam-cf67bff6-e9c9-4213-b6fa-b5337c3d30b6",
"operation": "TERMINATE",
"operationParams": {
"terminationType": "FORCEFUL",
"gracefulTerminationTimeout": null,
"additionalParams": null
},
"links": {
"self": {
"href": "https://localhost:8443/vnflcm/v1/vnf_lcm_op_occs/lcmOp-00301ea4-a7b2-4334-8b93-190377700ab0"
},
"vnfInstance": {
"href": "https://localhost:8443/vnflcm/v1/vnf_instances/dsrNetworkOam-cf67bff6-e9c9-4213-b6fa-b5337c3d30b6"
}
},
"isCancelPending": false,
"isAutomaticInvocation": false
}
14.2 Query All LCM Operation
If the NFVO intends to query all LCM Operation, it sends a GET request to the LCM operation resource.
The VNFM returns a
200 OK response to
the NFVO, and includes zero or more data structures of type "
VnfLcmOpOcc
" in the
payload body.
Sample Request
Query All LCM Operation
URL: GET:
https://<<VNFM HOST IP>>:8443/vnflcm/v1/vnf_lcm_op_occs
Sample Response
URL: GET: https://<<VNFM HOST IP>>:8443/vnflcm/v1/vnf_lcm_op_occs
Response Body for No VNF Instances
[]
Response Body for Query All LCM Operation
[
{
"id": "lcmOp-ec72c7b4-7cea-4201-a0ab-5c0cec66cfa6",
"operationState": "STARTING",
"stateEnteredTime": "2019/01/16 05:53:31 UTC",
"startTime": "2019/01/16 05:53:31 UTC",
"vnfInstanceId": "dsrNetworkOam-dfc4dcd2-2752-48b4-875d-6cf703ba4134",
"operation": "INSTANTIATE",
"operationParams": {
"flavourId": "DSR NOAM",
"instantiationLevelId": "smalll",
"extVirtualLinks": "extVirtualLinks",
"extManagedVirtualLinks": [],
"vimConnectionInfo": [
{
"id": "vimid",
"vimType": "OpenStack",
"interfaceInfo": {
"controllerUri": "https://oortcloud.us.oracle.com:5000/v3"
},
"accessInfo": {
"username": "dsrat.user",
"password": "xxxxx",
“userDomain”: “Default”,
"projectDomain": "default",
"tenant": "DSR AT Dev 2"
},
"extra": null
}
],
"localizationLanguage": "localizationLanguage",
"additionalParams": {
"ntpServerIp": "10.250.32.10",
"xmiNetwork": {
"name": "ext-net7",
"ipVersion": "IPv4",
"xmiSubnetName":"ext-net7-subnet"
}
}
},
"links": {
"self": {
"href": "https://localhost:8443/vnflcm/v1/vnf_lcm_op_occs/lcmOp-ec72c7b4-7cea-4201-a0ab-5c0cec66cfa6"
},
"vnfInstance": {
"href": "https://localhost:8443/vnflcm/v1/vnf_instances/dsrNetworkOam-dfc4dcd2-2752-48b4-875d-6cf703ba4134"
}
},
"isAutomaticInvocation": false,
"isCancelPending": false
},
{
"id": "lcmOp-00574fa7-8c4a-45ac-b7a8-816bfaf70985",
"operationState": "STARTING",
"stateEnteredTime": "2019/01/16 06:05:32 UTC",
"startTime": "2019/01/16 06:05:32 UTC",
"vnfInstanceId": "dsrSignaling-08db63da-6cac-495f-8480-baf368d21cf7",
"operation": "INSTANTIATE",
"operationParams": {
"flavourId": "DIAMETER",
"instantiationLevelId": "small",
"extVirtualLinks": "extVirtualLinks",
"extManagedVirtualLinks": [
{
"id": "id1",
"resourceId": "31ae9c8b-519e-4316-9a24-45c619646d69"
},
{
"id": "id2",
"resourceId": "aa9d142d-89d4-40e7-a701-559a993aa5ea"
}
],
"vimConnectionInfo": [
{
"id": "vimid",
"vimType": "OpenStack",
"interfaceInfo": {
"controllerUri": "https://oortcloud.us.oracle.com:5000/v3"
},
"accessInfo": {
"username": "dsrat.user",
"password": "xxxxxx",
“userDomain”: “Default”,
"projectDomain": "default",
"tenant": "DSR AT Dev 2"
},
"extra": null
}
],
"localizationLanguage": "localizationLanguage",
"additionalParams": {
"xmiNetwork": {
"name": "ext-net7",
"ipVersion": "IPv4",
"xmiSubnetName":"ext-net7-subnet"
},
"xsiNetwork": {
"name": "ext-net7",
"ipVersion": "IPv4",
"xsiSubnetName":"ext-net7-subnet"
},
"ntpServerIp": "10.250.32.10",
"primaryNoamVmName": "NOAM00-03ba4134",
"noamSgName": "dsrNetworkOam_NOAM_03ba4134_SG"
}
},
"links": {
"self": {
"href": "https://localhost:8443/vnflcm/v1/vnf_lcm_op_occs/lcmOp-00574fa7-8c4a-45ac-b7a8-816bfaf70985"
},
"vnfInstance": {
"href": "https://localhost:8443/vnflcm/v1/vnf_instances/dsrSignaling-08db63da-6cac-495f-8480-baf368d21cf7"
}
},
"isAutomaticInvocation": false,
"isCancelPending": false
}
]
14.3 VNFM Get Operation Status
VNFM supports the SOL003 operation 'Get Operation Status'. The Get Operation Status operation is compliant to SOL003 version 3.3.1
NFVO invokes Get Operation Status in VNF Life cycle management operations towards VNFM. The VNFM queries the VNF for all life cycle management operation occurance.
Figure 14-2 Get Operation Status LCM operation

The Get Operations Status operation is as follows.
- If the NFVO intends to query all VNF lifecycle management operation occurrences, it sends a GET request to the VNF LCM operation occurrences resource.
- The VNFM returns a 200 OK response to the NFVO and includes zero or more data structures of type VnfLcmOpOcc in the payload body.
- If the NFVO intends to read information about a particular VNF LCM operation occurrence, it sends a GET request to the Individual VNF LCM operation occurrence resource, addressed by the appropriate VNF LCM operation occurrence identifier in its resource URI.
- The VNFM returns a 200 OK response to the NFVO and includes one data structure of type VnfLcmOpOcc in the payload body.
The new fields added and their definitions are mentioned in the following table:
Table 14-1 New fields and their definitions
New fields | Sub fields | Definitions |
---|---|---|
error | If "operationState" is "FAILED" or "operationState" is "PROCESSING", this attribute is present and contains the error information, unless it has been requested to be excluded through an attribute selector. | |
resourceChanges | 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. | |
affectedVnfcs | Information about VNFC instances that were affected during the lifecycle operation. | |
_links | Links to resources related to this resource. | |
self | URI of this resource. | |
vnfInstance | Link to the VNF instance that the operation applies to. |
Example of an LCM successful scenario
{
"id": "lcmOp-55233499-078b-4eba-91fd-a58752ce23a4",
"operationState": "COMPLETED",
"stateEnteredTime": "2021/07/20 06:23:22 GMT",
"startTime": "2021/07/20 06:22:58 GMT",
"vnfInstanceId": "dsrIdih-16d883d6-0dd6-476c-aad7-a529054bb0c0",
"operation": "TERMINATE",
"operationParams": {
"terminationType": "FORCEFUL",
"gracefulTerminationTimeout": null,
"additionalParams": null
},
"resourceChanges": {
"affectedVnfcs": [
{
"id": "FT--a82db823-IDAPP00",
"changeType": "REMOVED",
"computeResource": {
"vimConnectionId": "vimid",
"resourceId": "06f682d9-9146-4989-9489-aebf33ecd7b3"
}
},
{
"id": "FT--a82db823-IDMED00",
"changeType": "REMOVED",
"computeResource": {
"vimConnectionId": "vimid",
"resourceId": "946ae36b-2378-4609-b72e-7e14f6f0d430"
}
},
{
"id": "FT--a82db823-IDDB00",
"changeType": "REMOVED",
"computeResource": {
"vimConnectionId": "vimid",
"resourceId": "143c4019-416b-49d4-9bcd-ee8b321ce731"
}
}
]
},
"links": {
"self": {
"href": "https://[2606:b400:605:b813::b]:8443/vnflcm/v1/vnf_lcm_op_occs/lcmOp-55233499-078b-4eba-91fd-a58752ce23a4"
},
"vnfInstance": {
"href": "https://[2606:b400:605:b813::b]:8443/vnflcm/v1/vnf_instances/dsrIdih-16d883d6-0dd6-476c-aad7-a529054bb0c0"
}
},
"isAutomaticInvocation": false,
"isCancelPending": false
}
Example of a failed LCM scenario
{
"id": "lcmOp-536b138e-192d-4659-8457-b9306d4ced88",
"operationState": "FAILED",
"stateEnteredTime": "2021/07/20 07:12:00 GMT",
"startTime": "2021/07/20 06:27:45 GMT",
"vnfInstanceId": "dsrNetworkOam-cb8802a0-6358-4e78-805d-392f8bc9848b",
"operation": "INSTANTIATE",
"operationParams": {
"flavourId": "DSR NOAM",
"instantiationLevelId": "ha",
"extVirtualLinks": "extVirtualLinks",
"extManagedVirtualLinks": [],
"vimConnectionInfo": [
{
"id": "vimid",
"vimType": "OpenStack",
"interfaceInfo": {
"controllerUri": "https://mvl-dev1.us.oracle.com:5000/v3"
},
"accessInfo": {
"username": "dsrvnfm",
"password": "xxxxxxx",
"userDomain": "default",
"projectDomain": "default",
"tenant": "VNFM_FT1"
},
"extra": {}
}
],
"localizationLanguage": "localizationLanguage",
"additionalParams": {
"ntpServerIp": "10.250.32.10",
"xmiNetwork": {
"name": "ext-net5-dual",
"subnet": [
{
"ipVersion": "IPv4",
"name": "ext-net5-ipv4"
}
]
},
"imiNetwork": {
"name": "imi-private",
"subnet": [
{
"ipVersion": "IPv4",
"name": "imi-private-sub"
}
]
}
}
},
"error": {
"title": "DsrVnfmGenException",
"status": 500,
"detail": "There is cloud-init failure."
},
"resourceChanges": {
"affectedVnfcs": [
{
"id": "FT--8716b8dc-DNO00",
"changeType": "ADDED",
"computeResource": {
"vimConnectionId": "vimid",
"resourceId": "ad5b378e-40b7-4a83-a31d-ed7b9ddf2501"
}
},
{
"id": "FT--8716b8dc-DNO01",
"changeType": "ADDED",
"computeResource": {
"vimConnectionId": "vimid",
"resourceId": "dfae8cfd-94c4-4e1a-9322-6fc3e583243b"
}
}
]
},
"links": {
"self": {
"href": "https://[2606:b400:605:b813::b]:8443/vnflcm/v1/vnf_lcm_op_occs/lcmOp-536b138e-192d-4659-8457-b9306d4ced88"
},
"vnfInstance": {
"href": "https://[2606:b400:605:b813::b]:8443/vnflcm/v1/vnf_instances/dsrNetworkOam-cb8802a0-6358-4e78-805d-392f8bc9848b"
}
},
"isAutomaticInvocation": false,
"isCancelPending": false
}
Example of an LCM operation after MODIFY VNF
{
"id": "lcmOp-ea2f46e7-5721-49a2-8770-e4002180169c",
"operationState": "COMPLETED",
"stateEnteredTime": "2021/07/19 17:40:28 GMT",
"startTime": "2021/07/19 17:40:28 GMT",
"vnfInstanceId": "vnfmSecondary-2b9f3114-51c3-4b8a-a51d-2d826c8354be",
"operation": "MODIFY_INFO",
"operationParams": {
"vnfInstanceDescription": "Modify VNF",
"vimConnectionInfo": null
},
"changedInfo": {
"vnfInstanceDescription": "Modify VNF"
},
"links": {
"self": {
"href": "https://[2606:b400:605:b813::b]:8443/vnflcm/v1/vnf_lcm_op_occs/lcmOp-ea2f46e7-5721-49a2-8770-e4002180169c"
},
"vnfInstance": {
"href": "https://[2606:b400:605:b813::b]:8443/vnflcm/v1/vnf_instances/vnfmSecondary-2b9f3114-51c3-4b8a-a51d-2d826c8354be"
}
},
"isAutomaticInvocation": false,
"isCancelPending": false
}