Logstash实例及pipeline的worker问题

Logstash | 作者 insist_93 | 发布于2019年01月02日 | 阅读数:170

请问,Logstash在什么情况下需要在一台服务器上部署2个或以上的实例呢?每个实例配置的pipeline,又分别应该设置多少个worker?目前我的机器是8核16G,为Logstash专用,数据量并不大,每日文档量1200W+
已邀请:

rochy - rochy_he@jointsky

赞同来自:

- `pipeline.workers`:设置启动多少个线程执行 fliter 和 output;当 input 的内容出现堆积而 CPU 使用率还比较充足时,可以考虑增加该参数的大小;
- `pipeline.batch.size`:设置单个工作线程在执行过滤器和输出之前收集的最大事件数,较大的批量大小通常更高效,但会增加内存开销。输出插件会将每个批处理作为一个输出单元。;例如,ES 输出会为收到的每个批次发出批量请求;调整 `pipeline.batch.size` 可调整发送到 ES 的批量请求(Bulk)的大小;
- `pipeline.batch.delay`:设置 Logstash 管道的延迟时间, 管道批处理延迟是 Logstash 在当前管道工作线程中接收事件后等待新消息的最长时间(以毫秒为单位);简单来说,当 `pipeline.batch.size` 不满足时,会等待 `pipeline.batch.delay` 设置的时间,超时后便开始执行 filter 和 output 操作。
 
 

要回复问题请先登录注册