Versions Compared

Key

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

...

2.1 Mapping of existing (through El Alto) Policy YAML Operational Definition


Code Block
languagejsyml
titleMapping of existing Operational policy to TOSCA Policy TypeExample Policy - one-2-one mapping of the El Alto YAML operation definition
linenumberstrue
collapsetrue
tosca_definitions_version: tosca_simple_yaml_1_0_0
policy_typestopology_template:
   policies:
     onap.policies.controlloop.operational.Common -
        operational.scaleout:
        derived_from   type: toscaonap.policies.controlloop.RootOperational
           version: 21.0.0
        description   metadata:
 Operational Policy for Control Loop execution
        properties:policy-id: operational.scaleout
            idproperties:
             controlLoopName: ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3
   type: String
         triggerOperation: unique-policy-id-1-scale-up
      description: The unique control loop id
  timeout: 1200
             requiredabatement: truefalse
            timeout operations:
               - typeid: Integer
unique-policy-id-1-scale-up
                 descriptionname: OverallCreate timeouta fornew executingVF allModule
 the operations.
                requireddescription:
 true
            abatement:
    actor: SO
           type: Boolean
     operation: VF Module Create
        description: Whether an abatement will be expected for the control loop.target:
                required: true
  target: VNF
             default: false
            operationpayload:
                description: Initial operation to execute upon receiving an Onset event for the Control Loop.
requestParameters: '{"usePreload":true,"userParams":[]}'
                        required: true
 configurationParameters: '[{"ip-addr":"$.vf-module-topology.vf-module-parameters.param[9]","oam-ip-addr":"$.vf-module-topology.vf-module-parameters.param[16]","enabled":"$.vf-module-topology.vf-module-parameters.param[23]"}]'
                entry_schema:
 retry: 0
                 timeout: 1200
   type: onap.datatype.controlloop.operation.Directive

      onap.policies.controlloop.operational.Apex:
        derived_from: onap.policies.controlloop.operational.Commonsuccess: final_success
        version: 1.0.0
        descriptionfailure: Operationalfinal_failure
  policies for Apex PDP
        properties:

    onap.policies.controlloop.operational.Drools:failure_timeout: final_failure_timeout
        derived_from: onap.policies.controlloop.operational.Common
        versionfailure_retries: 1.0.0final_failure_retries
        description: Operational policies for Drools PDP
        propertiesfailure_exception:
            controller: final_failure_exception
                 failure_guard: final_failure_guard



2.2 Use of NodeTypes and CapabilityTypes to support Actor/Operation definition

Code Block
languagejs
titleMapping of existing Operational policy to TOSCA Policy Type
linenumberstrue
collapsetrue
tosca_definitions_version: tosca_simple_yaml_1_0_0
policy_types:
    onap.policies.controlloop.operational.Common:
        derived_from: tosca.policies.Root
        version: 2.0.0
        description: Operational Policy for Control Loop execution
        properties:
            id:
                type: String
    description: Drools controller properties
                required: true
                entry_schema:
            description: The unique control loop id
      type: onap.datatype:controlloop.controller.Drools          required: true
            timeout:
                type: Integer
               
data_types:
 description: Overall timeout for executing all the operations.
      onap.datatype:controlloop.controller.Drools:
          required: true
            derived_from: tosca.datatypes.Rootabatement:
        version: 1.0.0
        descriptiontype: DefinitionBoolean
 of the target type for operations during control loops
        propertiesdescription:
 Whether an abatement will be expected for 
the control   onap.datatype.controlloop.TargetType:loop.
        derived_from: tosca.datatypes.Root
        versionrequired: 1.0.0
