...
CBA
The Controller Blueprint Archived is the overall service design, fully model-driven, package needed to automate the resolution of resources for instantiation and any config provisioning operation, such as day0 , day1 or day2 configuration.
The CBA is .zip file, comprised of the following folder structure, the files may vary:
Code Block |
---|
. ├── Definitions │ ├── blueprint.json overall TOSCA modeled blueprint │ ├── artifact_types.json (generated) │ ├── data_types.json (generated) │ ├── node_types.json (generated) │ ├── policy_types.json (generated) │ ├── relationship_types.json (generated) │ ├── resources_definition_types.json (generated based on data dictionary) │ └── *-mapping.json one per template ├── Plans │ ├── ResourceAssignment.xml DG backing the resource-assignment Workflow (name is free for all) │ ├── ConfigAssign.xml DG backing the config-assign Workflow (name is free for all) │ └── ConfigDeploy.xml DG backing the config-deploy Workflow (name is free for all) ├── Scripts │ └── python │ ├── ConfigDeployExample.py Python script using python Netconf client │ ├── ResourceResolutionExample.py Python script with logic to resolve a parameter │ └── __init__.py ├── TOSCA-Metadata │ └── TOSCA.meta Meta-data of overall package └── Templates └── *-template.vtl one per template |
Notions
Resource resolution
Component executor
Data Dictionary
A data dictionary defines a specifc resource that can be resolved using the bellow the supported sources.
A data dictionary can support multiple sourcesresources.
The main goal of data dictionary is to define generic entity that could be shared accross servicesthe service catalog.
Resolution sources
Input
Default
...
A workflow defines an overall action to be taken for the service; it can be composed of a set of sub-actions node to execute. Currently, workflows are backed by Directed Graph engine.
...
The following workflows are contracts being established between SO, SDNC and CDS to cover the instantiation and the post-instantiation use cases.
...
This action is triggered by Generic-Resource-API (GR-API) within SDNC as part of the AssignBB orchestrated by SO. Hence it will be triggered for each VNF(s) and VF-Module(s).
In order to know for which entity the action is triggeredwhat to resolved, one input is required, that is the artifact prefix (see bellow for explanation).
...
${vnf-name}
and ${vf-module-label}
is what we call the artifact prefix, so the requirement could be seen as follow:
${artifact
...
-prefix}-template
${artifact-prefix}-mapping
template
The template has to be a resource accumulator template; that be composed of the following sections:
...
Scripts using Netconf or Restconf to push configure the network element.
Scripts
Python or Kotlin
Platform support ability to create scripts either for resource resolution or component executor.