SNMP陷阱守护程序。
trapperkeeper的Python项目详细描述
TrapperKeeper是一套用于接收和显示SNMP陷阱的工具。这是为SNMPRTAPD的替换而设计的,补充了现有的状态监测解决方案。
BR/>通常陷阱本质上是无状态的,这使得很难用类似NAGIOS的系统来监视BR/>,这需要轮询一个源。在到期之前。这使得可以对
服务进行轮询以查找活动陷阱并对这些陷阱发出警报。
例如湿度警报。如果您超过了湿度
阈值,并且它立即清除,则您可能不希望在
凌晨3点被寻呼。但是,如果它在超过
阈值时继续每5分钟发送一个陷阱,则(主机、oid、严重性)的组合将保持在
活动状态,只要该陷阱的过期时间长于
5分钟。这允许nagios之类的东西在单个
陷阱保持活动状态超过一段时间时发出警报。
另一个好处是允许聚合页面。以前我们每个陷阱只有一封发送到寻呼机的电子邮件,但现在我们只根据
警报间隔进行寻呼,而不管我们收到了多少陷阱。这也允许
我们在计划维护期间为设备安排停机时间,以避免陷阱风暴。
要求
----
ubuntu
~代码::bash
$sudo apt get install libmysqlclient dev libsnmp dev
代码::bash
$pip install trappercheeper
创建包含数据库信息的配置文件后,可以运行以下命令创建数据库架构。
代码::bash
$python-m trapperperkeeper.cmds.sync_db-c/path/to/trapperperkeeper.yaml
tools
-
~~~~~~br/>
trapperperkeeper命令接收snmp陷阱并处理电子邮件和写入数据库。此处提供了一个带有
文档的配置文件示例。和/或TrPaPlur.yll& Br/> Br/>陷门
~~~~~~~~~~~~Br/> Br/> TraveOver是一个Web服务器,它提供了对现有陷阱的查看,作为BR/>以及作为观察陷阱状态的API。这里提供了一个配置
文件和文档的示例。<;conf/trapdoor.yaml>;``配置
…图::https://raw.githubusercontent.com/dropbox/trapperkeeper/master/images/trapdoor.png
:alt:screenshot
screenshot
api
^^^
/api/activetraps
''''''''''''''''''''''
**可选参数:*\*主机\*oid严重性
**返回:*
代码::javascript
[
(<;host>;、<;oid>;、<;severity>;)
]
/api/varbinds/
''''''''''''''''''
**返回:**
。代码::javascript
[
{
“通知id”:<;通知id>;,
“名称”:<;varbind&u name>;,
“漂亮值”:<;漂亮值>;,
“oid”:<;oid>;,
“值”:<;值>;,
“值类型”:<;值>;
}
]
MIB配置
----
``trapperKeeper``和``trapdoor``通过netsnmp使用默认MIB。您可以通过运行
``net snmp config--default mibdirs``来查看系统的默认路径。您可以使用
通常记录在``snmpcmd``手册页中的环境变量
mibs-要加载的mibs列表。默认为
snmpv2 tc:snmpv2 mib:if-mib:ip-mib:tcp-mib:udp-mib:snmp-vacm-mib。
mibdirs-要搜索mib的目录列表。丁默认为
/usr/share/snmp/mibs。
例如,我在以下环境中同时运行``trapperkeeper``和``trapdoor``命令
,将目录添加到路径并加载
all mib。
``mibs=all mibdirs=+/usr/share/mibs/local/`
----允许自定义电子邮件模板TrapperKeeper
-本地CDNJS镜像的CDNJS前缀
-用于解析的用户ACL
-记录解析用户
已知问题
----
-当前不支持SNMPv3
-当前不支持通知
-已知某些设备发送负时间戳。pyasn1
无法处理此问题。
BR/>通常陷阱本质上是无状态的,这使得很难用类似NAGIOS的系统来监视BR/>,这需要轮询一个源。在到期之前。这使得可以对
服务进行轮询以查找活动陷阱并对这些陷阱发出警报。
例如湿度警报。如果您超过了湿度
阈值,并且它立即清除,则您可能不希望在
凌晨3点被寻呼。但是,如果它在超过
阈值时继续每5分钟发送一个陷阱,则(主机、oid、严重性)的组合将保持在
活动状态,只要该陷阱的过期时间长于
5分钟。这允许nagios之类的东西在单个
陷阱保持活动状态超过一段时间时发出警报。
另一个好处是允许聚合页面。以前我们每个陷阱只有一封发送到寻呼机的电子邮件,但现在我们只根据
警报间隔进行寻呼,而不管我们收到了多少陷阱。这也允许
我们在计划维护期间为设备安排停机时间,以避免陷阱风暴。
要求
----
ubuntu
~代码::bash
$sudo apt get install libmysqlclient dev libsnmp dev
代码::bash
$pip install trappercheeper
创建包含数据库信息的配置文件后,可以运行以下命令创建数据库架构。
代码::bash
$python-m trapperperkeeper.cmds.sync_db-c/path/to/trapperperkeeper.yaml
tools
-
trapperperkeeper命令接收snmp陷阱并处理电子邮件和写入数据库。此处提供了一个带有
文档的配置文件示例。和/或TrPaPlur.yll& Br/> Br/>陷门
~~~~~~~~~~~~Br/> Br/> TraveOver是一个Web服务器,它提供了对现有陷阱的查看,作为BR/>以及作为观察陷阱状态的API。这里提供了一个配置
文件和文档的示例。<;conf/trapdoor.yaml>;``配置
…图::https://raw.githubusercontent.com/dropbox/trapperkeeper/master/images/trapdoor.png
:alt:screenshot
screenshot
api
^^^
/api/activetraps
''''''''''''''''''''''
**可选参数:*\*主机\*oid严重性
**返回:*
代码::javascript
[
(<;host>;、<;oid>;、<;severity>;)
]
/api/varbinds/
''''''''''''''''''
**返回:**
。代码::javascript
[
{
“通知id”:<;通知id>;,
“名称”:<;varbind&u name>;,
“漂亮值”:<;漂亮值>;,
“oid”:<;oid>;,
“值”:<;值>;,
“值类型”:<;值>;
}
]
MIB配置
----
``trapperKeeper``和``trapdoor``通过netsnmp使用默认MIB。您可以通过运行
``net snmp config--default mibdirs``来查看系统的默认路径。您可以使用
通常记录在``snmpcmd``手册页中的环境变量
mibs-要加载的mibs列表。默认为
snmpv2 tc:snmpv2 mib:if-mib:ip-mib:tcp-mib:udp-mib:snmp-vacm-mib。
mibdirs-要搜索mib的目录列表。丁默认为
/usr/share/snmp/mibs。
例如,我在以下环境中同时运行``trapperkeeper``和``trapdoor``命令
,将目录添加到路径并加载
all mib。
``mibs=all mibdirs=+/usr/share/mibs/local/`
----允许自定义电子邮件模板TrapperKeeper
-本地CDNJS镜像的CDNJS前缀
-用于解析的用户ACL
-记录解析用户
已知问题
----
-当前不支持SNMPv3
-当前不支持通知
-已知某些设备发送负时间戳。pyasn1
无法处理此问题。