logstash日志收集系统性能问题(ELK)?

发布于 11-24 23:34 字数 650 浏览 798 评论 7

各位好,

   目前我正在用ELK做统一日志收集系统。

    官网上介绍时都强调了一般都用redis作为缓冲中间件,也就是:

    input:file -> output:redis                (这个logstash shipper是装在日志服务器上的)

    input:redis -> output:elasticsearch    (单独的logstash,可以做集群,多个logstash都从redis从取)

    不知道添加一个redis是为了提高性能吗?

    我按照这种架构来部署时,发现logstash仅能处理每秒不到2000条日志,大部分的日志都积压在redis侧。

    如果直接从input:file -output:elasticsearch 是不是更快些呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

长安忆2021-11-30 13:53:15

不要相信elasticsearch入库速度,直接打入这里,可能由于打入过快导致内存暴增

叹沉浮2021-11-30 13:46:09

input {

  redis {

    host => '127.0.0.1'

    data_type => 'list'

    key => 'logstash:redis'

   
 threads => 10

    #batch_count => 1000

  }

}

output {

  elasticsearch {

    #embedded => true

    host => localhost

    
workers => 10

  }

}

大概每S可2W

因为elasticsearch写的速度肯定没有直接读取log的速度快,用redis做缓存,redis写入速度要大于elasticsearch速度

皇甫轩2021-11-30 13:28:22

我配置过logstash在output到elasticsearch时的worker数量,redis中目前无排队的数据。 不知道是不是这个参数可以改善

高跟鞋的旋律2021-11-30 12:54:37

给redis设置的最大内存为16g. 不过这个跟redis应该没有关系吧,redis只是做数据队列的,主要是logstash indexer取的很慢

夜司空2021-11-30 00:50:22

回复
你的问题解决了吗?我最近也遇到相同的问题。

一笔一画续写前缘2021-11-29 14:12:15

redis机器给的内存够多吗?

奢望2021-11-29 01:01:43

我们用zmq做队列。你应该开启多个线程,甚至可以用多个进程进行处理,一秒钟上万条,应该没有问题的

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文