54a559b3b46b5f8562c821dd61280a33dff706f0
[dcaegen2/platform/blueprints.git] / blueprints / k8s-ves.yaml-template
1 # -*- indent-tabs-mode: nil -*- # vi: set expandtab:
2 #
3 # ============LICENSE_START====================================================
4 # =============================================================================
5 # Copyright (c) 2018-2019 AT&T Intellectual Property. All rights reserved.
6 # =============================================================================
7 # Licensed under the Apache License, Version 2.0 (the "License");
8 # you may not use this file except in compliance with the License.
9 # You may obtain a copy of the License at
10 #
11 #      http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
18 # ============LICENSE_END======================================================
19
20 tosca_definitions_version: cloudify_dsl_1_3
21
22 imports:
23   - "http://www.getcloudify.org/spec/cloudify/3.4/types.yaml"
24   - {{ ONAPTEMPLATE_RAWREPOURL_org_onap_dcaegen2_platform_plugins_releases }}/k8splugin/1.4.12/k8splugin_types.yaml
25
26 inputs:
27   ves_other_publish_url:
28     type: string
29     default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.SEC_OTHER_OUTPUT"
30   ves_heartbeat_publish_url:
31     type: string
32     default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.SEC_HEARTBEAT_OUTPUT"
33   ves_fault_publish_url:
34     type: string
35     default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.SEC_FAULT_OUTPUT"
36   ves_measurement_publish_url:
37     type: string
38     default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_MEASUREMENT_OUTPUT"
39   ves_notification_publish_url:
40     type: string
41     default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT"
42   ves_pnfRegistration_publish_url:
43     type: string
44     default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.VES_PNFREG_OUTPUT"
45   tag_version:
46     type: string
47     default: "{{ ONAPTEMPLATE_DOCKERREGURL_org_onap_dcaegen2_releases }}/onap/org.onap.dcaegen2.collectors.ves.vescollector:1.3.1"
48   external_port:
49     type: string
50     description: Kubernetes node port on which collector is exposed
51     default: "30235"
52   external_tls_port:
53     type: string
54     description: Kubernetes node port on which collector is exposed for https
55     default: "30417"
56   replicas:
57     type: integer
58     description: number of instances
59     default: 1
60 node_templates:
61   ves:
62     interfaces:
63       cloudify.interfaces.lifecycle:
64         start:
65           inputs:
66            ports:
67              - concat: ["8080:", { get_input: external_port }]
68              - concat: ["8443:", { get_input: external_tls_port }]
69     properties:
70       application_config:
71         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
72         collector.inputQueue.maxPending: "8096"
73         collector.keystore.alias: "dynamically generated"
74         collector.keystore.file.location: /opt/app/VESCollector/etc/keystore
75         collector.keystore.passwordfile: /opt/app/VESCollector/etc/passwordfile
76         collector.schema.checkflag: "1"
77         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\"}"
78         collector.service.port: "8080"
79         collector.service.secure.port: "8443"
80         event.transform.flag: "0"
81         header.authflag: "0"
82         header.authlist: "sample1,c2FtcGxlMQ=="
83         services_calls: []
84         streams_publishes:
85             ves-fault:
86               dmaap_info:
87                 topic_url:
88                   get_input: ves_fault_publish_url
89               type: message_router
90             ves-measurement:
91               dmaap_info:
92                 topic_url:
93                   get_input: ves_measurement_publish_url
94               type: message_router
95             ves-notification:
96               dmaap_info:
97                 topic_url:
98                   get_input: ves_notification_publish_url
99               type: message_router
100             ves-pnfRegistration:
101               dmaap_info:
102                 topic_url:
103                   get_input: ves_pnfRegistration_publish_url
104               type: message_router
105             ves-heartbeat:
106               dmaap_info:
107                 topic_url:
108                   get_input: ves_heartbeat_publish_url
109               type: message_router
110             ves-other:
111               dmaap_info:
112                 topic_url:
113                   get_input: ves_other_publish_url
114               type: message_router
115         collector.dynamic.config.update.frequency: "5"
116       docker_config:
117         healthcheck:
118           endpoint: /healthcheck
119           interval: 15s
120           timeout: 1s
121           type: http
122       image:
123         get_input: tag_version
124       replicas: {get_input: replicas}
125       name: 'dcae-ves-collector'
126       dns_name: 'dcae-ves-collector'
127       log_info:
128         log_directory: "/opt/app/VESCollector/logs/ecomp"
129     type: dcae.nodes.ContainerizedPlatformComponent
130
131