Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

1.0 Base Control Loop Policy Type

ALL Control Loop Policy Types derive from this so that CLAMP as well as auditing/monitoring tools can organize/find all the policies associated with a Control Loop.


ISSUE #1: Should this be a list??


Code Block
languagejs
titleBase Control Loop Datatype for ALL Control Loop Policy Types
linenumberstrue
tosca_definitions_version: tosca_simple_yaml_1_0_0
policy_types:
    -
  
     onap.policies.controlloop.RootCommon:
            derivedderived_from: tosca.policies.Root
   
        version: 1.0.0

           description: Root|
policy type for all Control Loop Policies      Base policy type that is shared by properties:all Control Loop Policy Types. Helps to organize all the
       controlLoopId:     policies for a Control Loop and ensure they are tied together by a common ID. Helps type:toward
string            alleviating too much external knowledge required to ensure the required:fields truecontained in different 
            types of Policies are consistent description:with Theeach uniqueother.
ID identifying the control loop. There are no semanticproperties:
meaning tied to this name.
			

2.0 Example Usages of Base Control Loop Policy Type

The following shows how the base Control Loop Policy Type can be used.

2.1 How current Policy Types would derive from Base Control Loop Policy Type

As of Dublin/El Alto, we have these Policy Types that will need to derive from the base type.

  • CLAMP will be able to search for Monitoring Policy Types to associate with DCAE uS
  • CLAMP will be able to search for all possible guard and operational Policy Types
Code Block
languagejs
titleBase Control Loop Policy Types
linenumberstrue
tosca_definitions_version: tosca_simple_yaml_1_0_0
policy_types:
    -        id:
                type: String
                description: The unique control loop id.
                required: true
            domain:
                description: Identifies the domain for the Control Loop. Virtual vs Physical
                required: true
                type: TBD
            eventPublished:
                description: |
                    Describes the event that is published when the application detects the ONSET of
                    a Control Loop condition. For example, VES vs ControlLoopEvent
                required: true
                type: TBD
            topics:
                description: List of Dmaap topics that will be used by the ONAP components to communicate.
                required: true
                type: TBD
                

2.0 Example Usages of Base Control Loop Policy Type

The following shows how the base Control Loop Policy Type can be used.

2.1 How current Policy Types would derive from Base Control Loop Policy Type

As of Dublin/El Alto, we have these Policy Types that will need to derive from the base type.

  • CLAMP will be able to search for Monitoring Policy Types to associate with DCAE uS
  • CLAMP will be able to search for all possible guard and operational Policy Types


Code Block
languagejs
titleBase Control Loop Policy Types
linenumberstrue
    onap.policies.controlloop.common.Monitoring:
        derived_from: onap.policies.controlloop.Common
        version: 1.0.0
        description: |
            Common Control Loop Policy Type for all Monitoring Policy Types. This will contain
            shared properties that all DCAE Monitoring applications should define.
        properties:

    onap.policies.controlloop.common.monitoring.Threshold:
        derived_from: onap.policies.controlloop.common.Monitoring
        version: 1.0.0
        description: Threshold Monitoring Policy Type
        properties:

    onap.policies.controlloop.common.monitoring.Collectors:
        derived_from: onap.policies.controlloop.common.Monitoring
        version: 1.0.0
        description: Base Collectors Policy Type
        properties:

    onap.policies.controlloop.common.monitoring.collectors.VES:
        derived_from: onap.policies.controlloop.common.monitoring.Collectors
        version: 1.0.0
        description: VES Collector Policy Type
        properties:

    onap.policies.controlloop.common.Operational:
        derived_from: onap.policies.controlloop.Common
        version: 1.0.0
        description: Base Control Loop Policy Type for all Operational Policy Types
        properties:
            timeout:
                type: Integer
                description: |
                    Overall timeout for executing all the operations. This timeout should equal or exceed the total
                    timeout for each operation listed.
                required: true
            trigger:
                onap.policies.controlloop.Root:type: String
            derived_from: tosca.policies.Root   description: Initial operation to execute upon receiving an Onset event version: 1.0.0
  message for the Control Loop.
         description: Root policy type for all Control Looprequired: Policiestrue
            propertiesoperations:
                controlLoopIdtype: List
                description: List of operations to be type:performed stringwhen Control Loop is triggered.
                required: true
                    description: The unique ID identifying the control loop. There are no semantic meaning tied to this name.entry_schema:
                  -  type: onap.datatype.controlloop.Operation

    onap.policies.controlloop.common.rootoperational.MonitoringApex:
   
        derived_from: onap.policies.controlloop.Root
  .common.Operational
        type_version: 1.0.0
         version: 1.0.0
   
        description: BaseOperational Controlpolicies Loopthat Policycan Typecustomized for all Monitoring Policy Types
   Apex PDP
        properties:
				#
