Work in Progress
Lifecycle Management Interface
This interface allows the CNF Manager (CNFM) client to invoke AS-CNF lifecycle management operations of AS-CNF instances towards the CNFM.
The operations provide through this interface are:
- Create AS Identifier
- Instantiate AS
- Terminate AS
- Delete AS Identifier
- Update AS
Create AS Instance Resource
The creation of an "individual" AS instance resource.
REST Interfaces
- POST .../as_instances (CreateAsRequest)
- 201 Created (AsInstance)
- // Send AsIdentifierCreationNotification
post condition: upon successful completion, AS instance is created in NOT_INSTANTIATED state.
Note: KeyValuePairs data type is typically realized as Hashmap or Hashtable
CreateAsRequest
Attribute Name | Data Type | Cardinality | Description |
---|---|---|---|
asdId | Identifier (UUID) | 1 | Identifier that identifies the ASD which defines the AS instance to be created. |
asInstanceName | String | 0..1 | Human-readable name of the AS instance to be created. |
asInstanceDescription | String | 0..1 | Human-readable description of the AS instance to be created. |
metadata | KeyValuePairs | 0..1 | If present, this attribute provides additional initial values, overriding those obtained from the ASD, for the metadata attribute in "AsInstance". |
Instantiate AS Instance Resource
REST Interfaces
- POST .../as_instances/{asInstanceId}/instantiate (InstantiateAsRequest)
- 202 Accepted ()
- Send asLcmOperationOccurrenceNotification (STARTING/PROCESSING/COMPLETED)
- 200 OK (AsLcmOpOcc:operationState=COMPLETED)
InstantiateAsRequest
Attribute Name | Data Type | Cardinality | Description |
---|---|---|---|
asdExtCpdInputParamMapping | ExtCpdParamMappingMetadata | 0..1 | ext cpd parameter instance-level value |
deploymentItems | DeploymentItemMetadata | 1..N | lifecycle parameters for deploymentItems |
additionalParams | KeyValuePairs | 0..1 | Additional input parameters for the instantiation process (this is a pace holder to hold any additional parameters) |
ExtCpdParamMappingMetadata
loadbalanceIP
loadbalanceIP | String | 0..1 | When present, this attribute specifies the name of the deployment artifact input parameter through which the orchestrator can configure the loadbalancerIP parameter of the K8s service or ingress controller that the ExtCpd represents. |
externalIPs | KeyValuePairs | 0..1 | When present, this attribute specifies the name of the deployment artifact input parameter through which the orchestrator can configure the extermalIPs parameter of the K8s service or ingress controller, or the pod network interface annotation, that the ExtCpd represents. The param name and provided IP address(es) value will be passed to the deployment tool when deploying the DeploymentArtifacts. |
nadNames | KeyValuePairs | 0..1 | These attributes specifies, for an ExtCpd representing a secondary network interface, the name(s) of the network attachment definitions (NADs) the orchestrator has created as base for the network interface the ExtCpd represents. It is expected that the NADs themselves have been created prior to the deployment of the deployment artifacts. |
nadNamespace | String | 0..1 | Specifies, for an asdExtCpd representing a secondary network interface, the namespace where the NADs are located. Attribute may be omitted if the namespace is same as the application namespace. |
DeploymentItemMetadata
Attribute Name | Data Type | Cardinality | Description |
---|---|---|---|
deploymentItemId | Identifier | 1 | Identifies which deploymentItem |
lifecycleParameterKeyValues | KeyValuesPairs | 0..N | provides lifecycle parameter keys and values |
Terminate AS Instance Resource
The termination of an individual AS instance resource.
REST Interfaces
- POST .../as_instances/{asInstanceId}/instantiate (InstantiateAsRequest)
- 202 Accepted ()
- Send asLcmOperationOccurrenceNotification (STARTING/PROCESSING/COMPLETED)
- 200 OK (AsLcmOpOcc:operationState=COMPLETED)
TerminateAsRequest
Attribute Name | Data Type | Cardinality | Description |
---|---|---|---|
terminationType | Enum | 1 |
|
gracefulTerminationTimeout | Integer | 0..1 | The unit is seconds |
additionalParams | KeyValuePairs | 0..1 | Additional parameters passed by the CNFM client |
Delete AS Instance Resource
The deletion of an individual AS instance resource.
REST Interfaces
- DELETE .../as_instances/{asInstanceId}
- 204 No Content
- // Send AsIdentifierDeletionNotification to Client
Update AS
TBD
Query Individual AS
REST Interfaces
- GET .../as_instances/{asInstanceId}
- 200 OK (AsInstance)
AsInstance
Attribute Name | Data Type | Cardinality | Description |
---|---|---|---|
asInstanceId | Identifier | 1 | Identifier of the AS instance |
asInstanceName | String | 0..1 | Name of the AS instance. This attribute can be modified with the PATCH method. |
asInstanceDescription | String | 0..1 | Human-readable description of the AS instance. This attribute can be modified with the PATCH method. |
asdId | Identifier | 1 | Identifier of the VNFD on which the VNF instance is based. |
asProvider | String | 1 | Provider of the AS instance. The value is copied from the ASD. |
asApplicationName | String | 1 | Name to identify the AS instance. |
asVersion | Version | 1 | Specifies the version of the Application (so, if software, DeploymentArtifacts , ASD values, ... change, this changes). |
asInfoName | String | 0..1 | Human readable name for the Application service instance. |
asInfoDescription | String | 0..1 | Human readable description of the AS instance |
... |
Swagger File
The following is ASD LCM Restful API Swagger file (work in progress)