true
           description: Definition of the target typedefault: forfalse
 operations during control loops
        propertiesoperation:
            target:
    description: Initial operation to execute upon receiving an Onset event for the type:Control StringLoop.
                descriptionrequired: Thetrue
 type target the operation is performed against.
         entry_schema:
       required: true
            type: onap.datatype.controlloop.operation.Directive

    constraintsonap.policies.controlloop.operational.Apex:
        derived_from: onap.policies.controlloop.operational.Common
        version: 1.0.0
        valid_valuesdescription: [VNF, VM, VNFC, VFMODULE, PNF]Operational policies for Apex PDP
        properties:

    resourcesonap.policies.controlloop.operational.Drools:
        derived_from: onap.policies.controlloop.operational.Common
       type version: String1.0.0
        description: Operational policies for Drools PDP
        descriptionproperties: |
            controller:
        The resource in which the operation is be performeddescription: against.Drools Bycontroller default,properties
                required: true
      an onset event will contain resource identification which should be used
entry_schema:
                    type: onap.datatype:controlloop.controller.Drools
   for the operation (if applicable) if this field is missing.
                    
data_types:
    onap.datatype:controlloop.controlloopcontroller.OperationDrools:
        derived_from: tosca.datatypes.Root
        version: 1.0.0
        description: An operation supported by an actor Definition of the target type for operations during control loops
        properties:
        
    idonap.datatype.controlloop.TargetType:
                type: Stringderived_from: tosca.datatypes.Root
        version: 1.0.0
        description: UniqueDefinition identifier forof the operation
target type for operations during control loops
          requiredproperties: true
            targettypetarget:
                descriptiontype: The target type supported by the operationString
                requireddescription: true
The type target the operation is           entry_schema:performed against.
                required: true
   type: onap.datatype.controlloop.TargetType
            parametersconstraints:
                type: Map
   valid_values: [VNF, VM, VNFC,    VFMODULE, PNF]
      description: Optional parameters required by the operationresources:
                requiredtype: falseString
            payload:
    description: |
           type: Map
        The resource in which the operation is  description: Optional payload that is passed from the policy to the actor for operation execution.
be performed against. By default,
                 
    onap.datatype.controlloop.operation.Directive:
        derived_from: tosca.datatypes.Rootan onset event will contain resource identification which should be used
        version: 1.0.0
        description: Policy definitions for taking actions during a Control Loop event the operation (if applicable) if this field is missing.
        properties:
            id:
    onap.datatype.controlloop.Operation:
            typederived_from: Stringtosca.datatypes.Root
        version: 1.0.0
        description: Unique ID for theAn operation
     supported by an actor
        requiredproperties: true
            descriptionid:
                type: String
                description: AUnique user-friendly description ofidentifier for the directiveoperation
                required: falsetrue
            actortargettype:
                description: The actortarget thattype willsupported performby the operation
                required: true
                entry_schema:
                    type: onap.nodetypedatatype.controlloop.ActorTargetType
            parameters:
            operation:    type: Map
                description: TheOptional parameters required by the operation the actor should perform on the target
                required: false
            payload:
                requiredtype: trueMap
                entry_schema:
             description: Optional payload that is passed from the policy to the actor for operation execution.
    
   type: onap.datatype.controlloop.operation.Directive:
        derived_from: tosca.datatypes.Root
   target:     version: 1.0.0
        description: Policy definitions for taking actions during a  description: The target this operation is performed againstControl Loop event
        properties:
            id:
                requiredtype: trueString
                entry_schema:
    description: Unique ID for the operation
                typerequired: onap.datatype.controlloop.targettypetrue
            timeoutdescription:
                type: IntegerString
                description: A Theuser-friendly amountdescription of time for the actor to perform the operation.directive
                required: truefalse
            retriesactor:
                typedescription: Integer
The actor that will perform the operation
          description: The number of retries the actor should attempt to perform the operation.
required: true
                entry_schema:
    required: true
                defaulttype: 0onap.nodetype.controlloop.Actor
            successoperation: 
                description: PointsThe tooperation the operationactor toshould invokeperform on success.the target
                required: falsetrue
                default: final_success
entry_schema:
                    entry_schema:
