我正在尝试从10个设备(路由器)收集syslog。我知道可以使用syslog源代码,但是需要对属性中的主机和端口进行说明。它们是否是运行Flume Agent的计算机上的本地端口。还有如何将系统日志重定向到水槽正在侦听的端口。

最佳答案

经典的Syslog源基本上是设计用于连接到一个syslog主机的,即,您将必须为10个syslog服务器设置10个源。所有这些源都可以在一个代理中运行,并使用一个通道将其事件后台处理到一个接收器-但是,如果数据量很大,此设置将很快遇到性能问题。您将必须配置路由器以连接到该syslog主机/端口配置。

较大的设置是为每个syslog服务器安装一个代理,然后使用Avro Sink / Avro Source将事件假脱机到一个或两个代理,然后再次对事件进行排序并将它们写在您想要的位置。

您也可以使用较新的Multiport Syslog TCP Source,它产生多个端口。这使更多路由器可以连接到一个系统日志源:

a1.sources = r1
a1.channels = c1
a1.sources.r1.type = multiport_syslogtcp
a1.sources.r1.channels = c1
a1.sources.r1.host = 0.0.0.0
a1.sources.r1.ports = 10001 10002 10003
a1.sources.r1.portHeader = port

在此配置中,syslog在代理上提供端口10001、10002和10003。您将配置路由器以连接到代理的IP和这三个端口之一。

关于hadoop - 收集系统日志数据的水槽,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28275845/

10-16 01:38