Logstash/Elasticsearch/Kibana 资源规划

Logstash/Elasticsearch/Kibana resource planning

如何根据负载规划资源(我怀疑是elasticsearch实例):

带负载我的意思是 ≈500K events/min,每个包含 8-10 个字段。

我应该转动哪些配置旋钮? 我是这个堆栈的新手。

每分钟 500,000 个事件是每秒 8,333 个事件,这对于小型集群(3-5 台机器)来说应该很容易处理。

将 720M 每日文档打开 60 天(43B 文档)会出现问题。如果这 10 个字段中的每一个都是 32 字节,那就是 13.8TB 的磁盘 space(单个副本接近 28TB)。

为了比较,我最多有 5 个节点(64GB RAM,31GB 堆),1.2B 文档占用 1.2TB 磁盘 space(副本加倍)。这个集群无法处理每台机器只有 32GB RAM 的负载,但现在有 64GB 就很满意了。这是我们 10 天的数据。

粗略地说,您期望的文档数量是我集群的 40 倍,消耗的磁盘是我的集群的 10 倍 space。

我没有确切的数字,但我们使用 doc_values 的试点项目为我们节省了大约 90% 的堆空间。

如果所有这些数学都成立,并且 doc_values 很好,那么就索引的实际字节数而言,您可以使用类似的集群。我会征求有关拥有这么多个人文件的开销的更多信息。

我们已经对 elasticsearch 进行了一定程度的调整,但可能还有更多的事情要做。

我建议您从几台 64GB 的机器开始。您可以根据需要添加更多。加入几个(较小的)客户端节点作为索引和搜索请求的前端。