elasticsearch 将日志从远程服务器拉入elasticsearch,elasticsearch,logstash,filebeat,elk,elastic-beats,elasticsearch,Logstash,Filebeat,Elk,Elastic Beats" /> elasticsearch 将日志从远程服务器拉入elasticsearch,elasticsearch,logstash,filebeat,elk,elastic-beats,elasticsearch,Logstash,Filebeat,Elk,Elastic Beats" />

elasticsearch 将日志从远程服务器拉入elasticsearch

elasticsearch 将日志从远程服务器拉入elasticsearch,elasticsearch,logstash,filebeat,elk,elastic-beats,elasticsearch,Logstash,Filebeat,Elk,Elastic Beats,简短的问题是:是否可以从远程服务器中提取日志(在日志文件中)并将其摄取到ELK堆栈中 长话短说如下: 我们有一个带有DMZ的设置,它面向公众 我们有一个intranet环境,其中托管了许多内部系统,包括麋鹿堆栈 由于安全规定,我们无法建立从DMZ到intranet的连接(在IP级别) 但是,我们可以从内部网到DMZ 由于此设置,我们无法按照正常路线在存储日志的服务器上安装Filebeat,并将消息推送到logstash安装 我们想做的事情看起来有点像: Filebeat或任何其他进程在DM

简短的问题是:是否可以从远程服务器中提取日志(在日志文件中)并将其摄取到ELK堆栈中

长话短说如下:

  • 我们有一个带有
    DMZ
    的设置,它面向公众
  • 我们有一个
    intranet
    环境,其中托管了许多内部系统,包括麋鹿堆栈
  • 由于安全规定,我们无法建立从
    DMZ
    intranet
    的连接(在IP级别)
  • 但是,我们可以从
    内部网
    DMZ
由于此设置,我们无法按照正常路线在存储日志的服务器上安装
Filebeat
,并将消息推送到
logstash
安装

我们想做的事情看起来有点像:

  • Filebeat或任何其他进程在
    DMZ
  • 在这台服务器上有一些进程(
    Filebeat
    logstash
    ,另一个
    elasticsearch
    实例?)将这些信息保存在本地存储中
  • 此工具(不管最后是什么)侦听可从
    内部网获得的端口
  • intranet
    中的另一个工具连接到
    DMZ
    工具,并提取所有收集的日志进行进一步处理
迄今为止,我们的调查仅得出将日志信息推送到
logstash
elasticsearch
的解决方案

我们不想做的一件事是使用文件共享使日志文件直接从
内部网
中可用


我们的问题是,我们所想的是否可能,如果可能,我们将使用什么工具和设置来实现这一点。

您可以使用Kafka作为消息代理尝试以下操作

在您的
DMZ
服务器上,您将使用filebeat收集日志并发送到logstash实例,然后此logstash instance将您的日志输出到kafka

这是一个简单的管道,带有
beats
输入、fitler和
kafka
输出,如果您不想对数据进行任何充实,可以从filebeat将日志直接发送到kafka

然后,您的kafka代理将侦听端口,并等待任何使用者连接并使用消息

在您的
intranet
上,您需要一个带有管道的logstash实例,该管道使用
kafka
输入,该管道将充当kafka消费者并提取您的消息,然后您可以使用
elasticsearch
输出存储在
intranet
elasticsearch集群中


有关更多信息,请阅读日志存储文档中的以及的文档。

Kafka是一个很好的解决方法。这将需要一个额外的基础设施,但我想这是我们必须要做的权衡。谢谢你的提示!(我找到了另一个解决方案,它的方式与此基本相同,只是使用另一个elasticsearch实例来缓冲消息)。但我更喜欢卡夫卡,它比另一个elasticsearch安装的配置/设置占用更少。