...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: onap.policies.controlloop.RootCommon: derived_from: tosca.policies.Root version: 1.0.0 description: Root| Base policy type that is shared by all Control Loop Policy Types. Helps to organize all the policies for alla Control Loop and ensure they are tied together by a common ID. Helps toward alleviating too much external knowledge required to ensure the fields contained in different types of Policies are consistent with each other. properties: controlLoopIdid: type: String description: string The unique control loop id. required: true domain: description: The unique ID identifying the control loop. There are no semantic meaning tied to this name. : 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
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types: onap.policies.controlloop.common.RootMonitoring: derived_from: toscaonap.policies.Rootcontrolloop.Common version: 1.0.0 description: Root policy type for all | Common Control Loop PoliciesPolicy Type for all Monitoring Policy Types. This will properties:contain controlLoopId:shared properties that all DCAE Monitoring applications should define. typeproperties: string onap.policies.controlloop.common.monitoring.Threshold: derived_from: onap.policies.controlloop.common.Monitoring required: true version: 1.0.0 description: TheThreshold uniqueMonitoring ID identifying the control loop. There are no semantic meaning tied to this name.Policy Type properties: onap.policies.controlloop.common.rootmonitoring.MonitoringCollectors: derived_from: onap.policies.controlloop.Rootcommon.Monitoring version: 1.0.0 description: Base Control LoopCollectors Policy Type for all Monitoring Policy Types properties: properties: # common properties shared between all Monitoring policy Typesonap.policies.controlloop.common.monitoring.collectors.VES: derived_from: onap.policies.controlloop.common.monitoring.Collectors version: 1.0.0 description: VES Collector Policy Type # ommitted due toproperties: brevity onap.policies.controlloop.rootcommon.Operational: derived_from: onap.policies.controlloop.RootCommon version: 1.0.0 description: Base Control Loop Policy Type for all Operational Policy Types properties: timeout: type: Integer description: | # commonOverall propertiestimeout sharedfor between all Operational policy Typesexecuting all the operations. This timeout should equal or exceed the total timeout for each operation listed. required: true trigger: type: String description: Initial operation to execute upon receiving an Onset event message for the Control Loop. required: true operations: type: List description: #List ommittedof due to brevityoperations to be performed when Control Loop is triggered. required: true entry_schema: type: onap.datatype.controlloop.Operation onap.policies.controlloop.rootcommon.operational.GuardApex: 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 Guard Policy Types Apex PDP properties: properties: # common properties shared between all Guard policy Typesonap.policies.controlloop.operational.common.Drools: derived_from: onap.policies.controlloop.common.Operational type_version: 1.0.0 version: 1.0.0 # ommitted due to brevity |
QUESTION/ISSUE: Should Control Loop Coordination have its own base type? Or is it still a guard?
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 | ||||||
---|---|---|---|---|---|---|
| ||||||
tosca_definitions_version: tosca_simple_yaml_1_0_0 policy_types:description: Operational policies that can be customzed for Drools PDP properties: controllerName: type: String description: Drools controller properties required: false onap.policies.controlloop.rootcommon.monitoring.ThresholdGuard: derived_from: onap.policies.controlloop.root.Monitoring Common version: 1.0.0 description: Base Control Loop Policy Type for all Guard Policy Types description: Threshold crossing DCAE uS Monitoring Policy Type properties: actor: propertiestype: string tca_policy: description: Specifies the Actor required: true type: map operation: type: string description: TCASpecified Policythe JSONOperation being performed by the Actor entry_schema:required: true time_range: type: onaptosca.datatypes.monitoring.tca_policy TimeInterval description: An optional range of time during the day the blacklist is valid for. required: false onap.policies.controlloop.rootcommon.operationalguard.DroolsFrequencyLimiter: derived_from: onap.policies.controlloop.rootcommon.OperationalGuard version: 1.0.0 description: Frequency limiter guard policy properties: description time_window: Drools Operational Policy Types properties:type: scalar-unit.time # ommitted due to brevitydescription: The time window to count the actions against. onap.policies.controlloop.root.operational.Apex:required: true derived_from: onap.policies.controlloop.root.Operationallimit: versiontype: 1.0.0 integer description: ApexThe limit Operational Policy Types propertiesrequired: true # ommitted due to brevityconstraints: - onap.policies.controlloop.root.guard.Frequencygreater_than: 0 derived_fromtarget: onap.policies.controlloop.root.Guard versiontype: 1.0.0 string description: FrequencyAn limiteroptional guardspecific policyVNF to apply this guard to. properties: required: false # ommitted due to brevity onap.policies.controlloop.rootcommon.guard.Blacklist: derived_from: onap.policies.controlloop.rootcommon.Guard version: 1.0.0 description: Blacklist guard policy properties: blacklist: description type: 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 descriptionpolicy properties: MinMax guard policy min_vf_module_instances: properties: type: integer # ommitted due to brevity onap.policies.controlloop.root.guard.Coordinationrequired: true derived_from: onap.policies.controlloop.root.Guard description: The minimum instances of this VF-Module version: 1.0.0max_vf_module_instances: 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
...