type: onap.datatype.controlloop.operation
            target:
         type: onap.datatype.controlloop.operation.directive
       description: The target this operation is performed failure:against
                description: Points to the operation to invoke on Actor operation failure.required: true
                entry_schema:
                required: false
   type: onap.datatype.controlloop.targettype
            defaulttimeout: final_failure
                entry_schematype: Integer
                description: The amount of time  type: onap.datatype.controlloop.operation.directivefor the actor to perform the operation.
            failure_timeout:
    required: true
           description: Points to the operation to invoke when the time out for the operation occurs.
 retries:
                type: Integer
          required: false
     description: The number of retries the actor should attempt to perform default: final_failure_timeoutthe operation.
                entry_schemarequired: true
                    typedefault: onap.datatype.controlloop.operation.directive0
            failure_retriessuccess: 
                description: Points to the operation to invoke when the current operation has exceeded its max retrieson success.
                required: false
                default: final_failure_retriessuccess
                entry_schema:
                    type: onap.datatype.controlloop.operation.directive
            failure_exception: 
                description: Points to the operation to invoke whenon the currentActor operation causes an exceptionfailure.
                required: false
                default: final_failure_exception
                entry_schema:
                    type: onap.datatype.controlloop.operation.directive
            failure_guardtimeout: 
                description: Points to the operation to invoke when the currenttime operationout isfor blockedthe due to guard policy enforcementoperation occurs.
                required: false
                default: final_failure_guard     timeout
                entry_schema:
                    type: onap.datatype.controlloop.operation.directive

node_types:
    onap.nodetype.controlloop.Actor:
        derived_from: tosca.nodes.Root
        version: 1.0.0
        description: Actor involved in executing operations in a control loop

             propertiesfailure_retries:
            id:
    description: Points to the operation to invoke when the current operation has exceeded its type:max Stringretries.
                descriptionrequired: Unique identifier for the actorfalse
                requireddefault: truefinal_failure_retries
        capabilities:
        entry_schema:
    operation:
                type: onap.datatype.controlloop.capabilityoperation.Operationdirective
            capabilitiesfailure_exception: 
                type: List
      description: Points to the operation to invoke when the current operation causes an exception.
          description: List of operations available for therequired: actorfalse
                requireddefault: truefinal_failure_exception
                entry_schema:
                    type: onap.datatype.controlloop.Operation
capability_types:
    onap.controlloop.capability.appc.ModifyConfig:operation.directive
        derived_from: tosca.nodes.Capabilities
        properties:

topology_template:
    node_templates:
        onap.nodetype.controlloop.actor.Appc:
failure_guard: 
              type: onap.nodetype.controlloop.Actor
            id: APPC  description: Points to the operation to invoke when the current operation is blocked due to guard policy enforcement.
            description:  APPC control looprequired: actorfalse
            capabilities:
    default: final_failure_guard     
        ModifyConfig:
        entry_schema:
            type: onap.controlloop.capability.appc.ModifyConfig
       type: onap.nodetypedatatype.controlloop.actoroperation.AppcLcm:
     directive

node_types:
       type: onap.nodetype.controlloop.Actor:
        derived_from: tosca.nodes.Root
    id: APPCLCM
   version: 1.0.0
        description: APPCActor LCMinvolved controlin loopexecuting actor
operations in a control loop
        capabilitiesproperties:
                Restartid:
                    type: onap.controlloop.capability.appclcm.RestartString
                Rebuilddescription:
 Unique identifier for the actor
                typerequired: onap.controlloop.capability.appclcm.Rebuildtrue
        capabilities:
        Migrate:
    operation:
                type: onap.controlloop.capability.appclcm.MigrateOperation
            capabilities:
    ConfigModify:
            type: List
       type: onap.controlloop.capability.appclcm.ConfigModify
        onap.nodetype.controlloop.actor.Cds:
       description: List of operations available for the actor
     type: onap.nodetype.controlloop.Actor
            idrequired: CDStrue
            description: CDS control loop actorentry_schema:
            capabilities:
        type: onap.datatype.controlloop.Operation
capability_types:
       onap.controlloop.capability.appc.ModifyConfig:
        derived_from: tosca.nodes.Capabilities
        properties:

