draft blueprints for new services 97/37497/1
authorvagrant <vv770d@att.com>
Wed, 21 Mar 2018 10:16:04 +0000 (10:16 +0000)
committervagrant <vv770d@att.com>
Wed, 21 Mar 2018 10:16:17 +0000 (10:16 +0000)
This is yet to be validated as underlying services development not completed yet

This will serve as base for creating K8S blueprint.

Change-Id: Ib911aa1ecc420b733ab618ef543c825ae1579034
Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com>
Issue-ID: DCAEGEN2-405

blueprints/heartbeat-service.yaml-template [new file with mode: 0644]
blueprints/prh-service.yaml-template [new file with mode: 0644]
blueprints/snmptrap-collector.yaml-template [new file with mode: 0644]
blueprints/tcadocker-service.yaml-template [new file with mode: 0644]

diff --git a/blueprints/heartbeat-service.yaml-template b/blueprints/heartbeat-service.yaml-template
new file mode 100644 (file)
index 0000000..9d8c59e
--- /dev/null
@@ -0,0 +1,56 @@
+tosca_definitions_version: cloudify_dsl_1_3
+imports:
+- "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/dockerplugin/2/dockerplugin_types.yaml"
+- "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/relationshipplugin/1/relationshipplugin_types.yaml"
+inputs:
+  dcae_CL_publish_url:
+    type: string
+    default: "http://10.0.11.1:3904/events/unauthenticated.DCAE_CL_OUTPUT"
+  ves_heartbeat_url:
+    type: string
+    default: "http://10.0.11.1:3904/events/unauthenticated.SEC_HEARTBEAT_OUTPUT"
+  docker_host_override:
+    type: string
+    default: "component_dockerhost"
+  dh_location_id:
+    type: string
+    default: "zone1"
+node_templates:
+  docker_service_host:
+    type: dcae.nodes.SelectedDockerHost
+    properties:
+      docker_host_override:
+        get_input: docker_host_override
+      location_id:
+        get_input: dh_location_id
+  heartbeatService:
+    type: dcae.nodes.DockerContainerForComponentsUsingDmaap
+    properties:
+      application_config:
+        heartbeat_config: '{"vnfs":[{"heartbeatcountmissed":3, "heartbeatinterval": 60, "closedLoopControlName":"ControlLoopEvent1"},{"heartbeatcountmissed":3, "heartbeatinterval": 60, "closedLoopControlName":"ControlLoopEvent1"},{"heartbeatcountmissed":3, "heartbeatinterval": 60, "closedLoopControlName":"ControlLoopEvent1"}]}'
+        streams_publishes:
+          dcae_cl_out:
+            dmaap_info:
+             topic_url:
+                  get_input: dcae_CL_publish_url
+            type: message_router
+        streams_subscribes:
+          heartbeat_input:
+            dmaap_info:
+             topic_url:
+                  get_input: ves_heartbeat_url
+            type: message_router
+      docker_config:
+        healthcheck:
+          script: /app/bin/check_health.py
+          interval: 18s
+          timeout: 30s
+          type: docker
+      image: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/org.onap.dcaegen2.platform.heartbeat:2.0"
+      location_id:
+        get_input: dh_location_id
+      service_component_type: dcaegen2-services-heartbeat
+    relationships:
+    - target: docker_service_host
+      type: dcae.relationships.component_contained_in
+
diff --git a/blueprints/prh-service.yaml-template b/blueprints/prh-service.yaml-template
new file mode 100644 (file)
index 0000000..51810f1
--- /dev/null
@@ -0,0 +1,55 @@
+tosca_definitions_version: cloudify_dsl_1_3
+imports:
+- "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/dockerplugin/2/dockerplugin_types.yaml"
+- "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/relationshipplugin/1/relationshipplugin_types.yaml"
+inputs:
+  prh_publish_url:
+    type: string
+    default: "http://10.0.11.1:3904/events/unauthenticated.SO_OUTPUT"
+  prh_subcribe_url:
+    type: string
+    default: "http://10.0.11.1:3904/events/unauthenticated.SEC_OTHER_OUTPUT"
+  docker_host_override:
+    type: string
+    default: "component_dockerhost"
+  dh_location_id:
+    type: string
+    default: "zone1"
+node_templates:
+  docker_service_host:
+    type: dcae.nodes.SelectedDockerHost
+    properties:
+      docker_host_override:
+        get_input: docker_host_override
+      location_id:
+        get_input: dh_location_id
+  heartbeatService:
+    type: dcae.nodes.DockerContainerForComponentsUsingDmaap
+    properties:
+      application_config:
+        streams_publishes:
+          dcae_cl_out:
+            dmaap_info:
+             topic_url:
+                  get_input: prh_publish_url
+            type: message_router
+        streams_subscribes:
+          heartbeat_fault:
+            dmaap_info:
+             topic_url:
+                  get_input: prh_subcribe_url
+            type: message_router
+      docker_config:
+        healthcheck:
+          script: /app/bin/check_health.py
+          interval: 18s
+          timeout: 30s
+          type: docker
+      image: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/org.onap.dcaegen2.services.prh:1.0"
+      location_id:
+        get_input: dh_location_id
+      service_component_type: dcaegen2-services-prh
+    relationships:
+    - target: docker_service_host
+      type: dcae.relationships.component_contained_in
+
diff --git a/blueprints/snmptrap-collector.yaml-template b/blueprints/snmptrap-collector.yaml-template
new file mode 100644 (file)
index 0000000..062ac1d
--- /dev/null
@@ -0,0 +1,89 @@
+tosca_definitions_version: cloudify_dsl_1_3
+imports:
+- "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/dockerplugin/2/dockerplugin_types.yaml"
+- "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/relationshipplugin/1/relationshipplugin_types.yaml"
+inputs:
+  snmp_publish_url:
+    type: string
+    default: "http://10.0.11.1:3904/events/unauthenticated.ONAP-COLLECTOR-SNMPTRAP"
+  docker_host_override:
+    type: string
+    default: "component_dockerhost"
+  dh_location_id:
+    type: string
+    default: "zone1"
+node_templates:
+  docker_service_host:
+    type: dcae.nodes.SelectedDockerHost
+    properties:
+      docker_host_override:
+        get_input: docker_host_override
+      location_id:
+        get_input: dh_location_id
+  heartbeatService:
+    type: dcae.nodes.DockerContainerForComponentsUsingDmaap
+    properties:
+      application_config:
+        streams_publishes:
+          dcae_cl_out:
+            dmaap_info:
+             topic_url:
+                  get_input: snmp_publish_url
+            type: message_router
+        snmptrap.version: "1.3.0" 
+        snmptrap.title: "ONAP SNMP Trap Receiver" 
+        protocols.transport: "udp"
+        protocols.ipv4_interface: "0.0.0.0"
+        protocols.ipv4_port: 162
+        protocols.ipv6_interface: "::1"
+        protocols.ipv6_port: 162
+        cache.dns_cache_ttl_seconds: 60
+        publisher.http_timeout_milliseconds: 1500
+        publisher.http_retries: 3
+        publisher.http_milliseconds_between_retries: 750
+        publisher.http_primary_publisher: "true"
+        publisher.http_peer_publisher: "unavailable"
+        publisher.max_traps_between_publishes: 10
+        publisher.max_milliseconds_between_publishes: 10000
+        files.runtime_base_dir: "/opt/app/snmptrap"
+        files.log_dir: "logs"
+        files.data_dir: "data"
+        files.pid_dir: "tmp"
+        files.arriving_traps_log: "snmptrapd_arriving_traps.log"
+        files.snmptrapd_diag: "snmptrapd_prog_diag.log"
+        files.traps_stats_log: "snmptrapd_stats.csv"
+        files.perm_status_file: "snmptrapd_status.log"
+        files.eelf_base_dir: "/opt/app/snmptrap/logs"
+        files.eelf_error: "error.log"
+        files.eelf_debug: "debug.log"
+        files.eelf_audit: "audit.log"
+        files.eelf_metrics: "metrics.log"
+        files.roll_frequency: "hour"
+        files.minimum_severity_to_log: 2
+        trap_def.1.trap_oid" : ".1.3.6.1.4.1.74.2.46.12.1.1"
+        trap_def.1.trap_category: "DCAE-SNMP-TRAPS"
+        trap_def.2.trap_oid" : "*"
+        trap_def.2.trap_category: "DCAE-SNMP-TRAPS"
+        stormwatch.1.stormwatch_oid" : ".1.3.6.1.4.1.74.2.46.12.1.1"
+        stormwatch.1.low_water_rearm_per_minute" : "5"
+        stormwatch.1.high_water_arm_per_minute" : "100"
+        stormwatch.2.stormwatch_oid" : ".1.3.6.1.4.1.74.2.46.12.1.2"
+        stormwatch.2.low_water_rearm_per_minute" : "2"
+        stormwatch.2.high_water_arm_per_minute" : "200"
+        stormwatch.3.stormwatch_oid" : ".1.3.6.1.4.1.74.2.46.12.1.2"
+        stormwatch.3.low_water_rearm_per_minute" : "2"
+        stormwatch.3.high_water_arm_per_minute" : "200"
+      docker_config:
+        healthcheck:
+          script: /app/bin/check_health.py
+          interval: 18s
+          timeout: 30s
+          type: docker
+      image: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/org.onap.dcaegen2.collectors.snmptrap:1.3"
+      location_id:
+        get_input: dh_location_id
+      service_component_type: dcaegen2-collectors-snmptrap
+    relationships:
+    - target: docker_service_host
+      type: dcae.relationships.component_contained_in
+
diff --git a/blueprints/tcadocker-service.yaml-template b/blueprints/tcadocker-service.yaml-template
new file mode 100644 (file)
index 0000000..25c1424
--- /dev/null
@@ -0,0 +1,133 @@
+#
+# ============LICENSE_START====================================================
+# org.onap.dcae
+# =============================================================================
+# Copyright (c) 2017 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:
+  - "http://www.getcloudify.org/spec/cloudify/3.4/types.yaml"
+  - "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/dockerplugin/2/dockerplugin_types.yaml"
+  - "{{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/type_files/relationshipplugin/1/relationshipplugin_types.yaml"
+
+inputs:
+  aaiEnrichmentHost:
+    type: string
+  enableAAIEnrichment:
+    type: string
+    default: false
+  subscriberHostName:
+    type: string
+  publisherHostName:
+    type: string
+  enableRedisCaching:
+    type: string
+  redisHosts:
+    type: string
+  dh_override:
+    type: string
+    default: "component_dockerhost"
+  dh_location_id:
+    type: string
+    default: "zone1"        
+node_templates:
+  docker_service_host:
+    properties:
+      docker_host_override:
+        get_input: dh_override
+      location_id:
+        get_input: dh_location_id
+    type: dcae.nodes.SelectedDockerHost
+
+  tca_docker:
+    relationships:
+      - type: dcae.relationships.component_contained_in
+        target: docker_service_host
+    type: dcae.nodes.DockerContainerForComponentsUsingDmaap
+    properties:
+      application_config:
+        app_config:
+                appDescription: DCAE Analytics Threshold Crossing Alert Application
+                appName: dcae-tca
+                tcaAlertsAbatementTableName: TCAAlertsAbatementTable
+                tcaAlertsAbatementTableTTLSeconds: '1728000'
+                tcaSubscriberOutputStreamName: TCASubscriberOutputStream
+                tcaVESAlertsTableName: TCAVESAlertsTable
+                tcaVESAlertsTableTTLSeconds: '1728000'
+                tcaVESMessageStatusTableName: TCAVESMessageStatusTable
+                tcaVESMessageStatusTableTTLSeconds: '86400'
+                thresholdCalculatorFlowletInstances: '2'
+        app_preferences:
+                aaiEnrichmentHost: get_input: aaiEnrichmentHost
+                aaiEnrichmentIgnoreSSLCertificateErrors: 'true'
+                aaiEnrichmentPortNumber: '8443'
+                aaiEnrichmentProtocol: https
+                aaiEnrichmentUserName: DCAE
+                aaiEnrichmentUserPassword: DCAE
+                aaiVMEnrichmentAPIPath: /aai/v11/search/nodes-query
+                aaiVNFEnrichmentAPIPath: /aai/v11/network/generic-vnfs/generic-vnf
+                enableAAIEnrichment: get_input: enableAAIEnrichment
+                enableRedisCaching: get_input: enableRedisCaching
+                redisHosts: get_input: redisHosts
+                enableAlertCEFFormat: 'false'
+                publisherContentType: application/json
+                publisherHostName: get_input: publisherHostName
+                publisherHostPort: '3904'
+                publisherMaxBatchSize: '1'
+                publisherMaxRecoveryQueueSize: '100000'
+                publisherPollingInterval: '20000'
+                publisherProtocol: http
+                publisherTopicName: unauthenticated.DCAE_CL_OUTPUT
+                subscriberConsumerGroup: OpenDCAE-c12
+                subscriberConsumerId: c12
+                subscriberContentType: application/json
+                subscriberHostName: get_input: subscriberHostName
+                subscriberHostPort: '3904'
+                subscriberMessageLimit: '-1'
+                subscriberPollingInterval: '30000'
+                subscriberProtocol: http
+                subscriberTimeoutMS: '-1'
+                subscriberTopicName: unauthenticated.SEC_MEASUREMENT_OUTPUT
+                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.vNicUsageArray[*].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.vNicUsageArray[*].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.vNicUsageArray[*].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"}]}]}'
+        artifact_name: dcae-analytics-cdap-tca
+        artifact_version: 2.0.0
+        jar_url: https://nexus.onap.org/service/local/repositories/releases/content/org/onap/dcaegen2/analytics/tca/dcae-analytics-cdap-tca/2.0.0/dcae-analytics-cdap-tca-2.0.0.jar
+        namespace: cdap_tca_hi_lo
+        programs:
+              - program_id: TCAVESCollectorFlow
+                program_type: flows
+              - program_id: TCADMaaPMRSubscriberWorker
+                program_type: workers
+              - program_id: TCADMaaPMRPublisherWorker
+                program_type: workers
+        streamname: TCASubscriberOutputStream
+        service_component_type: dcaegen2-analytics_tca
+    interfaces:
+      cloudify.interfaces.lifecycle:
+        stop:
+          inputs:
+            cleanup_image: true
+      docker_config:
+        healthcheck:
+          endpoint: /healthcheck
+          interval: 15s
+          timeout: 1s
+          type: http
+      image: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/org.onap.dcaegen2.analytics:v1.1.0"
+      
+