elasticsearch - Logstash-拉是否可能?

标签 elasticsearch logstash vpn

我们正在尝试建立一个ElasticSearch数据收集器。 ElasticSearch集群应该从不同的服务器接收数据。这些服务器位于ElasticSearch群集以外的其他位置(和网络)。客户端通过单向VPN连接连接到ElasticCluster。

作为首次尝试,我们在每台客户端服务器上安装了logstash以收集数据,过滤数据并将其发送到ElasticCluster。到目前为止,在测试环境中没有问题。现在的问题是来自客户端的LogStash试图建立与ElasticSearch的连接。但是,此尝试被防火墙阻止。但是,可以打开从ElasticCluster端到每个客户端的连接并接收数据。我们需要一种从LogStash获取数据的方法,以便我们打开一个连接并从LogStash(PULL)中提取数据。有没有一种方法可以在不更改VPN配置的情况下进行操作?

最佳答案

Logstash推送事件,如果您的logstash实例无法启动与elasticsearch节点的连接,则您将需要在中间添加一些内容或允许防火墙/ VPN上的流量通过。

例如,您可以在elasticsearch中找到logstash服务器可以在其中推送数据的位置,然后在主集群环境中再找到另一个logstash,在该集群中您将拥有一个管道,其中输入将是中间的elasticsearch,这样就可以提取数据来自elasticsearch。

编辑:

正如我在评论中所说,您需要有类似此图片的内容。

enter image description here

在这里,您的服务器将数据发送到logstash实例,此logstash具有向elasticsearch实例的输出,因此它将启动推送数据的连接。

在您的主集群上,这里有您的Elasticsearch集群,并且只有一种方式可以启动连接的VPN,您将拥有另一个logstash,然后此logstash将具有一个输入,该输入将查询外部Elasticsearch节点,以提取数据。

在logstash管道中,您可以有一个elasticsearch输入,该输入查询一个elasticsearch节点,然后将接收到的数据发送到过滤器和输出。

input {
    elasticsearch { the elasticsearch in the middle }
}
filter { 
    your filters 
}
output { 
    elasticsearch { your cluster nodes }
}

现在清楚了吗?

关于elasticsearch - Logstash-拉是否可能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51308667/

相关文章:

kubernetes - Logstash,如何使用来自事件数据的grok模式

mongodb - GrayLog2中的MongoDB有什么用?

r - 如何欺骗位置以便谷歌自动完成 API 将提供本地结果,最好使用 R

linux - forticlient ssl vpn 不适用于 Centos 7 上的代理

wmi - 在 Vista 上通过 WMI 获取 VPN IP 地址

elasticsearch - Elasticsearch Score文档按相同字段值

elasticsearch - Jaeger与ElasticSearch

oracle - Docker中的Logstash没有响应

python - 如何扩展elasticsearch使其每秒可以索引大量文档?

java - Logstash - 是否可以为logstash 创建一个java 程序