topology_template:
    type: onap.controlloop.capability.cds.ModifyConfignode_templates:
        onap.nodetype.controlloop.actor.SdncAppc:
            type: onap.nodetype.controlloop.Actor
            id: SDNCAPPC
            description: SDNCAPPC control loop actor
            capabilities:
                rerouteModifyConfig:
                    type: onap.controlloop.capability.sdnc.reroute
                BandwidthOnDemand:
                    type: onap.controlloop.capability.sdnc.BandwidthOnDemandappc.ModifyConfig
        onap.nodetype.controlloop.actor.SdnrAppcLcm:
            type: onap.nodetype.controlloop.Actor
            id: SDNRAPPCLCM
            description: SDNRAPPC LCM control loop actor
            capabilities:
                ModifyConfigRestart:
                    type: onap.controlloop.capability.sdnrappclcm.ModifyConfigRestart
        onap.nodetype.controlloop.actor.So:
            type: onap.nodetype.controlloop.Actor
   Rebuild:
         id: SO
            description: SO control loop actor
 type: onap.controlloop.capability.appclcm.Rebuild
           capabilities:
                VFModuleCreateMigrate:
                    type: onap.controlloop.capability.soappclcm.VFModuleCreateMigrate
                VFModuleDeleteConfigModify:
                    type: onap.controlloop.capability.soappclcm.VFModuleDeleteConfigModify
        onap.nodetype.controlloop.actor.VfcCds:
            type: onap.nodetype.controlloop.Actor
            id: VFCCDS
            description: VFCCDS control loop actor
            capabilities:
                RestartModifyConfig:
                    type: onap.controlloop.capability.vfc.Restart
                    
Code Block
languageyml
titleExample Policy - one-2-one mapping of the El Alto YAML operation definition
linenumberstrue
collapsetrue
tosca_definitions_version: tosca_simple_yaml_1_0_0
topology_template:
   policies:
      -cds.ModifyConfig
        operational.scaleoutonap.nodetype.controlloop.actor.Sdnc:
            type: onap.policiesnodetype.controlloop.OperationalActor
            versionid: 1.0.0SDNC
            metadatadescription:
 SDNC control loop actor
         policy-id: operational.scaleout
  capabilities:
         properties:
       reroute:
      controlLoopName: ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3
             triggerOperation: unique-policy-id-1-scale-up
     type: onap.controlloop.capability.sdnc.reroute
        timeout: 1200
       BandwidthOnDemand:
      abatement: false
             operations:
type: onap.controlloop.capability.sdnc.BandwidthOnDemand
        onap.nodetype.controlloop.actor.Sdnr:
           - id: unique-policy-id-1-scale-uptype: onap.nodetype.controlloop.Actor
            id: SDNR
    name: Create a new VF Module
   description: SDNR control loop actor
          description  capabilities:
                ModifyConfig:
  actor: SO
                 operationtype: VF Module Createonap.controlloop.capability.sdnr.ModifyConfig
        onap.nodetype.controlloop.actor.So:
         target:
   type: onap.nodetype.controlloop.Actor
               targetid: VNFSO
            description: SO control loop  payload:actor
            capabilities:
       requestParameters: '{"usePreload":true,"userParams":[]}'
         VFModuleCreate:
          configurationParameters: '[{"ip-addr":"$.vf-module-topology.vf-module-parameters.param[9]","oam-ip-addr":"$.vf-module-topology.vf-module-parameters.param[16]","enabled":"$.vf-module-topology.vf-module-parameters.param[23]"}]'
          type: onap.controlloop.capability.so.VFModuleCreate
                VFModuleDelete:
   retry: 0
                 type: onap.controlloop.capability.so.VFModuleDelete
        timeout: 1200onap.nodetype.controlloop.actor.Vfc:
            type: onap.nodetype.controlloop.Actor
     success: final_success
      id: VFC
          failure: final_failure
 description: VFC control loop actor
            failure_timeout: final_failure_timeoutcapabilities:
                 failure_retries: final_failure_retries
Restart:
                    failure_exception: final_failure_exception
type: onap.controlloop.capability.vfc.Restart
                   failure_guard: final_failure_guard



2.2 Mapping using TOSCA Triggers

...