Versions Compared

Key

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

...

On-boarding Policy Model and Distributing to Policy Framework Engine Using API ( Introduced in Honolulu Release)

Below APIs are built introduced to onboard a policy model and distribute to policy framework engine in catalog service. In order to look into Policy Model APIs, the swagger document is available in UI.

...

Code Block
titleSample JSON to create policy model
{
   "name": "onap.policies.Monitoring",
   "owner": "admin",
   "version": "1.0.0",
   "content": "tosca_definitions_version: tosca_simple_yaml_1_1_0\r\npolicy_types:\r\n   onap.policies.Monitoring:\r\n      derived_from: tosca.policies.Root\r\n      version: 1.0.0\r\n      name: onap.policies.Monitoring\r\n      description: a base policy type for all policies that govern monitoring provisioning\r\n   onap.policies.monitoring.tcagen2:\r\n      derived_from: onap.policies.Monitoring\r\n      version: 1.0.0\r\n      name: onap.policies.monitoring.tcagen2\r\n      properties:\r\n         tca.policy:\r\n            type: onap.datatypes.monitoring.tca_policy\r\n            description: TCA Policy JSON\r\n            required: true\r\ndata_types:\r\n   onap.datatypes.monitoring.metricsPerEventName:\r\n      derived_from: tosca.datatypes.Root\r\n      properties:\r\n         controlLoopSchemaType:\r\n            type: string\r\n            required: true\r\n            description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM\r\n            constraints:\r\n            -  valid_values:\r\n               - VM\r\n               - VNF\r\n         eventName:\r\n            type: string\r\n            required: true\r\n            description: Event name to which thresholds need to be applied\r\n         policyName:\r\n            type: string\r\n            required: true\r\n            description: TCA Policy Scope Name\r\n         policyScope:\r\n            type: string\r\n            required: true\r\n            description: TCA Policy Scope\r\n         policyVersion:\r\n            type: string\r\n            required: true\r\n            description: TCA Policy Scope Version\r\n         thresholds:\r\n            type: list\r\n            required: true\r\n            description: Thresholds associated with eventName\r\n            entry_schema:\r\n               type: onap.datatypes.monitoring.thresholds\r\n   onap.datatypes.monitoring.tca_policy:\r\n      derived_from: tosca.datatypes.Root\r\n      properties:\r\n         domain:\r\n            type: string\r\n            required: true\r\n            description: Domain name to which TCA needs to be applied\r\n            default: measurementsForVfScaling\r\n            constraints:\r\n            -  equal: measurementsForVfScaling\r\n         metricsPerEventName:\r\n            type: list\r\n            required: true\r\n            description: Contains eventName and threshold details that need to be applied to given eventName\r\n            entry_schema:\r\n               type: onap.datatypes.monitoring.metricsPerEventName\r\n   onap.datatypes.monitoring.thresholds:\r\n      derived_from: tosca.datatypes.Root\r\n      properties:\r\n         closedLoopControlName:\r\n            type: string\r\n            required: true\r\n            description: Closed Loop Control Name associated with the threshold\r\n         closedLoopEventStatus:\r\n            type: string\r\n            required: true\r\n            description: Closed Loop Event Status of the threshold\r\n            constraints:\r\n            -  valid_values:\r\n               - ONSET\r\n               - ABATED\r\n         direction:\r\n            type: string\r\n            required: true\r\n            description: Direction of the threshold\r\n            constraints:\r\n            -  valid_values:\r\n               - LESS\r\n               - LESS_OR_EQUAL\r\n               - GREATER\r\n               - GREATER_OR_EQUAL\r\n               - EQUAL\r\n         fieldPath:\r\n            type: string\r\n            required: true\r\n            description: Json field Path as per CEF message which needs to be analyzed for TCA\r\n            constraints:\r\n            -  valid_values:\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated\r\n               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle\r\n               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt\r\n               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice\r\n               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq\r\n               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal\r\n               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem\r\n               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait\r\n               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage\r\n               - $.event.measurementsForVfScalingFields.meanRequestLatency\r\n               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered\r\n               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached\r\n               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured\r\n               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree\r\n               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed\r\n               - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\r\n         severity:\r\n            type: string\r\n            required: true\r\n            description: Threshold Event Severity\r\n            constraints:\r\n            -  valid_values:\r\n               - CRITICAL\r\n               - MAJOR\r\n               - MINOR\r\n               - WARNING\r\n               - NORMAL\r\n         thresholdValue:\r\n            type: integer\r\n            required: true\r\n            description: Threshold value for the field Path inside CEF message\r\n         version:\r\n            type: string\r\n            required: true\r\n            description: Version number associated with the threshold"   
}

The sample response will contain "id": "604bed36cbb899758eb2734d", which can be used in get, update, and distribute a policy model to policy framework engine.


Distributing Deployment Artifact to DCAE Dashboard Using API ( Introduced in Honolulu Release)

Below APIs are introduced to distribute the generated deployment artifact (blueprint) to DCAE Dashboard. Once distributed, it will be available in DCAE dashboard for deployment.

Under MOD APIs → swagger UI, you will find this API as below.

Image Added


Note: Update in progress...

...