summaryrefslogtreecommitdiffstats
path: root/docs/sections/services/snmptrap/architecture.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/sections/services/snmptrap/architecture.rst')
-rw-r--r--docs/sections/services/snmptrap/architecture.rst85
1 files changed, 85 insertions, 0 deletions
diff --git a/docs/sections/services/snmptrap/architecture.rst b/docs/sections/services/snmptrap/architecture.rst
new file mode 100644
index 00000000..f50f1d37
--- /dev/null
+++ b/docs/sections/services/snmptrap/architecture.rst
@@ -0,0 +1,85 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+Architecture
+============
+
+**SNMPTRAP** (or "trapd", as in trap daemon) is a network facing ONAP platform
+component.
+
+The simple network management protocol (or "SNMP", for short) is a
+standardized communication protocol used between managed devices (physical,
+virtual - or anything in between!) and a management system. It is used to
+relay data that can be valuable in the operation, fault identification and
+planning processes of all networks.
+
+It is the "front line" of management in all environments.
+
+SNMP utilizes a message called a "trap" to inform SNMP managers of abnormal
+or changed conditions on a resource that is running a SNMP agent. These
+agents can run on physical or virtual resources (no difference in reporting)
+and can notify on anything from hardware states, resource utilization,
+software processes or anything else specific to the agent's environment.
+
+
+Capabilities
+------------
+
+**SNMPTRAP** receives simple network management protocol ("SNMP") traps
+and publishes them to a message router (DMAAP/MR) instance based on
+attributes obtained from configuration binding service ("CBS").
+
+.. blockdiag::
+
+ blockdiag layers {
+ orientation = portrait
+ snmp_agent_1 -> SNMPTRAP;
+ snmp_agent_2 -> SNMPTRAP;
+ snmp_agent_n -> SNMPTRAP;
+ config binding service -> SNMPTRAP;
+ SNMPTRAP -> dmaap mr;
+
+ group l1 {
+ color = orange;
+ snmp_agent_1; snmp_agent_2; snmp_agent_n;
+ }
+ group l2 {
+ color = blue;
+ SNMPTRAP;
+ }
+ group l3 {
+ color = orange;
+ dmaap mr;
+ }
+ group l4 {
+ color = gray;
+ config binding service;
+ }
+
+ }
+
+
+Interactions
+------------
+
+
+Traps are published to DMAAP/MR in a json format. Once traps are published
+to a DMAAP/MR instance, they are available to consumers that are
+subscribed to the topic they were published to.
+
+
+Usage Scenarios
+---------------
+
+**SNMPTRAP** can be run on any device (physical, logical, container) that
+is capable of running python 3.6+ and has SNMP traps targeted at it. Running
+an instance of **SNMPTRAP** will result in arriving traps being published
+to the topic specified by config binding services. If CBS is not present,
+SNMPTRAP will look for or a JSON configuration file specified via the
+environment vvariable CBS_SIM_JSON at startup. Note that relative paths
+will be located from the bin (<SNMPTRAP base directory>/bin directory. E.g.
+
+.. code-block:: bash
+
+ CBS_SIM_JSON=../etc/snmptrapd.json
+