Suricata是一个高性能的网络IDS、IPS和网络安全监控引擎。它是开源的,相比tcpdump等基于pcap捉包的工具,它除了能过进行网络捉包外,还具有更多的扩展功能,我们可以利用它的扩展功能,为我们的开发测试环境提供网络数据的监控能力。
安装:
centos系统安装
ubuntu系统安装
由于开发测试环境经常出现各种中间件复用或者其它问题,可以利用该工具在网络层面进行监控辅助开发排查,例如:
(1)有时候会出现部分消息丢失而不知道被哪里的主机消费了等问题
(2)python或其它项目,在api被调用抛出了异常但工程代码并未捕获异常
(3)性能压测时网络层面的性能指标监控
安装后,编写自定义规则,支持热加载:
例如加入规则(由于是k8s,可以考虑过根据端口区分过滤不同的业务):
可以监控到告警(可以配置为写入文件):