common properties shared between all Monitoring policy Types onap.policies.controlloop.operational.common.Drools:
        derived_from: onap.policies.controlloop.common.Operational
      # ommitted due to brevitytype_version: 1.0.0
     -     version: 1.0.0
   onap.policies.controlloop.root.Operational:     description: Operational policies that can be customzed for derived_from: onap.policies.controlloop.RootDrools PDP
        properties:
   version: 1.0.0        controllerName:
    description: Base Control Loop Policy Type for all Operational Policy Types  type: String
         properties: 				# common properties shared between all Operationaldescription: policyDrools Typescontroller properties
               # ommittedrequired: duefalse
to
brevity     -onap.policies.controlloop.common.Guard:
        derived_from: onap.policies.controlloop.root.Guard:.Common
        version: 1.0.0
        description: Base Control Loop Policy derived_from: onap.policies.controlloop.Root
   Type for all Guard Policy Types
        version: 1.0.0properties:
            descriptionactor:
Base Control Loop Policy Type for all Guard Policy Types        type: string
   properties: 				# common properties shared between all Guard policy Types    description: Specifies the Actor
         # ommitted due to brevity

2.2 Example Policy Types deriving from each Base Control Loop Policy Type

Each base Policy Type can then be further defined for specifics.

Code Block
languagejs
titleSpecific Control Loop Policy Types
linenumberstrue
tosca_definitions_version: tosca_simple_yaml_1_0_0
policy_types:   required: true
            operation:
       -         onap.policies.controlloop.root.monitoring.Threshold:type: string
                derived_from: onap.policies.controlloop.root.Monitoring
  description: Specified the Operation being performed by the Actor
         version: 1.0.0      required: true
     description: Threshold crossing DCAE uS Monitoring Policy Typetime_range:
            properties:    type: tosca.datatypes.TimeInterval
           tca_policy:     description: An optional range of time during the day the blacklist is valid for.
  type: map             required: false

     description: TCA Policy JSONonap.policies.controlloop.common.guard.FrequencyLimiter:
          derived_from: onap.policies.controlloop.common.Guard
           entry_schemaversion: 1.0.0
        description: Frequency limiter guard policy
          type: onap.datatypes.monitoring.tca_policyproperties:
            time_window:
        -         onap.policies.controlloop.root.operational.Drools:
type: scalar-unit.time
           derived_from: onap.policies.controlloop.root.Operational     description: The time window to count the actions version: 1.0.0against.
             description: Drools Operational Policyrequired: Typestrue
            propertieslimit:
                # ommitted due to brevity
type: integer
   -         onap.policies.controlloop.root.operational.Apex:    description: The limit
      derived_from: onap.policies.controlloop.root.Operational         required: true
  version: 1.0.0             descriptionconstraints:
Apex Operational Policy Types             properties:-     greater_than: 0
           # ommittedtarget:
due to brevity     -         onap.policies.controlloop.root.guard.Frequencytype: string
           derived_from: onap.policies.controlloop.root.Guard     description: An optional specific VNF to apply this version: 1.0.0guard to.
            description: Frequency limiter guard policyrequired: false
           properties: 
    onap.policies.controlloop.common.guard.Blacklist:
        derived_from:  # ommitted due to brevityonap.policies.controlloop.common.Guard
         -version: 1.0.0
        onap.policies.controlloop.root.guard.Blacklistdescription: Blacklist guard policy
        properties:
 derived_from: onap.policies.controlloop.root.Guard          blacklist:
  version: 1.0.0             descriptiontype: Blacklistlist
Control Loop guard policy             properties:description: List of VNF's
                required: true
 #   ommitted due to brevity     -    
    onap.policies.controlloop.rootcommon.guard.MinMax:
  
         derived_from: onap.policies.controlloop.rootcommon.Guard
   
        version: 1.0.0
        description: Min/Max guard policy
        description: MinMax guard policyproperties:
            min_vf_module_instances:
            properties:    type: integer
           # ommitted due to brevity required: true
  -         onap.policies.controlloop.root.guard.Coordination:     description: The minimum instances of this VF-Module
 derived_from: onap.policies.controlloop.root.Guard          max_vf_module_instances:
  version: 1.0.0             descriptiontype: Controlinteger
Loop Coordination guard policy             propertiesrequired: false
               # ommitteddescription: dueThe tomaximum brevityinstances of this   
VF-Module


QUESTION/ISSUE: Should Control Loop Coordination have its own base type? Or is it still a guard?

2.3 Example Policies for Scale Out Use Case

...