Ossim下RRDTool实战数据库
RRDtool 就是使用相似的方式来存放数据的工具,RRDtool 所使用的数据库文件的后缀名是.rrd(主要在 OSSIM系统的/var/lib/ossim/rrd/、/var/lib/munin/alienvault/目录、/var/lib/munin/localdomain和/var/lib/ntop_db_64/rrd/interface/eth0/目录中),通过SNMP抓取到的数据存储于.rrd文件中,它是数据库文件,在这个库中存储着时间序列的数据,也就是在时间的若干点上度量某些值,好比它能够经过SNMP查询设备中保持的计数器的值获取远程网络设备的流量信息。不一样于其它的数据库,RRDtool除了可以存储数据,还能建立图表。安全
图1 Ntop下RRD设置服务器
图2 Ntop中利用RRD显示的网络协议网络
在OSSIM系统中,主要使用RRDtool 绘制各种流量监控软件实时监控图表。OSSIM Framework用RRD来表示和管理资产的安全状态,存储在/usr/share/ossimframework/ossimframework/RRDUpdate.py等文件中。dom
下面简单介绍RRDtool相关应用。工具
从以上能够看出,使用方法就是:fetch
rrdtool [options] command command_optionsui
这里commands包括:create、update、updatev、graph、dump、restore、last、first、info、fetch、tune、resize、xport。咱们将着重介绍一下creat命令的使用。咱们用一个实例对整个语法进行解释(如下都用这个例子说明参数的使用):spa
rrdtool create target.rrdrest
--start 1023654125
--step 300
DS:mem:GAUGE:600:0:671744
RRA:AVERAGE:0.5:12:24
RRA:AVERAGE:0.5:288:31
解释:create 很容易理解,就是建立一个新的Round Robin Database (RRD) 数据库文件以存储信息。
filename习惯上会以 .rrd 结尾,请记住这个数据库文件的名字。
--start 这个参数能够指定 filename 的数据记录起始日期,能够指定为 1970 年至今的秒数(参数为-b `date -d "1970/01/01" +%s`),若是不指定,那么起始时间默认就为系统定义的时间。
--step 采集数据的间隔时间,习惯上咱们会设 300 (秒),也能够自行调整,这也是RRD的优点所在。可是采集周期不该该太短也不该小于系统的update rrd文件周期,不然可能会形成服务器负载太重。
经过以上叙述可知RRDtool是OSSIM重要的绘图引擎Munin、Mrtg、Ossim-Framework、alienvault-dummy-framework等组件都须要从RRDtool调用绘图数据。