| .. This work is licensed under a Creative Commons Attribution 4.0 |
| .. International License. http://creativecommons.org/licenses/by/4.0 |
| .. Copyright (C) 2019 IBM. |
| .. _master_index: |
| |
| .. _cds_main-doc: |
| |
| CONTROLLER DESIGN STUDIO (CDS) |
| ============================== |
| .. toctree:: |
| :maxdepth: 1 |
| |
| 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) |
| * 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. |
| |
| |cdsArchitectureImage| |
| |
| |
| Modeling Concept |
| ---------------- |
| |
| In Dublin release, the CDS community has contributed a framework to automate |
| the resolution of resources for instantiation and any config provisioning |
| operation, such as day0, day1 or day2 configuration. |
| |
| The content of the CBA Package is driven from a catalog of reusable data |
| dictionary, component and workflow, delivering a reusable and simplified |
| self service experience. |
| |
| TOSCA based JSON formatted model following standard: |
| http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.2/csd01/TOSCA-Simple-Profile-YAML-v1.2-csd01.html |
| |
| Most of the TOSCA modeled entity presented in the bellow documentation can |
| be found here: |
| https://github.com/onap/ccsdk-cds/tree/master/components/model-catalog/definition-type/starter-type |
| |
| Tosca Model Reference: |
| |
| |toscaModel| |
| |
| Modeling Concept Links: |
| ~~~~~~~~~~~~~~~~~~~~~~~ |
| |
| .. toctree:: |
| :maxdepth: 1 |
| |
| modelingconcepts/index |
| |
| Scripts |
| ------- |
| |
| Library |
| ~~~~~~~ |
| |
| * NetconfClient |
| |
| In order to facilitate NETCONF interaction within scripts, a python NetconfClient binded to our Kotlin implementation is made available. This NetconfClient can be used when using the component-netconf-executor. |
| |
| The client can be find here: https://github.com/onap/ccsdk-cds/blob/master/components/scripts/python/ccsdk_netconf/netconfclient.py |
| |
| * ResolutionHelper |
| |
| When executing a component executor script, designer might want to perform |
| resource resolution along with template meshing directly from the script |
| itself. |
| |
| The helper can be found in below link: |
| https://github.com/onap/ccsdk-apps/blob/master/components/scripts/python/ccsdk_netconf/common.py |
| |
| .. |toscaModel| image:: media/tosca_model.jpg |
| :width: 500pt |
| |
| .. |cdsArchitectureImage| image:: media/CDS_architecture.jpg |
| :width: 500pt |
| |
| User Guide |
| ---------- |
| |
| .. toctree:: |
| :maxdepth: 3 |
| |
| userguide/developer-guide |
| userguide/installation |
| userguide/designtime |
| |
| Use Cases |
| --------- |
| |
| .. toctree:: |
| :maxdepth: 2 |
| |
| usecases/use-cases |
| |
| CDS Designer UI |
| --------------- |
| |
| .. toctree:: |
| :maxdepth: 2 |
| |
| ui/designer |
| |
| |
| Controller Design Studio Presentation |
| ------------------------------------- |
| |
| Details about CDS Architecture and Design detail, Please click the link. |
| :download:`CDS_Architecture_Design <media/CDS_Architecture_Design.pptx>` |