Controller Design Studio-- F2F August 26th to 28th 2019

Controller Design Studio-- F2F August 26th to 28th 2019

Prerequisite

https://lf-onap.atlassian.net/wiki/display/DW/Controller+Design+Studio+%5BCDS%5D+Documentation

Face 2 Face Controller Design Studio Agenda



  • The ONAP CDS developer communities met at Bell Canada facility in Montreal Canada. 

Contact Information:

Name

Email

Session Virtual/In-Person

Name

Email

Session Virtual/In-Person

@ali.daher

ali.daher@bell.ca

In-Person

@Marc-Alexandre Choquette



In-Person

@Munir Ahmad



In-Person

@Alexis de Talhouët



In-Person

@Serge Simard



In-Person

@Oleg Mitsura



In-Person

@Prathamesh



In-Person

@Rashmi Pujar



In-Person

@Mike Elliott



In-Person

@Olivier Bodard





@Sebastien Premont





@Yuriy Malakov

Yuriy.Malakov@att.com

In-Person

@Dan Timoney



In-Person

@Eric Multanen (Deactivated)



In-Person

@Adil Mir



In-Person

@Steve Alphonse Siani (Deactivated)



In-Person

@Rahul Sharma



In-Person

@Kirill Lukashin (Deactivated)



Virtual

Agenda for the week of August 26th 2019



NOTE: Monday and Tuesday session will happen in Downtown Montreal for ease of travel to most of those joining out of town. Wednesday session will take place at Nuns Island to allow a go and see to the Bell campus where the ONAP squads are located.  



Monday 



Tuesday 



Wednesday 



NEWTON ROOM 8th floor- 671, rue de la Gauchetière O. MONTREAL PQ

NEWTON ROOM 8th floor- 671, rue de la Gauchetière O. MONTREAL PQ

Room E1.2 1, carrefour Alexander-Graham-Bell VERDUN - CAMPUS MONTREAL PQ, H3E3B3,

09:00AM

Welcome, Introduction, logistics, overview of Agenda and CDS roadmap.  Adjust Agenda if needed 



No Recording

Dis-aggregation of CDS Resource Resolution from Blueprintprocessor





Go and See of Bell ONAP squads 





09:30AM

Designer screen for CBA package + feedback from Bell Network Programmability team @carrie.lau

No Recording 

10:00AM

10:30AM

 Break

Break

Break

10:45AM

CDS Test Strategy

Align test coverage with CDS features upgrades

Add CDS Health Check for Robot

Add a black box test case for CDS via Robot

Add a use case test case for CDS via Robot

UAT test 



No Recording



CDS: Queue Mechanism/Priority Execution



Resource LCM  Resolution

VNF LCM Resolution, SO and CDS tighter integration



No Recording 



11:30AM

12:00PM

Lunch

Lunch



 Lunch

 

12:30PM

1:00PM

AAF Integration with Blueprint processor /Controller blueprint

Refactor Logging in CDS components to integrate full error management (error handler and error code)





CDS. Atomic Transaction for Multi Device level connection 



CDS capabilities in Frankfurt to meet 5G requirements





1:30PM

2:00PM

2:30PM

3:00PM

Break 

Break 

Break 

3:30PM

CDS security and gRPC TLS/Authentication 





(Buffer: DSL topic, Consolidate Blueprint processor and controller blueprints MS) 





CDS Mediation Layer: Store the configlet content that is pushed to network via Ansible/Python in a database as a service. Retrieve configlet content form Ansible/Chef etc.. 







CDS Policy and roadmap. 





4:00PM

4:30PM

5:00PM

Generation of the OPEN-API google protobuff specification for CBA Packages. 

CDS and MultiCloud Integration



5:30PM

6:30-8PM

Team Dinner: Moxies, 1207 Boulevard Robert-Bourassa, Montréal, QC H3B 0C3

Retrospective around the workshop (check and adjust) + Team Dinner 

Retrospective around the workshop

Meeting Minutes: 

