使用Influxdb / Kapacitor进行接口带宽使用和异常检测

时间:2017-11-21 22:25:18

标签: influxdb bandwidth anomaly-detection kapacitor

我已经建立了一个带有服务器的实验室,使用LibreNMS每隔5分钟为一些网络设备(主要是Juniper和Brocades)提取统计数据,并将收集的数据转发给一个涌入数据库。我每5分钟就会获得大量数据,但我想要关注的是接口带宽使用情况。我有ifOutOctets_rate和ifInOctets_rate数据点,它们似乎是从LibreNMS和原始接口计数器计算的by /秒。

我最初的目标是设置Influxdb和Kapacitor,以了解每个界面的使用历史,并检测任何异常情况。我期望检测到的异常是当流量最大化时#34;在接口上,或在工作时间内降至零。接口被视为"最大化"当它达到或超过过去7天所见的最大使用带宽时,并保持该速率至少15分钟(3个轮询周期)。

我是潮流/ kapacitor的新手,并且从未做过任何异常检测,所以我想我会通过这样做来学习。现在我已经设置了实验室并使组件正常工作并且数据流动,我不知道下一步该去哪里。

我曾试图在Kapacitor中使用Holt-Winter功能,但我想我已经徘徊在"预测"。好像我必须做一个"预测"比较我的实时数据。但它似乎只能在24小时范围内工作,即使这样,我还需要进行一些调整,因为我学到了更多关于算法以及如何将其应用于数据的知识。

那时我想我应该看看是否有人有任何指针。我很难找到关于Influxdb和网络流量数据的任何示例。这是我第一次涉足这些工具以及"数学"这很复杂。我怀疑我是否需要执行TICK脚本将输入/输出Octet数据(分批?)分流到外部进程,外部进程将处理它并可能将结果保存回到Influxdb以进行可视化。 (至少在我学习的时候。)

我的主要问题是,是否有人可以引用网络带宽"如何设置kapacitor处理历史记录并了解7天内24小时循环的具体示例。 (由于周末/假日的模式与正常工作日的模式明显不同。)我不反对使用其他工具/方法,但我更愿意坚持使用Kapacitor和Influxdb来帮助学习理论,同时我正在学习这个工具。当系统检测到带宽异常并且检测到它已经结束时,TICK脚本将被写入文件。

最后,我还会问我上面描述的方法是否切实可行?从某种意义上说,我并不是在粗略估计这些工具的能力,也不是在不必要地使我的学习场景复杂化?

0 个答案:

没有答案