我浏览了 Logstash 服务器上的文档,发现我们需要一个充当代理的 redis 服务器。链接在这里:
http://logstash.net/docs/1.1.12/tutorials/getting-started-centralized
但我不清楚的是为什么我们使用 Redis 作为代理?
我们可以直接将日志从 logstash 本身发送到弹性搜索,这将节省我们对 redis 代理的需求。那我们为什么要找托运人和索引器呢?
需要清楚的解释。
谢谢。
我浏览了 Logstash 服务器上的文档,发现我们需要一个充当代理的 redis 服务器。链接在这里:
http://logstash.net/docs/1.1.12/tutorials/getting-started-centralized
但我不清楚的是为什么我们使用 Redis 作为代理?
我们可以直接将日志从 logstash 本身发送到弹性搜索,这将节省我们对 redis 代理的需求。那我们为什么要找托运人和索引器呢?
需要清楚的解释。
谢谢。
将 Logstash 与 Redis 一起使用时,您可以将 Redis 配置为仅将所有日志条目存储在内存中,这需要内存队列(如 memcache)。
您可能会遇到 Logstash 不会处理发送的日志数量的情况,并且它可能会不断降低您的系统(在我们的环境中观察到)。
如果您觉得 Redis 对您的磁盘来说是一种开销,您可以将其配置为将所有日志存储在内存中,直到它们被 logstash 处理。
相信你可以在这里找到答案:
https://groups.google.com/forum/#!topic/logstash-users/VakCOAzZI8k
Redis 基本上充当原始托运人信息的临时键值存储,然后由索引器解析。然后日志信息最终存储在elasticsearch中,而不是redis中。
显然,这个想法是将索引卸载到专用于此类任务的服务器上,因为索引是 CPU 密集型的。我想 Redis 被称为经纪人似乎很合适。