Fluentd SSL/TLS将TCP输出插件固定到通用接收器(LogStash)



我一直在寻找TCP的Fluentd输出插件的一段时间,这也是SSL确保的,这些插件不会迫使我的接收器来自特定的类型。就我而言,我的接收器是logstash。

这是几个接近的插件(关闭但没有雪茄):

正向输出 - 不支持SSL连接。

安全向前输出 - 仅将数据发送到另一个Fluentd接收器。

有些是HTTPS插件,有些是特定的服务插件(需要某种令牌/用户/密码)。

我还可以使用其他插件吗?也许有一些解决方法?

花了几天的时间搜索现有插件后,我决定没有,我会自己写!

fluent-plugin-loomsystems用于安全TCP转发的Fluentd输出插件:)

要将插件添加到您的fluentd代理中,请使用以下命令:

gem install fluent-plugin-loomsystems

要匹配事件,将它们发送到您想要的任何地方,只需将以下代码添加到Fluentd配置文件中。

<match **>
  @type loomsystems
  host <your-beloved-host>
</match>

重新启动Fluentd后,所有Flunetd事件都将发送到您的主机。

该插件默认打开新的SSL连接,但可以配置为在非安全TCP模式下发送。

<match tag-life.**>
  @type loomsystems
  host <your-beloved-host>
  use_ssl false
</match>

我欢迎您出演,建议并贡献插件,享受:)

@dorony:我试图使用它,但无法使其起作用。我正在Docker容器上本地运行OpenShift-3.6.0。我在fluentd.conf中添加了下面的配置:

<match **>
    @type loomsystems
    host 172.17.0.1
    port 4000
    use_ssl false
</match>

以及我的logstash input.conf中的配置。但是,我无法在LogStash中收到任何日志。即使没有连接。我没有在Fluentd日志中遇到任何错误。

input {
   tcp {
     codec => fluent
     port => 4000
   }
}

最新更新