Krysiak Adam | cdfe48c | 2019-01-29 15:59:00 +0100 | [diff] [blame] | 1 | # |
| 2 | # ============LICENSE_START==================================================== |
| 3 | # ============================================================================= |
| 4 | # Copyright (c) 2018 AT&T Intellectual Property. All rights reserved. |
| 5 | # ============================================================================= |
| 6 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 7 | # you may not use this file except in compliance with the License. |
| 8 | # You may obtain a copy of the License at |
| 9 | # |
| 10 | # http://www.apache.org/licenses/LICENSE-2.0 |
| 11 | # |
| 12 | # Unless required by applicable law or agreed to in writing, software |
| 13 | # distributed under the License is distributed on an "AS IS" BASIS, |
| 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 15 | # See the License for the specific language governing permissions and |
| 16 | # limitations under the License. |
| 17 | # ============LICENSE_END====================================================== |
| 18 | |
| 19 | tosca_definitions_version: cloudify_dsl_1_3 |
| 20 | |
| 21 | description: > |
| 22 | This blueprint deploys/manages the TCA module as a Docker container |
| 23 | |
| 24 | imports: |
| 25 | - http://www.getcloudify.org/spec/cloudify/3.4/types.yaml |
| 26 | - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/k8splugin/1.4.4/k8splugin_types.yaml |
| 27 | - https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R4/dcaepolicyplugin/2.3.0/dcaepolicyplugin_types.yaml |
| 28 | inputs: |
| 29 | aaiEnrichmentHost: |
| 30 | type: string |
| 31 | default: "aai.onap.svc.cluster.local" |
| 32 | aaiEnrichmentPort: |
| 33 | type: string |
| 34 | default: "8443" |
| 35 | enableAAIEnrichment: |
| 36 | type: string |
| 37 | default: true |
| 38 | dmaap_host: |
| 39 | type: string |
| 40 | default: message-router |
| 41 | dmaap_port: |
| 42 | type: string |
| 43 | default: "3904" |
| 44 | enableRedisCaching: |
| 45 | type: string |
| 46 | default: false |
| 47 | redisHosts: |
| 48 | type: string |
| 49 | default: dcae-redis:6379 |
| 50 | tag_version: |
| 51 | type: string |
| 52 | default: "nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments.tca-cdap-container:1.1.0" |
| 53 | consul_host: |
| 54 | type: string |
| 55 | default: consul-server |
| 56 | consul_port: |
| 57 | type: string |
| 58 | default: "8500" |
| 59 | cbs_host: |
| 60 | type: string |
| 61 | default: |
| 62 | test: |
| 63 | test: test |
| 64 | cbs_port: |
| 65 | type: string |
| 66 | default: "10000" |
| 67 | policy_id: |
| 68 | type: string |
| 69 | default: "none" |
| 70 | external_port: |
| 71 | type: string |
| 72 | description: Kubernetes node port on which CDAPgui is exposed |
| 73 | default: "32010" |
| 74 | |
| 75 | node_templates: |
| 76 | tca_k8s: |
| 77 | type: dcae.nodes.ContainerizedServiceComponent |
| 78 | relationships: |
| 79 | - target: tca_policy |
| 80 | type: cloudify.relationships.depends_on |
| 81 | properties: |
| 82 | service_component_type: 'dcaegen2-analytics-tca' |
| 83 | docker_config: {} |
| 84 | image: |
| 85 | get_input: tag_version |
| 86 | log_info: |
| 87 | log_directory: "/opt/app/TCAnalytics/logs" |
| 88 | application_config: |
| 89 | app_config: |
| 90 | appDescription: DCAE Analytics Threshold Crossing Alert Application |
| 91 | appName: dcae-tca-ak-serv |
| 92 | tcaAlertsAbatementTableName: TCAAlertsAbatementTable |
| 93 | tcaAlertsAbatementTableTTLSeconds: '1728000' |
| 94 | tcaSubscriberOutputStreamName: TCASubscriberOutputStream |
| 95 | tcaVESAlertsTableName: TCAVESAlertsTable |
| 96 | tcaVESAlertsTableTTLSeconds: '1728000' |
| 97 | tcaVESMessageStatusTableName: TCAVESMessageStatusTable |
| 98 | tcaVESMessageStatusTableTTLSeconds: '86400' |
| 99 | thresholdCalculatorFlowletInstances: '2' |
| 100 | app_preferences: |
| 101 | aaiEnrichmentHost: |
| 102 | get_input: aaiEnrichmentHost |
| 103 | aaiEnrichmentIgnoreSSLCertificateErrors: 'true' |
| 104 | aaiEnrichmentPortNumber: '8443' |
| 105 | aaiEnrichmentProtocol: https |
| 106 | aaiEnrichmentUserName: DCAE |
| 107 | aaiEnrichmentUserPassword: DCAE |
| 108 | aaiVMEnrichmentAPIPath: /aai/v11/search/nodes-query |
| 109 | aaiVNFEnrichmentAPIPath: /aai/v11/network/generic-vnfs/generic-vnf |
| 110 | enableAAIEnrichment: |
| 111 | get_input: enableAAIEnrichment |
| 112 | enableRedisCaching: |
| 113 | get_input: enableRedisCaching |
| 114 | redisHosts: |
| 115 | get_input: redisHosts |
| 116 | enableAlertCEFFormat: 'false' |
| 117 | publisherContentType: application/json |
| 118 | publisherHostName: |
| 119 | get_input: dmaap_host |
| 120 | publisherHostPort: |
| 121 | get_input: dmaap_port |
| 122 | publisherMaxBatchSize: '1' |
| 123 | publisherMaxRecoveryQueueSize: '100000' |
| 124 | publisherPollingInterval: '20000' |
| 125 | publisherProtocol: http |
| 126 | publisherTopicName: unauthenticated.DCAE_CL_OUTPUT |
| 127 | subscriberConsumerGroup: OpenDCAE-c12 |
| 128 | subscriberConsumerId: c12 |
| 129 | subscriberContentType: application/json |
| 130 | subscriberHostName: |
| 131 | get_input: dmaap_host |
| 132 | subscriberHostPort: |
| 133 | get_input: dmaap_port |
| 134 | subscriberMessageLimit: '-1' |
| 135 | subscriberPollingInterval: '30000' |
| 136 | subscriberProtocol: http |
| 137 | subscriberTimeoutMS: '-1' |
| 138 | subscriberTopicName: unauthenticated.VES_MEASUREMENT_OUTPUT |
| 139 | tca_policy: '{"domain":"measurementsForVfScaling","metricsPerEventName":[{"eventName":"vFirewallBroadcastPackets","controlLoopSchemaType":"VNF","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"}]}]}' |
| 140 | interfaces: |
| 141 | cloudify.interfaces.lifecycle: |
| 142 | start: |
| 143 | inputs: |
| 144 | envs: |
| 145 | DMAAPHOST: |
| 146 | { get_input: dmaap_host } |
| 147 | DMAAPPORT: |
| 148 | { get_input: dmaap_port } |
| 149 | DMAAPPUBTOPIC: "unauthenticated.DCAE_CL_OUTPUT" |
| 150 | DMAAPSUBTOPIC: "unauthenticated.VES_MEASUREMENT_OUTPUT" |
| 151 | AAIHOST: |
| 152 | { get_input: aaiEnrichmentHost } |
| 153 | AAIPORT: |
| 154 | { get_input: aaiEnrichmentPort } |
| 155 | CONSUL_HOST: |
| 156 | { get_input: consul_host } |
| 157 | CONSUL_PORT: |
| 158 | { get_input: consul_port } |
| 159 | CBS_HOST: |
| 160 | { get_input: cbs_host } |
| 161 | CBS_PORT: |
| 162 | { get_input: cbs_port } |
| 163 | CONFIG_BINDING_SERVICE: "config_binding_service" |
| 164 | ports: |
| 165 | - concat: ["11011:", { get_input: external_port }] |
| 166 | tca_policy: |
| 167 | type: dcae.nodes.policy |
| 168 | properties: |
| 169 | policy_id: |
| 170 | get_input: policy_id |