From 52183bb7fed88d4dddaaa31e1114b8f77d7a5cc8 Mon Sep 17 00:00:00 2001 From: Marco Platania Date: Wed, 20 Mar 2019 15:18:05 -0400 Subject: Add policy and data types to SDC - Define policy and data types for control loop - Onboard them as normative types in SDC Change-Id: I5188229ba91d5ddeabd43c4ac0b869abba7c42a0 Issue-ID: SDC-2203 Signed-off-by: Marco Platania --- .../import/tosca/data-types/dataTypes.yml | 146 +++++++++++++++++++++ .../import/tosca/policy-types/policyTypes.json | 8 ++ .../import/tosca/policy-types/policyTypes.yml | 14 ++ 3 files changed, 168 insertions(+) diff --git a/catalog-be/src/main/resources/import/tosca/data-types/dataTypes.yml b/catalog-be/src/main/resources/import/tosca/data-types/dataTypes.yml index 0000e249f9..8d9f136427 100644 --- a/catalog-be/src/main/resources/import/tosca/data-types/dataTypes.yml +++ b/catalog-be/src/main/resources/import/tosca/data-types/dataTypes.yml @@ -1777,3 +1777,149 @@ tosca.datatypes.nfv.VnfInfoModifiableAttributes: metadata: type: tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata required: false + +### Data types used by Policy TCA model for closed loop ### + +onap.datatypes.monitoring.metricsPerEventName: + derived_from: tosca.datatypes.Root + properties: + controlLoopSchemaType: + constraints: + - valid_values: + - VM + - VNF + description: "Specifies Control Loop Schema Type for the event Name e.g. VNF, VM" + required: true + type: string + eventName: + description: "Event name to which thresholds need to be applied" + required: true + type: string + policyName: + description: "TCA Policy Scope Name" + required: true + type: string + policyScope: + description: "TCA Policy Scope" + required: true + type: string + policyVersion: + description: "TCA Policy Scope Version" + required: true + type: string + thresholds: + description: "Thresholds associated with eventName" + entry_schema: + type: onap.datatypes.monitoring.thresholds + required: true + type: list +onap.datatypes.monitoring.tca_policy: + derived_from: tosca.datatypes.Root + properties: + domain: + constraints: + - equal: measurementsForVfScaling + default: measurementsForVfScaling + description: "Domain name to which TCA needs to be applied" + required: true + type: string + metricsPerEventName: + description: "Contains eventName and threshold details that need to be applied to given eventName" + entry_schema: + type: onap.datatypes.monitoring.metricsPerEventName + required: true + type: list +onap.datatypes.monitoring.thresholds: + derived_from: tosca.datatypes.Root + properties: + closedLoopControlName: + description: "Closed Loop Control Name associated with the threshold" + required: true + type: string + closedLoopEventStatus: + constraints: + - valid_values: + - ONSET + - ABATED + description: "Closed Loop Event Status of the threshold" + required: true + type: string + direction: + constraints: + - valid_values: + - LESS + - LESS_OR_EQUAL + - GREATER + - GREATER_OR_EQUAL + - EQUAL + description: "Direction of the threshold" + required: true + type: string + fieldPath: + 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" + description: "Json field Path as per CEF message which needs to be analyzed for TCA" + required: true + type: string + severity: + constraints: + - valid_values: + - CRITICAL + - MAJOR + - MINOR + - WARNING + - NORMAL + description: "Threshold Event Severity" + required: true + type: string + thresholdValue: + description: "Threshold value for the field Path inside CEF message" + required: true + type: integer + version: + description: "Version number associated with the threshold" + required: true + type: string diff --git a/catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.json b/catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.json index 9f97d5586b..32a6593a93 100644 --- a/catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.json +++ b/catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.json @@ -46,6 +46,14 @@ "org.openecomp.policies.External": { "displayName": "External", "icon": "policy-external" + }, + "onap.policies.Monitoring": { + "displayName": "Monitoring", + "icon": "policy-monitoring" + }, + "onap.policy.monitoring.cdap.tca.hi.lo.app": { + "displayName": "TCA", + "icon": "policy-tca" } } \ No newline at end of file diff --git a/catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.yml b/catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.yml index 57f4b45abe..0b60106a1e 100644 --- a/catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.yml +++ b/catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.yml @@ -115,3 +115,17 @@ org.openecomp.policies.External: type: string description: The name of the policy, that related to specific type, same as it is defined in the source. required: false + +### Policy types for closed loop ### +onap.policies.Monitoring: + derived_from: tosca.policies.Root + description: A base policy type for all policies that governs monitoring provisioning +onap.policy.monitoring.cdap.tca.hi.lo.app: + derived_from: onap.policies.Monitoring + version: 1.0.0 + properties: + tca_policy: + type: map + description: TCA Policy JSON + entry_schema: + type: onap.datatypes.monitoring.tca_policy \ No newline at end of file -- cgit 1.2.3-korg