行动是治愈恐惧的良药,而犹豫、拖延将不断滋养恐惧。

每秒30万条数据,elasticsearch集群如何搭建

Elasticsearch | 作者 qps_dskl332 | 发布于2018年10月26日 | 阅读数:2697

背景:
目前采集网络流量数据,数据在30万条/s左右,采用filebeat+kafka+logstash+es集群存储,目前已有的机器为48C 64G,目前测试用了1台master,6台data,根据官网建议进行了优化只压到了5万/s。
1、请问要满足30万/s,如何搭建es集群,具体要多少台机器,多少个master节点,多少data节点,多少client节点?
2、搭建集群时如何配置,优化?
3、建议data节点关机http,那写数据的时候使用client节点吗 ?
已邀请:

rochy - rochy_he

赞同来自:

1. master 的设置还是选择三个节点吧,每个节点设置的时候把 ingest 设置为 false;
2. 写入的时候,索引的副本数可以设置为 0,刷新时间设置为 60s 或者更大时间;
3. 调整 translog 的设置:
index.translog.durability: async
index.translog.sync_interval: 600s
index.translog.flush_threshold:50000
index.translog.flush_threshold_size: 1024mb
 
4. 对不参与搜索的字段关闭分析器,对不参与聚合、排序的字段设置关闭 doc_values;
5. 调整 logstash 的 bulk 大小,以及消费 kafka 的线程数;
6. 设置索引相关的线程池:
threadpool.index.size: 100 
threadpool.index.queue_size: 500

7. 增大索引实时时间设置:index.engine.robin.refresh_interval: 10s
8. 增大内存缓冲区: indices.memory.index_buffer_size: 20%
 
 

要回复问题请先登录注册