0

我看到使用 Flume 源 syslogudp 丢失了大约 25% 的数据。

这是我的配置

a1.来源 = r1

a1.sinks = k1

a1.channels = c1

资源

a1.sources.r1.type = syslogudp

a1.sources.r1.bind = 172.24.1.78

a1.sources.r1.port = 65535

下沉

a1.sinks.k1.type = file_roll

a1.sinks.k1.sink.directory = /var/log/tmp

a1.sinks.k1.sink.rollInterval = 0

a1.sinks.k1.sink.batchSize = 20000

渠道

a1.channels.c1.type = 内存

a1.channels.c1.capacity = 20000

a1.channels.c1.transactionCapacity = 20000

绑定

a1.sources.r1.channels = c1

a1.sinks.k1.channel = c1

我已更改 RHEL 内核参数以解决问题但没有影响。

sysctl -w net.core.rmem_max=33554432

sysctl -w net.ipv4.udp_mem='262144 327680 393216'

sysctl -w net.core.netdev_max_backlog=2000

有什么建议么?

4

1 回答 1

0

也许问题出在UDP本身?维基百科说

它(UDP)没有握手对话,因此将底层网络协议的任何不可靠性暴露给用户的程序。由于这通常是基于不可靠媒体的 IP,因此无法保证交付、订购或重复保护。

于 2013-11-20T09:34:13.503 回答