Controller Design Studio Initiative

Controller Design Studio Initiative

Background



  • For the ONAP Beijing release, the APPC project delivered the CDT design tool to support the APPC model driven design approach.

  • For the next ONAP releases Casablanca, we are proposing to develop a common design tool to support both SDNC and Generic L4-7 NFs (APPC, VFC) Controller integrated with SDC.

  • This common design tool, also called “Controller Design Studio”, will be built with associated data dictionary and an Ingredient Resource Resolution Microservice

  • The common design tool models shall be backwards compatible to the current use cases supported in Amsterdam and  Beijing release by Generic L4-7 NF (APP-C specific). 

Introduction

The system is designed to be self service, which means that users, not just programmers, can reconfigure the software system as needed to meet customer requirements. To accomplish this goal, the system is built around models that provide for real-time changes in how the system operates.  Users merely need to change a model to change how a service operates.

Self service is a completely new way of delivering services.  It removes the dependence on code releases and the delays they cause and puts the control of services into the hands of the service providers.  They can change a model and its parameters and create a new service without writing a single line of code.  This makes SERVICE PROVIDER(S) more responsive to its customers and able to deliver products that more closely match the needs of its customers.

Architecture

The Controller Design Studio is composed of two major components: the GUI (or frontend) and the Run Time (or backend).  The GUI handles direct user input and allows for displaying both design time and run time activities.  For design time, it allows for the creation of controller blueprint, from selecting the DGs to be included, to incorporating the artifact templates, to adding necessary components.  For run time, it allows the user to direct the system to resolve the unresolved elements of the controller blueprint and download the resulting configuration into a VNF.  At a more basic level, it allows for creation of data dictionaries, capabilities catalogs, and controller blueprint, the basic elements that are used to generate a configuration. The essential function of the Controller Design Studio is to create and populate a controller blueprint, create a configuration file from this Controller blueprint, and download this configuration file (configlet) to a VNF/PNF.







Detailed Architecture PowerPoint Package:

Controller Design Studio.pptx

Proposed Work Items

Design Time

Feature



Description

JIRA 

 Owner 

Wiki Page

Notes 

Feature



Description

JIRA 

 Owner 

Wiki Page

Notes 

Controller Design Studio GUI









1

Refactor and move the APP-C CDT to CCSDK for "Controller Design Studio" mS.



https://lf-onap.atlassian.net/browse/CCSDK-334











AT&T



All Controller Design Studio will be maintained in the APP-C repo[appc/cdt]] for Casablanca Release.

JIRA can be canceled.

2

CDS Controller Blueprint Creation and Management including artifact model, component model, connectivity model, and dg modeling in "Controller Design Studio" mS.

https://lf-onap.atlassian.net/browse/APPC-1129









AT&T





[appc/cdt]] - Srikanth V



https://lf-onap.atlassian.net/browse/APPC-1133

https://lf-onap.atlassian.net/browse/APPC-1152

https://lf-onap.atlassian.net/browse/APPC-1153

https://lf-onap.atlassian.net/browse/APPC-1154

https://lf-onap.atlassian.net/browse/APPC-1155

https://lf-onap.atlassian.net/browse/APPC-1156

https://lf-onap.atlassian.net/browse/APPC-1177

https://lf-onap.atlassian.net/browse/APPC-1179





3

CDS Catalog Creation and Management in "Controller Design Studio" mS.

4

CDS Data Dictionary Creation and Management in "Controller Design Studio" mS.

5

CDT enhance existing screen to support data dictionary panel layout and data dictionary reference model creation for existing APP-C Models.

https://lf-onap.atlassian.net/browse/APPC-1131

AT&T  

Tech M

IBM

Bell Canada

Erickson



 [appc/cdt]]

In Progress



Girish - Tech M

6

Controller Design Time Studio app extension with SDC integration.



https://lf-onap.atlassian.net/browse/CCSDK-338



AT&T  

Tech M

IBM

Bell Canada



Deferred to the next ONAP release



7  

CDS Backend mS Support 

 https://lf-onap.atlassian.net/browse/CCSDK-458

https://lf-onap.atlassian.net/browse/CCSDK-410

https://lf-onap.atlassian.net/browse/CCSDK-415

https://lf-onap.atlassian.net/browse/CCSDK-416

AT&T  

 

ccsdk/apps

Brinda 



https://lf-onap.atlassian.net/browse/CCSDK-467

https://lf-onap.atlassian.net/browse/CCSDK-468

https://lf-onap.atlassian.net/browse/CCSDK-469

https://lf-onap.atlassian.net/browse/CCSDK-483

https://lf-onap.atlassian.net/browse/CCSDK-487

https://lf-onap.atlassian.net/browse/CCSDK-488

https://lf-onap.atlassian.net/browse/CCSDK-491

https://lf-onap.atlassian.net/browse/CCSDK-429 

https://lf-onap.atlassian.net/browse/CCSDK-431

https://lf-onap.atlassian.net/browse/CCSDK-432

https://lf-onap.atlassian.net/browse/CCSDK-484



 8

Policy Manager Naming Policy support for vFW Use case

 

 AT&T

 

 Support the vFW naming policy model and policy instance as part of PM deployment

https://lf-onap.atlassian.net/browse/POLICY-983





Run Time 

Feature



Description

JIRA 

 Contributors

Wiki Page 

NOTEs

Feature



Description

JIRA 

 Contributors

Wiki Page 

NOTEs

  Instantiation  

1

Generic Resource API integration with netbox ip management capability for assign



https://lf-onap.atlassian.net/browse/CCSDK-339











Bell Canada



Alexis/Marc - Implementation Completed for all the Self Service sub dg and integration with netbox capability. Target Completion Date (9/07) - Delivered



