logstash 可以“拉取”数据吗?

logstash 可以“拉取”数据吗?

我有两台服务器。服务器 A 运行 Elasticsearch 和 Logstash。服务器 B 运行 filebeat,也是包含我尝试分析的所有日志的服务器。

服务器 A 位于防火墙后面,它可以访问互联网,但不可能允许任何入站流量。

服务器 B 位于 AWS 中,并且在我的控制之下,负责入站和出站流量。

有什么方法可以将数据从服务器 B 传输到服务器 A 的 logstash 吗?Filebeat 通常需要能够将数据推送到 logstash,但在我的场景中这是不可能的。

答案1

使用 B 上的 Filebeat(或任何其他 Beat),您的选项仅限于:

  • Elasticsearch — 在这里不可行。
  • Redis — 一些可能性。
  • Kafka——类似的可能性。

如果 A 可以调用 B 的网络空间,则可以让 B 的 Filebeat 将日志存入 Redis(或 Elasticache Redis)或 Kafka(或 AWS Managed Kafka Services),其中 A 上的 Logstash 可以连接到 Redis 或 Kafka。

出于安全考虑,Redis 现在能够支持通过连接进行身份验证和 TLS。在 6.x 及更高版本中,尤其是 AWS 版本,Redis 具有实际的 ACL 支持。

相关内容