# ============LICENSE_START==================================================== # ============================================================================= # Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved. # ============================================================================= # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============LICENSE_END====================================================== tosca_definitions_version: cloudify_dsl_1_3 imports: - https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml - plugin:k8splugin?version=>=3.4.3,<4.0.0 inputs: service_component_type: type: string default: "dcae-tcagen2" service_id: type: string default: "dcae-tcagen2" service_component_name_override: type: string default: "dcae-tcagen2" log_directory: type: string default: "/opt/logs/dcae-analytics-tca" replicas: type: integer description: number of instances default: 1 spring.data.mongodb.uri: type: string default: "mongodb://dcae-mongohost/dcae-tcagen2" tag_version: type: string default: "nexus3.onap.org:10001/onap/org.onap.dcaegen2.analytics.tca-gen2.dcae-analytics-tca-web:1.3.1" tca.aai.password: type: string default: "DCAE" tca.aai.url: type: string default: "https://aai.onap.svc.cluster.local:8443" tca.aai.username: type: string default: "DCAE" tca_handle_in_subscribe_url: type: string default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_MEASUREMENT_OUTPUT" tca_handle_out_publish_url: type: string default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.DCAE_CL_OUTPUT" tca_consumer_group: type: string default: "cg1" cpu_limit: type: string default: "2000m" cpu_request: type: string default: "1000m" memory_limit: type: string default: "2048Mi" memory_request: type: string default: "1024Mi" node_templates: docker.tca: type: dcae.nodes.ContainerizedServiceComponent interfaces: cloudify.interfaces.lifecycle: start: inputs: ports: - concat: ["9091:", "0"] properties: application_config: service_calls: [] streams_publishes: tca_handle_out: dmaap_info: topic_url: get_input: tca_handle_out_publish_url type: message_router streams_subscribes: tca_handle_in: dmaap_info: topic_url: get_input: tca_handle_in_subscribe_url type: message_router spring.data.mongodb.uri: get_input: spring.data.mongodb.uri streams_subscribes.tca_handle_in.consumer_group: get_input: tca_consumer_group streams_subscribes.tca_handle_in.consumer_ids[0]: c0 streams_subscribes.tca_handle_in.consumer_ids[1]: c1 streams_subscribes.tca_handle_in.message_limit: 50000 streams_subscribes.tca_handle_in.polling.auto_adjusting.max: 60000 streams_subscribes.tca_handle_in.polling.auto_adjusting.min: 30000 streams_subscribes.tca_handle_in.polling.auto_adjusting.step_down: 30000 streams_subscribes.tca_handle_in.polling.auto_adjusting.step_up: 10000 streams_subscribes.tca_handle_in.polling.fixed_rate: 0 streams_subscribes.tca_handle_in.timeout: -1 tca.aai.enable_enrichment: true tca.aai.generic_vnf_path: aai/v11/network/generic-vnfs/generic-vnf tca.aai.node_query_path: aai/v11/search/nodes-query tca.aai.password: get_input: tca.aai.password tca.aai.url: get_input: tca.aai.url tca.aai.username: get_input: tca.aai.username tca.policy: '{"domain":"measurementsForVfScaling","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.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta","thresholdValue":300,"direction":"LESS_OR_EQUAL","severity":"MAJOR","closedLoopEventStatus":"ONSET"},{"closedLoopControlName":"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a","version":"1.0.2","fieldPath":"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].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.measurementsForVfScalingFields.vNicPerformanceArray[*].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.measurementsForVfScalingFields.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.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value","thresholdValue":0,"direction":"GREATER","severity":"CRITICAL","closedLoopEventStatus":"ONSET"}]}]}' tca.processing_batch_size: 10000 tca.enable_abatement: true tca.enable_ecomp_logging: true docker_config: healthcheck: endpoint: /actuator/health interval: 30s timeout: 10s type: http image: get_input: tag_version resource_config: limits: cpu: get_input: cpu_limit memory: get_input: memory_limit requests: cpu: get_input: cpu_request memory: get_input: memory_request log_info: log_directory: get_input: log_directory tls_info: use_tls: true cert_directory: '/etc/tca-gen2/ssl' replicas: get_input: replicas service_component_type: { get_input: service_component_type } service_id: { get_input: service_id } service_component_name_override: { get_input: service_component_name_override }