Ajay/Pat  - Push the latest Sub DG to ONAP and Refactor naming Gen Sub DG to call the naming mS Rest API directly.

 https://lf-onap.atlassian.net/browse/CCSDK-481

https://lf-onap.atlassian.net/browse/CCSDK-482





2

Generic Resource API integration with netbox ip management capability for unassign 

https://lf-onap.atlassian.net/browse/CCSDK-340

Bell Canada



Alexis/Marc - Implementation Completed for all the Self Service sub dg and integration with netbox capability. Target Completion Date (9/07) - Delivered

3

netbox ip management REST API support in ONAP



https://lf-onap.atlassian.net/browse/CCSDK-341











Bell Canada



Alexis/Marc - Implementation Completed for all the Netbox Client with Helm chart , pre-provisioning script and DB Creation. 



Create a helm chart for use case: https://lf-onap.atlassian.net/browse/CCSDK-366

pre-provisioning scripts (Targeted for 8/17): 

https://lf-onap.atlassian.net/browse/CCSDK-460

Netbox Client – (Reserve the IP) - Target for 8/17

https://lf-onap.atlassian.net/browse/CCSDK-462



IPAM DB Creation: Target for 8/17

https://lf-onap.atlassian.net/browse/CCSDK-463



4

Policy driven naming mS in ONAP

https://lf-onap.atlassian.net/browse/CCSDK-342

AT&T



[ccsdk/apps] 

Biju T: 7/20 for draft code submission and including draft template. (Preference with policy to boot with the artifacts)

8/17 – Submitted the Code

5

Resource Resolution using data dictionary mS in ONAP

https://lf-onap.atlassian.net/browse/CCSDK-411

https://lf-onap.atlassian.net/browse/CCSDK-412



https://lf-onap.atlassian.net/browse/CCSDK-412







AT&T  



[ccsdk/apps] - Dan T contributed the fist batch of code in draft version.

 Kapil S/Brinda S

In Progress

https://lf-onap.atlassian.net/browse/CCSDK-490



6

Template meshing mS in ONAP



https://lf-onap.atlassian.net/browse/CCSDK-344













AT&T



[ccsdk/apps] - Dan T contributed the fist batch of code in draft version.

 Kapil S/Brinda S

In Progress 

  • Design Time (Draft Code Submitted and API testing in progress.)

  • Runtime (requires discussion)





7

Controller Design Time Studio app extension with SDC integration ingest and store the artifact in the controller persona (SDN-C)



https://lf-onap.atlassian.net/browse/CCSDK-345











AT&T  

Tech M

IBM

Bell Canada



Deferred to the next ONAP release



8

Controller Design Time Studio app extension with SDC integration ingest and store the artifact in the controller persona (APP-C)

https://lf-onap.atlassian.net/browse/CCSDK-349

AT&T

Tech M

IBM

Bell Canada



Deferred to the next ONAP release



Heat and SDC Tosca Update for VFW to include SDNC Controller Blueprint Model Information.

 

https://lf-onap.atlassian.net/browse/CCSDK-380

 Bell Canada

 

 https://lf-onap.atlassian.net/browse/CCSDK-493

Post Instantiation

1

APP-C Integration with resource resolution REST API based on data dictionary.

https://lf-onap.atlassian.net/browse/APPC-1077

AT&T

Tech M

IBM

Bell Canada

Erickson



scale out use case. (include the discussion with Scott)



Krill



Swagger API for calling the RA API for data and artifact collection. Brinda/Kapil to provide this information.



Taka is the PTL for APP-C. Need to review the design with Taka before code contribution.



In Progress.





2

CDS Contribution for Configuration Generation, Preview and Deployment.



https://lf-onap.atlassian.net/browse/CCSDK-346











AT&T



Kapil S/Brinda S



Deferred to Dublin Release

























































Artifact

Instantiation

{

  "resource-accumulator-resolved-data": [

    {

"param-name": "service-instance-id",

      "param-value": "${service-instance-id}"

    },

    {

      "param-name": "vnf_id",

      "param-value": "${vnf-id}"

    },

    {

      "param-name": "vnf_name",

      "param-value": "${vnf-name}"

    },

    {

      "param-name": "vnf_model_customization_uuid",

      "param-value": "${vnf-model-customization-uuid}"

    },

    {

      "param-name": "vf_module_id",

      "param-value": "${vf-module-id}"

    },

    {

      "param-name": "vf_module_customization_uuid",

      "param-value": "${vf-module-model-customization-uuid}"

    },

    {

      "param-name": "aic-cloud-region",

      "param-value": "${aic-cloud-region}"

    },

    {

      "param-name": "aic_clli",

      "param-value": "${aic_clli}"

    },

    {

      "param-name": "avaiablity_zone_0",

      "param-value": "${avaiablity_zone_0}"

    },

    {

      "param-name": "cloud_env",

      "param-value": "openstack"

    },

    {

      "param-name": "repo_url_artifacts",

      "param-value": "

https://nexus.onap.org/content/groups/staging"

    },

    {

      "param-name": "repo_url_blob",

      "param-value": "

https://nexus.onap.org/content/repositories/raw"

    },

    {

      "param-name": "dcae_collector_port",

      "param-value": "8080"

    },

    {

      "param-name": "image_name",

      "param-value": "Ubuntu 14.04 LTS Generic"

    },

    {

      "param-name": "flavor_name",

      "param-value": "m1.medium"

    },

    {

      "param-name": "install_script_version",

      "param-value": "1.2.1-SNAPSHOT"

    },

    {

      "param-name": "demo_artifacts_version",

      "param-value": "1.2.1-SNAPSHOT"