请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

filebeat整合logstash生产问题

数据的每天增量为1T多;有三大类日志;

1、用三个filebeat采集和三个logstash实例(单机多实例运行)来过滤

2、用一个filebeat采集给日志文件加标记;通过一个logstash(单机单实例)来分类过滤

这两种方法是不是第二种比较安全可靠呢?同事一直赞同第二种;说logstash底层运行的时候还是一个配置文件。会有安全隐患

为什么我感觉第一种方法解耦能力比较好呢?有木有大神来解答一下这两种方法?(本人刚毕业;比较菜。。。)

正在回答

1回答

没看懂为什么三个 filebeat 可以缩成一个 filebeat?一台主机上只运行一个 filebeat 就可以。

logstash 的容灾可以考虑通过 haproxy 等做负载均衡实现,不过在 logstash down 掉的时候,filebeat 会暂停收集日志,直到 logstash 启动,因此不加负载均衡,问题也不大。你可以自己试验一下看

1 回复 有任何疑惑可以回复我~
  • 提问者 qq_无妄_3 #1
    老师;非常感谢您!
    回复 有任何疑惑可以回复我~ 2018-07-11 16:13:59
  • 提问者 qq_无妄_3 #2
    老师;我想问个问题;就是我在使用filebeat+kafka+logstash的时候;先开启filebeat传输数据然后再开启logstash 会报ruby错误
    [2018-07-31T11:20:27,263][ERROR][logstash.filters.ruby    ] Ruby exception occurred: 
    [2018-07-31T11:20:27,263][ERROR][logstash.filters.ruby    ] Ruby exception occurred: 
    [2018-07-31T11:20:27,271][ERROR][logstash.filters.ruby    ] Ruby exception occurred: 
    [2018-07-31T11:20:27,282][ERROR][logstash.filters.ruby    ] Ruby exception occurred: 
    [2018-07-31T11:20:28,119][ERROR][logstash.filters.ruby    ] Ruby exception occurred: 
    [2018-07-31T11:20:28,165][ERROR][logstash.filters.ruby    ] Ruby exception occurred: 
    [2018-07-31T11:20:28,170][ERROR][logstash.filters.ruby    ] Ruby exception occurred: 
    如果先开启logstash然后再开启filebeat就不会有ruby报错;我的配置文件ruby部分是没错的
    
    		ruby{
    			code => 'time=Time.parse(event.get("Time"));
    					event.set("dt_exam_num","%10.3f"%time.to_time.to_f)
    					'
    		}
    		
    		ruby{
    			code => 'time=Time.parse(event.get("Time"));
    					event.set("dt_exam",time+8*60*60)
    回复 有任何疑惑可以回复我~ 2018-07-31 11:27:51
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信