blob: e65be786ea491ea510838fe8ddeed8b157c86b1a [file] [log] [blame]
Rich Bennett98476312018-08-25 10:43:15 -04001.. This work is licensed under a Creative Commons Attribution 4.0 International License.
2.. http://creativecommons.org/licenses/by/4.0
3
4Architecture
5============
6
Ladue, David (dl3158)bb896892018-10-16 16:29:58 -04007The ONAP **SNMPTRAP** project (referred to as **"trapd"** - as in "trap daemon" throughout
8this documentation) is a network facing ONAP platform component.
Rich Bennett98476312018-08-25 10:43:15 -04009
Ladue, David (dl3158)bb896892018-10-16 16:29:58 -040010The simple network management protocol (or "SNMP", for short) is a pervasive
11communication protocol standard used between managed devices and a management system.
12It is used to relay data that can be valuable in the operation, fault identification
13and planning processes of all networks.
Rich Bennett98476312018-08-25 10:43:15 -040014
15SNMP utilizes a message called a "trap" to inform SNMP managers of abnormal
16or changed conditions on a resource that is running a SNMP agent. These
17agents can run on physical or virtual resources (no difference in reporting)
18and can notify on anything from hardware states, resource utilization,
19software processes or anything else specific to the agent's environment.
20
21
22Capabilities
23------------
24
Ladue, David (dl3158)bb896892018-10-16 16:29:58 -040025**trapd** receives SNMP traps and publishes them to a message router (DMAAP/MR)
26instance based on attributes obtained from configuration binding service ("CBS").
Rich Bennett98476312018-08-25 10:43:15 -040027
Ladue, David (dl3158)bb896892018-10-16 16:29:58 -040028.. image:: ./ONAP_trapd.png
Rich Bennett98476312018-08-25 10:43:15 -040029
30
31Interactions
32------------
33
Rich Bennett98476312018-08-25 10:43:15 -040034Traps are published to DMAAP/MR in a json format. Once traps are published
35to a DMAAP/MR instance, they are available to consumers that are
36subscribed to the topic they were published to.
37
38
39Usage Scenarios
40---------------
41
Ladue, David (dl3158)bb896892018-10-16 16:29:58 -040042**trapd** runs in a docker container based on python 3.6. Running
43an instance of **trapd** will result in arriving traps being published
Rich Bennett98476312018-08-25 10:43:15 -040044to the topic specified by config binding services. If CBS is not present,
Ladue, David (dl3158)bb896892018-10-16 16:29:58 -040045SNMPTRAP will look for a JSON configuration file specified via the
46environment variable CBS_SIM_JSON at startup (see "CONFIGURATION" link for details).