From 844c50d8b9b473b3daebdfe357ead3f904db9721 Mon Sep 17 00:00:00 2001 From: "Ladue, David (dl3158)" Date: Wed, 15 Aug 2018 18:11:46 -0400 Subject: adding snmpV3 support Change-Id: I6250e30fa1aa2516a16c4906628be8cc904fbc71 Issue-ID: DCAEGEN2-630 Signed-off-by: Ladue, David (dl3158) --- spec/snmptrap-collector-component-spec.json | 448 ++++++++++++++-------------- 1 file changed, 229 insertions(+), 219 deletions(-) (limited to 'spec') diff --git a/spec/snmptrap-collector-component-spec.json b/spec/snmptrap-collector-component-spec.json index b0436d4..e9f827e 100644 --- a/spec/snmptrap-collector-component-spec.json +++ b/spec/snmptrap-collector-component-spec.json @@ -1,7 +1,7 @@ { "self": { - "version": "1.3.0", - "name": "snmptrap-collector", + "version": "1.4.0", + "name": "snmptrap-collector", "description": "Collector for receiving SNMP traps and publishing to DMAAP/MR", "component_type": "docker" }, @@ -20,232 +20,242 @@ }, "services": { "calls": [], - "provides": [], + "provides": [] }, "parameters": [ { - "name": "snmptrap.version", - "value":"1.3.0", - "description": "version number" - }, - { - "name": "snmptrap.title", - "value":"ONAP SNMP Trap Receiver", - "description": "title for logging" - }, - { - "name": "protocols.transport", - "value":"udp", - "description": "protocol used to transport trap (udp|tcp)" - }, - { - "name": "protocols.ipv4_interface", - "value":"0.0.0.0", - "description": "ipv4 address trap receiver should listen to (0.0.0.0 -> all)" - }, - { - "name": "protocols.ipv4_port", - "value":162, - "description": "port trap receiver should bind to for ipv4 traps" - }, - { - "name": "protocols.ipv6_interface", - "value":"::1", - "description": "ipv6 address trap receiver should listen to (::1 -> all)" - }, - { - "name": "protocols.ipv6_port", - "value":162, - "description": "port trap receiver should bind to for ipv6 traps" - }, - { - "name": "cache.dns_cache_ttl_seconds", - "value":60, - "description": "number of seconds snmptrapd will cache dns entry before re-loading it" - }, - { - "name": "publisher.http_timeout_milliseconds", - "value":1500, - "description":"milliseconds snmptrapd will wait for MR to respond to publish attempt", - }, - { - "name":"publisher.http_retries", - "value":3, - "description":"number of times snmptrapd will re-attempt MR publish before moving on", - }, - { - "name": "publisher.http_milliseconds_between_retries", - "value":750, - "description":"milliseconds snmptrapd will wait between MR publish re-attempts", - }, - { - "name": "publisher.http_primary_publisher", - "value":"true", - "description": "future use (resiliency)" - }, - { - "name": "publisher.http_peer_publisher", - "value":"unavailable", - "description": "future use (resiliency)" - }, - { - "name": "publisher.max_traps_between_publishes", - "value":10, - "description": "max number of traps snmptrapd will queue before publishing" - }, - { - "name": "publisher.max_milliseconds_between_publishes", - "value":1000, - "description": "max number of milliseconds snmptrapd will accumulate traps before publishing" - }, - { - "name": "files.runtime_base_dir", - "value":"/tmp/opt/app/snmptrap", - "description": "base dir of snmptrapd install" - }, - { - "name": "files.log_dir", - "value":"logs", - "description": "location from runtime_base_dir for logs" - }, - { - "name": "files.data_dir", - "value":"data", - "description": "location from runtime_base_dir for data" - }, - { - "name": "files.pid_dir", - "value":"tmp", - "description": "location from runtime_base_dir for pid_dir" - }, - { - "name": "files.arriving_traps_log", - "value":"snmptrapd_arriving_traps.log", - "description": "log of all arriving traps (published or not)" - }, - { - "name": "files.snmptrapd_diag", - "value":"snmptrapd_prog_diag.log", - "description": "future use" - }, - { - "name": "files.traps_stats_log", - "value":"snmptrapd_stats.csv", - "description": "future use" - }, - { - "name": "files.perm_status_file", - "value":"snmptrapd_status.log", - "description": "future use" - }, - { - "name": "files.eelf_base_dir", - "value":"/tmp/opt/app/snmptrap/logs", - "description": "directory that all EELF format logs will be written to" - }, - { - "name": "files.eelf_error", - "value":"error.log", - "description": "EELF error log" - }, - { - "name": "files.eelf_debug", - "value":"debug.log", - "description": "EELF debug log" - }, - { - "name": "files.eelf_audit", - "value":"audit.log", - "description": "EELF audit log" - }, - { - "name": "files.eelf_metrics", - "value":"metrics.log", - "description": "EELF metrics log" - }, - { - "name": "files.roll_frequency", - "value":"hour", - "description": "how often snmptrapd will roll logs to .timestamp, and start a new one" - }, - { - "name": "files.minimum_severity_to_log", - "value":2, - "description": "minimium severity to log in above EELF log files: SEV_DETAILED=1, SEV_INFO=2, SEV_WARN=3, SEV_CRIT=4, SEV_FATAL=5" - - }, - { - "name": "trap_def.1.trap_oid", - "value":".1.3.6.1.4.1.74.2.46.12.1.1", - "description": "oid 1 of interest" - }, - { - "name": "trap_def.1.trap_category", - "value":"DCAE-SNMP-TRAPS", - "description": "topic to publish oid 1 to (future use)" - }, - { - "name": "trap_def.2.trap_oid", - "value":"*", - "description": "oid 1 of interest" - }, - { - "name": "trap_def.2.trap_category", - "value":"DCAE-SNMP-TRAPS", - "description": "topic to publish oid 1 to (future use)" - }, - { - "name": "stormwatch.1.stormwatch_oid", - "value":".1.3.6.1.4.1.74.2.46.12.1.1", - "description": "stormWatch candidate oid 1" - }, - { - "name": "stormwatch.1.low_water_rearm_per_minute", - "value":"5", - "description": "stormWatch candidate oid 1 low-water rearm value (future use)" - }, - { - "name": "stormwatch.1.high_water_arm_per_minute", - "value":"100", - "description": "stormWatch candidate oid 1 high-water storm activation value (future use)" - }, - { - "name": "stormwatch.2.stormwatch_oid", - "value":".1.3.6.1.4.1.74.2.46.12.1.2", - "description": "stormWatch candidate oid 2" - }, - { - "name": "stormwatch.2.low_water_rearm_per_minute", - "value":"2", - "description": "stormWatch candidate oid 2 low-water rearm value (future use)" - }, - { - "name": "stormwatch.2.high_water_arm_per_minute", - "value":"200", - "description": "stormWatch candidate oid 2 high-water storm activation value (future use)" - }, - { - "name": "stormwatch.3.stormwatch_oid", - "value":".1.3.6.1.4.1.74.2.46.12.1.2", - "description": "stormWatch candidate oid 3" - }, - { - "name": "stormwatch.3.low_water_rearm_per_minute", - "value":"2", - "description": "stormWatch candidate oid 3 low-water rearm value (future use)" - }, - { - "name": "stormwatch.3.high_water_arm_per_minute", - "value":"200", - "description": "stormWatch candidate oid 3 high-water storm activation value (future use)" + "name": "sw_interval_in_seconds", + "value": "60", + "description": "StormWatch sample interval", + "designer_editable" : false, + "policy_editable" : false, + "sourced_at_deployment" : false + }, + { + "name": "StormWatchPolicy", + "description": "Configure storm watch control parameters via Policy", + "sourced_at_deployment": false, + "designer_editable": true, + "policy_editable": true, + "policy_group": "DCAE.Config_StormWatch", + "policy_schema": [ + { + "name": "sw_trap_config", + "description": "List of storm watch control rules", + "type": "list", + "entry_schema": [ + { + "name": "sw_notify_oid", + "description": "Stormwatch notify oid", + "type": "string", + "value": "" + }, + { + "name": "sw_high_water_in_interval", + "description": "Onset number of traps in interval", + "type": "string", + "value": "" + }, + { + "name": "sw_low_water_in_interval", + "description": "Clearing number of traps in interval", + "type": "string", + "value": "" + } + ] + } + ] + }, + { + "name": "Protocols", + "description": "Protocol parameters", + "sourced_at_deployment": false, + "designer_editable": false, + "policy_editable": false, + "value": [ + { + "name": "ipv4_interface", + "description": "ipv4 address trap receiver should listen to (0.0.0.0 -> all)", + "value": "0.0.0.0" + }, + { + "name": "ipv4_port", + "description": "port trap receiver should bind to for ipv4 traps", + "value": "162" + }, + { + "name": "ipv6_interface", + "description": "ipv6 address trap receiver should listen to (::FFFF:0:0 -> all)", + "value": "::FFFF:0:0" + }, + { + "name": "ipv6_port", + "description": "port trap receiver should bind to for ipv6 traps", + "value": "162" + } + ] + }, + { + "name": "Cache", + "description": "Cache parameters", + "sourced_at_deployment": false, + "designer_editable": false, + "policy_editable": false, + "value": [ + { + "name": "dns_cache_ttl_seconds", + "description": "dns cache ttl in seconds", + "value": "60" + } + ] + }, + { + "name": "Files", + "description": "Files parameters", + "sourced_at_deployment": false, + "designer_editable": false, + "policy_editable": false, + "value": [ + { + "name": "arriving_traps_log", + "description": "log for all traps accepted by receiver", + "value": "snmptrapd_arriving_traps.log" + }, + { + "name": "data_dir", + "description": "directory for published traps (json)", + "value": "data" + }, + { + "name": "eelf_audit", + "description": "eelf audit log", + "value": "audit.log" + }, + { + "name": "eelf_base_dir", + "description": "base directory for eelf logs", + "value": "/opt/app/snmptrap/logs" + }, + { + "name": "eelf_debug", + "description": "eelf debug log", + "value": "debug.log" + }, + { + "name": "eelf_error", + "description": "eelf error log", + "value": "error.log" + }, + { + "name": "eelf_metrics", + "description": "eelf metrics log", + "value": "metrics.log" + }, + { + "name": "log_dir", + "description": "logs directory", + "value": "logs" + }, + { + "name": "minimum_severity_to_log", + "description": "minimun severity to log", + "value": "2" + }, + { + "name": "perm_status_file", + "description": "permanent status log", + "value": "snmptrapd_status.log" + }, + { + "name": "pid_dir", + "description": "directory for pid file", + "value": "tmp" + }, + { + "name": "roll_frequency", + "description": "frequency of log file rolls", + "value": "hour" + }, + { + "name": "runtime_base_dir", + "description": "base directory for runtime files", + "value": "hour" + }, + { + "name": "snmptrapd_diag", + "description": "diagnostic program log", + "value": "snmptrapd_prog_diag.log" + }, + { + "name": "traps_stats_log", + "description": "traps statistics log", + "value": "snmptrapd_stats.csv" + } + ] + }, + { + "name": "Publisher", + "description": "Publisher parameters", + "sourced_at_deployment": false, + "designer_editable": false, + "policy_editable": false, + "value": [ + { + "name": "http_milliseconds_between_retries", + "description": "milliseconds between publish retries", + "value": "750" + }, + { + "name": "http_peer_publisher", + "description": "peer publisher", + "value": "unavailable" + }, + { + "name": "http_primary_publisher", + "description": "primary publisher", + "value": "true" + }, + { + "name": "http_retries", + "description": "retries for publish attempts", + "value": "3" + }, + { + "name": "http_timeout_milliseconds", + "description": "milliseconds for publish timeout", + "value": "1500" + }, + { + "name": "max_milliseconds_between_publishes", + "description": "max milliseconds between publishes", + "value": "10000" + }, + { + "name": "max_traps_between_publishes", + "description": "max traps between publishes", + "value": "10" + } + ] } - ], + ], "auxilary": { + "healthcheck": { + "type": "docker", + "interval": "300s", + "timeout": "120s", + "script": "/opt/app/snmptrap/bin/healthcheck.sh" + }, + "reconfigs": { + "dti": "/opt/app/snmptrap/bin/snmptrapd.sh reloadCfg" + }, + "ports": [ + "6162:162" + ] }, "artifacts": [ { "type": "docker image", - "uri": "nexus.onap.org:10001/snapshots/onap/org.onap.dcaegen2.collectors.snmptrap:1.3.0" + "uri": "nexus.onap.org:10001/snapshots/onap/org.onap.dcaegen2.collectors.snmptrap:1.4.0" } ] } -- cgit 1.2.3-korg