Meeting Minutes:

  1. gRPC CDS Integration [primary priority]

    • Action Item:

    •  

      • Yuriy to create a US for Frankfurt to move all the CDS UI API leveraging the blueprint processor for enrich , save, publish, download

    • NOTE: Work remaining for the integration of the controller blueprints capabilities in blueprint processor

  2.  

    • In Dublin release gRPC not supported by Controller blueprints

    • Frankfurt release there is an effort to combine the controller blueprints with blueprint processor. Blueprint processors support gRPC endpoints.

  3. Event Based Message integration with CDS

    • CDS à Kakfa/Dmaap

    • Kafka/Dmaap à CDS

    • Action Item:

    •  

      • Prat to provide a the information for show casing this capability  in ONAP.

      • Brinda to work with Prat on the improvement to the kafka implementation. 

  4.  

    •  Use Case need to be show cases in ONAP. Bell C has up streamed the Kafka and Dmaap support in ONAP with CDS integration.

  5. Health Check Strategy

    • Action Item:

    •  

      • Yuriy to work with Abdel to support the health check integration with new health check API

      • Alexis to provide guidance on the standardize on the health check implementation for all the endpoint and provide the output via a single api. Janani??

  6.  

    • The current health check API only checks the self service API. In Frankfurt release, the proposal is to expose endpoint that will be able to do all the health check api for all the cds design time and run time functions.

  7. Testing Strategy: 

    • 1. Verify Job integration the sonar check to prevent new code from being submitted  --> refining the JJ-Job --to define the Jenkins job builder. Prototype....

      • Yuriy to setup a call with Jessica include Ebo, Alexis, Dan T, Prat

      • Ebo to look into the tool to help provide a clear view on the health of the project before integration.

      • Ebo add the capability for testing UAT Test as part of the run time. (Mock vs real ENV). combination of the run time output and Mock expectation output using the run time results. --SELF SERVICE CSIT for enriched CBA as part of run time execution.

      • Yuriy to work with Ebo to extended the UAT Test file to vLB and vFW use case.

      • Ebo to extended the declarative testing to enrichment validation for CBA Package.

      •  

        • No Enrich Blueprint > Validate Enrichment process;

      • Arundathi and Ebo to enable the Testing folder to allow a list of UAT files for verifying list of actions.

      •  

        • Multiple file for UAT--is expecting --> we should have a pattern for each of the UAT and actions.

      • NOTE:

        • Automatically create serverless function --running a build --Docker Image deploy > Kick off testing and returning test results.

        • Providing mock information FOR EXTERNAL SYSTEM. Mock Packages.

        • Technology YAML > YAML error prone?  DSL Domain Specific language. Brinda recommendation

      •  

        • General Comment from Dan T: No permission to disable false positive discovery by sonar. --talk to Jessica

        • Move integration test to unit test

        • integration test –

        • Unit Test --- complimentary to acceptance test

        • Acceptance test --- ete test with external testing.

        • UAT Testing of the CBA critical to verify the backwards compatibility and introduction of new features.

        • Select the ENV to run---

    •  

      • Linux foundation support might be needed...to have sonar analysis the new code coverage

      • Action Item:

  8.  

    • Test Coverage -->

    • ideas   

  9. Heat Bridge

    • Munir to contribute the heat bridge so implementation for create A&AI object which include the pserver object creation.

    • Munir  contribute the heat bridge so implementation to delete the A&AI object as part of the delete flow.

  10.  

    • Action Items:

      • Munir to contribute the fix. 



  1. CDS & AAF Integration – 

    • CBA support the notion of adding new action which needs to be correlated to the list of users that might be able to executed as part of the design time activity. 

    • Brinda to provide update to Mike on the AAF/Service Meshing integration. Brinda to share AAF documentation for CBA Package integration notion.

    • Yuriy to add Mike to the thread for AAF Integration

    • Yuriy to setup a call with Ajay S on the call NPM Implementation of user role management via AAF REST API layer.

    • Yuriy to add a roadmap item for CDS UI and AAF Integration for User Role Management –ADMIN User needed??? Placeholder

    • Henry to add a flag to turn off aaf

    •  

      • If aaf is disable then http is supported.

    • NOTE:

      • New Servlet version à Intercept concept is supported with version 3.0.

      • Bell Canada is leading effort for service mesh/ISTO

      • Need to be bound to AAF, Service Meshing and ISTO

      • Mike à ISTO/Service Meshing support à What is possible Frankfurt ???

    •  

      • Endpoint role management à Web flux (non-block integration) ???

      • Service mesh and ISTO

  2.  

    • Namespace Creation and User Role Management is managed with AAF

    • CBA Package should include reference to the AAF Namespace for role and users that are able to execution the CDS action within the CBA context. Each CBA might have a unique or shareable namespace. This implementation should be implemented via REST Layer.

    • AAF Integration with CBA for G release or H release. 

    • Action Items:



  1. Platform CDS Logging, Tracing, and Error Modeling

    • Error Code to Error message mapping within a component

    • All Error code and messages need to be document with hints of common remediation/resolution

    • Aggregated all the errors and make sure if an error occurs its tied to error code.

    • Platform Error à  Derived from NodeTypes.

    • Parallel process request error à capture multiple error and aggregate back to the users.

    • Ebo provide link to à

    •  

    • Event based logging needed for CDS Platform. Logging message event. (Request to maintain all the chain) (Diary of events) Request , Blueprint name, version.

    • Application performance monitoring à Tracing tracking the run time actions within the CBA. 

    • Benefits: what are the benefits.

    • ELK à provides but not opensource.

    • Alexis looking at alternative.  à Zipkin is opensource. (Elizar provide this as well)

    • Resource à Required ???     

  2.  

    • Error Modeling  à —  Design review for the platform and CBA (component). Yuriy to setup a review with Brinda , Munir, Serge, Alexis etc..

    • Logging:  logger wrapper? Brinda has added a notion in the latest code.  Yuriy to setup a design review with Brinda  Munir, Serge,, Alexis etc..

    • Tracing à – Zipkin Alexis poc



  1. CBA Specification Generation [Janani??]

  1.  

    • As part of the enrichment process generate a spec using a template engine.

      • Create a folder to store

      • Template Engine for a Version

      •  

        • OPEN-API

        • Google Protobuf (gRPC Client)

        • TOSCA à

        • Any model

      • Which version to generate à

        • Action Item: Rashmi to bring this topic up with CLAMP UI Team.

        •  

          • Options: gRPC and OPEN-API

      •  

        • CLAMP UI support TOSCA rendering???

      • NOTE:

      •  

    •  

      • Spec generation

      • Yuriy and Rashmi shall follow up with clamp team and the expectations. 



  1. Frankfurt Controller Blueprints implementation consolidation into controller blueprint processor.

    • Yuriy to create placeholder US to cover the below UI Scope planned for Frankfurt release:

      • Serverless function create an dynamically image and deploy with native k8s API. [Roadmap Item]

      • Spin up new blueprint processor only in testing environment and not in production is expected.

      • Serverless function allows you to build image on the fly.

      • Assumption: Production will have a stable set of containers/pod.

    •  

      • CDS UI to call the CDS Blueprints designer apià     

      • CDS UI to discover the blueprint process instance à Configuration management  [roadmap.  item]

      • CDS UI to spin up run time.  [Roadmap item]

      • Remove t

      • NOTE:

  2.  

    • Action Item:

      • G release - Yuriy to create a user story to for OOM to remove the controller blueprints ms. 

        • Abdel