summaryrefslogtreecommitdiffstats
path: root/blueprints/k8s-ves.yaml-template
blob: d29de017d4060d402b4d92f4203ae2ea7a1014c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# -*- indent-tabs-mode: nil -*- # vi: set expandtab:
#
# ============LICENSE_START====================================================
# =============================================================================
# Copyright (c) 2018 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 }}/k8splugin/1.4.5/k8splugin_types.yaml

inputs:
  ves_other_publish_url:
    type: string
    default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.SEC_OTHER_OUTPUT"
  ves_heartbeat_publish_url:
    type: string
    default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.SEC_HEARTBEAT_OUTPUT"
  ves_fault_publish_url:
    type: string
    default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.SEC_FAULT_OUTPUT"
  ves_measurement_publish_url:
    type: string
    default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_MEASUREMENT_OUTPUT"
  ves_notification_publish_url:
    type: string
    default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT"
  ves_pnfRegistration_publish_url:
    type: string
    default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_PNFREG_OUTPUT"
  tag_version:
    type: string
    default: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/org.onap.dcaegen2.collectors.ves.vescollector:1.3.1"
  external_port:
    type: string
    description: Kubernetes node port on which collector is exposed
    default: "30235"
  replicas:
    type: integer
    description: number of instances
    default: 1   
node_templates:
  ves:
    interfaces:
      cloudify.interfaces.lifecycle:
        start:
          inputs:
           ports:
             - concat: ["8080:", { get_input: external_port }]             
    properties:
      application_config:
        collector.dmaap.streamid: fault=ves-fault|syslog=ves-syslog|heartbeat=ves-heartbeat|measurementsForVfScaling=ves-measurement|mobileFlow=ves-mobileflow|other=ves-other|stateChange=ves-statechange|thresholdCrossingAlert=ves-thresholdCrossingAlert|voiceQuality=ves-voicequality|sipSignaling=ves-sipsignaling|notification=ves-notification|pnfRegistration=ves-pnfRegistration
        collector.inputQueue.maxPending: "8096"
        collector.keystore.alias: "dynamically generated"
        collector.keystore.file.location: /opt/app/VESCollector/etc/keystore
        collector.keystore.passwordfile: /opt/app/VESCollector/etc/passwordfile
        collector.schema.checkflag: "1"
        collector.schema.file: "{\"v1\":\"./etc/CommonEventFormat_27.2.json\",\"v2\":\"./etc/CommonEventFormat_27.2.json\",\"v3\":\"./etc/CommonEventFormat_27.2.json\",\"v4\":\"./etc/CommonEventFormat_27.2.json\",\"v5\":\"./etc/CommonEventFormat_28.4.1.json\",\"v7\":\"./etc/CommonEventFormat_30.0.1.json\"}"
        collector.service.port: "8080"
        collector.service.secure.port: "8443"
        event.transform.flag: "0"
        header.authflag: "0"
        header.authlist: "sample1,c2FtcGxlMQ=="
        services_calls: []
        streams_publishes:
            ves-fault:
              dmaap_info:
                topic_url:
                  get_input: ves_fault_publish_url
              type: message_router
            ves-measurement:
              dmaap_info:
                topic_url:
                  get_input: ves_measurement_publish_url
              type: message_router
            ves-notification:
              dmaap_info:
                topic_url:
                  get_input: ves_notification_publish_url
              type: message_router
            ves-pnfRegistration:
              dmaap_info:
                topic_url:
                  get_input: ves_pnfRegistration_publish_url
              type: message_router
            ves-heartbeat:
              dmaap_info:
                topic_url:
                  get_input: ves_heartbeat_publish_url
              type: message_router
            ves-other:
              dmaap_info:
                topic_url:
                  get_input: ves_other_publish_url
              type: message_router
        collector.dynamic.config.update.frequency: "5"
      docker_config:
        healthcheck:
          endpoint: /healthcheck
          interval: 15s
          timeout: 1s
          type: http
      image:
        get_input: tag_version
      replicas: {get_input: replicas}
      name: 'dcae-ves-collector'
      dns_name: 'dcae-ves-collector'
      log_info:
        log_directory: "/opt/app/VESCollector/logs/ecomp"
    type: dcae.nodes.ContainerizedPlatformComponent