aboutsummaryrefslogtreecommitdiffstats
path: root/blueprints/k8s-snmptrap.yaml
blob: f62501ec67f423a5e328ab1ca9c39cb81f43219b (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
127
128
129
130
131
132
# -*- indent-tabs-mode: nil -*- # vi: set expandtab:
#
# ============LICENSE_START====================================================
# =============================================================================
# Copyright (c) 2018-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:
  tag_version:
    type: string
    default: "nexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.snmptrap:2.0.5"
  cache:
    type: string
    default:
      "dns_cache_ttl_seconds: 60"
  files:
    type: string
    default:
      "arriving_traps_log: snmptrapd_arriving_traps.log
      data_dir: data
      eelf_audit: audit.log
      eelf_base_dir: /opt/app/snmptrap/logs
      eelf_debug: debug.log
      eelf_error: error.log
      eelf_metrics: metrics.log
      log_dir: logs
      minimum_severity_to_log: 2
      perm_status_file: snmptrapd_status.log
      pid_dir: tmp
      roll_frequency: day
      runtime_base_dir: /opt/app/snmptrap
      snmptrapd_diag: snmptrapd_prog_diag.log
      traps_stats_log: snmptrapd_stats.csv"
  protocols:
    type: string
    default:
      "ipv4_interface: 0.0.0.0
      ipv4_port: 6162
      ipv6_interface: ::1
      ipv6_port: 6162"
  publisher:
    type: string
    default:
      "http_milliseconds_between_retries: 750
      http_milliseconds_timeout: 1500
      http_peer_publisher: unavailable
      http_primary_publisher: 'true'
      http_retries: 3
      max_milliseconds_between_publishes: 10000
      max_traps_between_publishes: 10"
  sec_fault_unsecure_topic:
    type: string
    default: "http://message-router.onap.svc.cluster.local:3904/events/unauthenticated.ONAP-COLLECTOR-SNMPTRAP"
  snmptrapd:
    type: string
    default:
      "title: Collector for receiving SNMP traps and publishing to DMAAP/MR
      version: 2.0.5"
  external_port:
    type: string
    description: Kubernetes node port on which collector is exposed
    default: "30470"
  replicas:
    type: integer
    description: number of instances
    default: 1
  service_component_type:
    type: string
    default: "dcae-snmptrap-collector"
  service_id:
    type: string
    default: "dcae-snmptrap-collector"
  service_component_name_override:
    type: string
    default: "dcae-snmptrap-collector"


node_templates:
  snmptrap:
    interfaces:
      cloudify.interfaces.lifecycle:
        start:
          inputs:
           ports:
             - concat: ["6162/udp:", { get_input: external_port }]
    properties:
      application_config:
        StormWatchPolicy: ''
        cache:
          get_input: cache
        files:
          get_input: files
        protocols:
          get_input: protocols
        publisher:
          get_input: publisher
        services_calls: {}
        snmptrapd:
          get_input: snmptrapd
        sw_interval_in_seconds: 60
        streams_publishes:
            sec_fault_unsecure:
              dmaap_info:
                topic_url:
                  get_input: sec_fault_unsecure_topic
              type: message_router

      image:
        get_input: tag_version
      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 }
    type: dcae.nodes.ContainerizedServiceComponent