Details
-
Story
-
Status: Closed
-
Medium
-
Resolution: Done
-
None
-
Policy 2022-08-31->2022-08-17
Description
DCAE will change its interface to match this format:
In this format, the domain/metrics data is a list.
To support this new functionality PAP (supported policy types), and PDP-X should change.
The models should have changes along these lines:
onap.policies.Monitoring: derived_from: tosca.policies.Root version: 1.0.0 name: onap.policies.Monitoring onap.policies.monitoring.tcagen2: derived_from: onap.policies.Monitoring version: 1.0.0 name: onap.policies.monitoring.tcagen2 properties: tca.policy: type: list description: TCA Policy JSON required: true entry_schema: type: onap.datatypes.monitoring.tca_policy onap.datatypes.monitoring.tca_policy: derived_from: tosca.datatypes.Root properties: domain: type: string required: true description: Domain name to which TCA needs to be applied default: measurementsForVfScaling constraints: - equal: measurementsForVfScaling metricsPerEventName: type: list required: true description: Contains eventName and threshold details that need to be applied to given eventName entry_schema: type: onap.datatypes.monitoring.metricsPerEventName
A policy would look something similar to this one (but would not necessarily use a different version as per Vijay's feedback, could reuse the existing version):
{ "tosca_definitions_version": "tosca_simple_yaml_1_1_0", "topology_template": { "inputs": {}, "policies": [ { "onap.vfirewall.tca2": { "type": "onap.policies.monitoring.tcagen2", "type_version": "2.0.0", "properties": { "tca.policy": [ { "domain": "measurementsForVfScaling", "metricsPerEventName": [ { "eventName": "Mfvs_eNodeB_RANKPI", "controlLoopSchemaType": "VNF", "policyScope": "resource=vFirewall;type=configuration", "policyName": "configuration.dcae.microservice.tca.xml", "policyVersion": "v0.0.1", "thresholds": [ { "closedLoopControlName": "CL-FRWL-LOW-TRAFFIC-SIG-d925ed73-8231-4d02-9545-db4e101f88f8", "closedLoopEventStatus": "ONSET", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated", "thresholdValue": 4000, "direction": "LESS_OR_EQUAL", "severity": "MAJOR" }, { "closedLoopControlName": "CL-FRWL-HIGH-TRAFFIC-SIG-EA36FE84-9342-5E13-A656-EC5F21309A09", "closedLoopEventStatus": "ONSET", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated", "thresholdValue": 20000, "direction": "GREATER_OR_EQUAL", "severity": "CRITICAL" }, { "closedLoopControlName": "CL-FRWL-HIGH-TRAFFIC-SIG-EA36FE84-9342-5E13-A656-EC5F21309A09", "closedLoopEventStatus": "ABATED", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated", "thresholdValue": 0, "direction": "EQUAL", "severity": "CRITICAL" } ] }, { "eventName": "vLoadBalancer", "controlLoopSchemaType": "VNF", "policyScope": "resource=vLoadBalancer;type=configuration", "policyName": "configuration.dcae.microservice.tca.xml", "policyVersion": "v0.0.1", "thresholds": [ { "closedLoopControlName": "CL-LBAL-LOW-TRAFFIC-SIG-FB480F95-A453-6F24-B767-FD703241AB1A", "closedLoopEventStatus": "ONSET", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated", "thresholdValue": 500, "direction": "LESS_OR_EQUAL", "severity": "MAJOR" }, { "closedLoopControlName": "CL-LBAL-LOW-TRAFFIC-SIG-0C5920A6-B564-8035-C878-0E814352BC2B", "closedLoopEventStatus": "ONSET", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated", "thresholdValue": 5000, "direction": "GREATER_OR_EQUAL", "severity": "CRITICAL" } ] }, { "eventName": "virtualVMEventName", "controlLoopSchemaType": "VM", "policyScope": "resource=virtualVM;type=configuration", "policyName": "configuration.dcae.microservice.tca.xml", "policyVersion": "v0.0.1", "thresholds": [ { "closedLoopControlName": "CL-LBAL-LOW-TRAFFIC-SIG-FB480F95-A453-6F24-B767-FD703241AB1A", "closedLoopEventStatus": "ONSET", "version": "1.0.2", "fieldPath": "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated", "thresholdValue": 500, "direction": "LESS_OR_EQUAL", "severity": "MAJOR" } ] } ] }, { "domain": "measurement", "metricsPerEventName": [ { "eventName": "vFirewallBroadcastPackets", "controlLoopSchemaType": "VM", "policyScope": "DCAE", "policyName": "DCAE.Config_tca-hi-lo", "policyVersion": "v0.0.1", "thresholds": [ { "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a", "version": "1.0.2", "fieldPath": "$.event.measurementFields.nicPerformanceArray[*].receivedTotalPacketsDelta", "thresholdValue": 300, "direction": "LESS_OR_EQUAL", "severity": "MAJOR", "closedLoopEventStatus": "ABATED" }, { "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a", "version": "1.0.2", "fieldPath": "$.event.measurementFields.nicPerformanceArray[*].receivedTotalPacketsDelta", "thresholdValue": 700, "direction": "GREATER_OR_EQUAL", "severity": "CRITICAL", "closedLoopEventStatus": "ONSET" } ] }, { "eventName": "vLoadBalancer", "controlLoopSchemaType": "VM", "policyScope": "DCAE", "policyName": "DCAE.Config_tca-hi-lo", "policyVersion": "v0.0.1", "thresholds": [ { "closedLoopControlName": "ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3", "version": "1.0.2", "fieldPath": "$.event.measurementFields.nicPerformanceArray[*].receivedTotalPacketsDelta", "thresholdValue": 300, "direction": "GREATER_OR_EQUAL", "severity": "CRITICAL", "closedLoopEventStatus": "ONSET" } ] }, { "eventName": "Measurement_vGMUX", "controlLoopSchemaType": "VNF", "policyScope": "DCAE", "policyName": "DCAE.Config_tca-hi-lo", "policyVersion": "v0.0.1", "thresholds": [ { "closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e", "version": "1.0.2", "fieldPath": "$.event.measurementFields.additionalMeasurements[*].arrayOfFields[0].value", "thresholdValue": 0, "direction": "EQUAL", "severity": "MAJOR", "closedLoopEventStatus": "ABATED" }, { "closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e", "version": "1.0.2", "fieldPath": "$.event.measurementFields.additionalMeasurements[*].arrayOfFields[0].value", "thresholdValue": 0, "direction": "GREATER", "severity": "CRITICAL", "closedLoopEventStatus": "ONSET" } ] } ] } ] }, "name": "onap.vfirewall.tca2", "version": "1.0.0", "metadata": { "policy-id": "onap.vfirewall.tca2", "policy-version": "1.0.0" } } } ] }, "name": "ToscaServiceTemplateSimple", "version": "1.0.0" }
The policy type would look something like this, although in the final version, may not necessarily use a different version (not necessary per DCAE feedback):
tosca_definitions_version: tosca_simple_yaml_1_1_0 policy_types: onap.policies.Monitoring: derived_from: tosca.policies.Root version: 1.0.0 name: onap.policies.Monitoring description: a base policy type for all policies that govern monitoring provisioning onap.policies.monitoring.tcagen2: derived_from: onap.policies.Monitoring version: 2.0.0 name: onap.policies.monitoring.tcagen2 properties: tca.policy: type: list description: TCA Policy JSON required: true entry_schema: type: onap.datatypes.monitoring.tca_policy data_types: onap.datatypes.monitoring.metricsPerEventName: derived_from: tosca.datatypes.Root properties: controlLoopSchemaType: type: string required: true description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM constraints: - valid_values: - VM - VNF eventName: type: string required: true description: Event name to which thresholds need to be applied policyName: type: string required: true description: TCA Policy Scope Name policyScope: type: string required: true description: TCA Policy Scope policyVersion: type: string required: true description: TCA Policy Scope Version thresholds: type: list required: true description: Thresholds associated with eventName entry_schema: type: onap.datatypes.monitoring.thresholds onap.datatypes.monitoring.tca_policy: derived_from: tosca.datatypes.Root properties: domain: type: string required: true description: Domain name to which TCA needs to be applied default: measurementsForVfScaling constraints: - equal: measurementsForVfScaling metricsPerEventName: type: list required: true description: Contains eventName and threshold details that need to be applied to given eventName entry_schema: type: onap.datatypes.monitoring.metricsPerEventName onap.datatypes.monitoring.thresholds: derived_from: tosca.datatypes.Root properties: closedLoopControlName: type: string required: true description: Closed Loop Control Name associated with the threshold closedLoopEventStatus: type: string required: true description: Closed Loop Event Status of the threshold constraints: - valid_values: - ONSET - ABATED direction: type: string required: true description: Direction of the threshold constraints: - valid_values: - LESS - LESS_OR_EQUAL - GREATER - GREATER_OR_EQUAL - EQUAL fieldPath: type: string required: true description: Json field Path as per CEF message which needs to be analyzed for TCA constraints: - valid_values: - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage - $.event.measurementsForVfScalingFields.meanRequestLatency - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value severity: type: string required: true description: Threshold Event Severity constraints: - valid_values: - CRITICAL - MAJOR - MINOR - WARNING - NORMAL thresholdValue: type: integer required: true description: Threshold value for the field Path inside CEF message version: type: string required: true description: Version number associated with the threshold
Attachments
Issue Links
- relates to
-
DCAEGEN2-2976 Support 7.2.1 VES in TCAGEN2
-
- Closed
-