With Model Driven Control Loop feature, Policy is migrating toward new design/architecture in Dublin. This requires interfacing clients (CLAMP, DCAE) to use new LC API’s and onboarding MS to use new tosca policy model. As automated generation of models and distribution between SDC and Policy is deferred to next release, certain manual steps will be required in Dublin. The steps below should be followed by any DCAE MS targeted under CL flows deployed through CLAMP.

Policy Type Creation (Development phase)

  1. Create the MS specific blueprint, component_spec and associated data_format based on DCAE team specification (refer to details under DCAE wiki page - DCAE Service Component (MS) Deployment Options).
    Note: For components with dynamic configuration, the component spec MUST include policy schema definition (policy_editable set for required parameter exposed via policy with corresponding policy_schema defined)
  2. Use SDC/ToscaLab tool as documented here to create the base policy model. More about how to create policy types from tosca tool can be found here -> Policy type creation
    Note: If the policy model does not get generated, change the "component_type" from "docker" to "cdap" in the componentspec and retry policy model creation.

The base policy model created by the tool is not compliant to R4 model expected by Policy and CLAMP; hence following manual updates should be done. 

Manual policy updates steps
Rename node_types to policy_types
Replace policy.nodes.Root structure with onap.policies.Monitoring
 
  policy.nodes.Root:
    derived_from: tosca.nodes.Root
    properties:
      policyDescription:
        required: false
        type: string
      policyName:
        required: true
        type: string
      policyScope:
        required: true
        type: string
      policyVersion:
        required: true
    onap.policies.Monitoring:
        derived_from: tosca.policies.Root
        description: a base policy type for all policies that govern monitoring provision
        version : 1.0.0

Rename “policy.nodes.<component_name>” under policy_types  as “onap.policies.monitoring.<component_name> and as derived from onap.policies.Monitoring
Example:

      onap.policies.monitoring.cdap.tca.hi.lo.app:
        derived_from: onap.policies.Monitoring
        version : 1.0.0
        properties:
            tca_policy:
                type: list
                description: TCA Policy JSON
                entry_schema:
                    type: onap.datatypes.monitoring.tca_policy
 

Changing data_types to onap complaint name from policy.data prefix to onap.datatypes.monitoring
Example:  policy.data.metricsPerEventName -> onap.datatypes.monitoring.metricsPerEventName 

  policy.data.tca_policy -> onap.datatypes.monitoring.tca_policy

 
Update each data_types to indicate relation to tosca.datatypes.Root 
Example: 
    onap.datatypes.monitoring.tca_policy:
       derived_from: tosca.datatypes.Root


Load Policy Model into SDC repo (Development phase)

The policy model will need to be included as part SDC of deployment hence these artifacts must be added into SDC gerrit repository.

This is required for the artifacts to be included in CSAR, which CLAMP will be utilizing.

The following gerrit commits were done in Dublin to load the policy types:

https://gerrit.onap.org/r/#/c/sdc/+/82846/

https://gerrit.onap.org/r/#/c/sdc/jtosca/+/84690/

https://gerrit.onap.org/r/#/c/sdc/+/86161/

https://gerrit.onap.org/r/#/c/sdc/+/86301/

Load Policy Model into Policy api repo (Development phase)

The policy type needs to be available in the policy api in order for CLAMP to be able to create policies during Control Loop creation.

https://gerrit.onap.org/r/gitweb?p=policy/api.git;a=blob;f=main/src/main/java/org/onap/policy/api/main/startstop/ApiDatabaseInitializer.java;h=27fc83a8d64c6188ac3b498a11168e9c2f15e44f;hb=refs/heads/master

Load Blueprint into SDC (post ONAP instantiation)

This will follow the same process as done in Casablanca for blueprint to be loaded, service design created and distributed to DCAE/CLAMP.

Example TCA Blueprint - https://nexus.onap.org/content/repositories/raw/org.onap.dcaegen2.platform.blueprints/R4/blueprints/k8s-tca-clampnode.yaml


Steps to onboard DCAE blueprints : https://docs.onap.org/en/latest/submodules/integration.git/docs/docs_scaleout.html (applies to all use cases)

For onboarding VNFs and distribute models from SDC: https://wiki.onap.org/display/DW/Design


Configuration and Deployment from CLAMP

Description of configuration and deployment steps in Clamp can be found here:
https://onap.readthedocs.io/en/latest/submodules/clamp.git/docs/user-guide.html




  • No labels