CLAMP R4 - M3 Architecture Review

  1. Project Overview
    CLAMP is the place where you manage the runtime of the Control loop(distributed by SDC) in ONAP:

    1. you can configure the parameters of the µS composing the Control Loop:

      1. this is achieved by creating/updating/deleting policies (configuration policies).

      2. the above policies will be associated to the deployed µS

    2. you can configure the Operation to be taken by the Control Loop:

      1. this is achieved by creating/updating/deleting policies (operational policies).

    3. you can deploy/un-deploy Control Loop flow(blueprint) to DCAE

    4. in separated/independent Docker containers, you have the "Control Loop Dashboard" which is an ELK stack dedicated to display DMAAP messages related to runtime control loop messages (from DCAE/Policy/APPC).

  2. New component capabilities for Dublin, i.e. the functional enhancements

    1. introduction of the model driven approach for Control Loops

      1. add policy-model to the SDC distribution

      2. automatic rendering of configuration policy ui based on the distributed policy-model 

      3. better rendering of the display of the Control Loop flow based on the distributed blueprint

    2. enhance internal model to better support model driven approach

  3. New or modified interfaces

    1. User interface generation will stay the same  even though its generation method will change.

    2. Some new internal interface will be created to support the new internal model. those new interface won't be backward compatible since they will be new
      and they are internal anyway(so it won't disturb any other project).

  4. Interface naming

    CLAMP supports the following interfaces:

    1. Control Loop Life Cycle Management User interface (LCM UI) for:

      1. selecting the Control Loop flow.

      2. entering configuration policy parameter.

      3. entering operational policy parameter.

      4. manage lifecycle of DCAE blueprint (Control Loop flow).

    2. Control Loop dashboard User Interface based on "Kibana" (ELK stack, completely independent from LCM UI). 

  5. Reference to the interfaces

    1. for the UI see readthedocs(obviously still under development for Dublin) : CLAMP latest user guide

    2. internal interface are available via swagger : clamp swagger pdf

  6. What are the system limits

    1. none so far, CLAMP is not a in the path of runtime call, so it is not heavily hit by massive amount of call. So auto scaling is not really required
      but could be added.

    2. DB redundancy/HA relies on kubernetes and persistent volume. mariaDB cluster can be a future improvement

    3. Application redundancy/HA relies on kubernetes.

  7. Involved use cases, architectural capabilities or functional requirements

    1. scaling use cases

    2. model driven Control Loop: Model driven Control Loop Design

  8. Listing of new or impacted models used by the project (for information only)

    1. None.