【问题标题】:Usable space exhausted in flume using file channel使用文件通道在水槽中耗尽可用空间
【发布时间】:2016-01-21 07:01:37
【问题描述】:

我正在开发 Flume,Spool Directory 作为 Source,HDFS 作为 sink,File 作为 channel。执行水槽作业时。我遇到了以下问题。内存通道工作正常。但是我们需要使用 File 通道来实现相同的功能。使用文件通道我遇到了以下问题。

我在 flume.env.sh 文件中将 JVM 内存大小配置为 3GB。请让我知道我们需要做的任何其他设置。

2016 年 1 月 20 日 20:05:27,099 错误 [SinkRunner-PollingRunner-DefaultSinkProcessor] (org.apache.flume.SinkRunner$PollingRunner.run:160) - 无法传递事件。例外如下。 java.lang.IllegalStateException:通道关闭 [channel=Artiva-memory-channel]。由于 java.io.IOException: 可用空间已用完,仅剩 427515904 字节,需要 524288000 字节

【问题讨论】:

    标签: flume flume-ng


    【解决方案1】:

    文件通道与内存无关,但与 HDD(磁盘)有关。这样的通道使用文件系统来存储数据。因此,检查写入检查点文件和数据文件的磁盘中有多少可用空间(请查看FileChannel 参数)。

    【讨论】:

    • 嗨..谢谢您的回复...我给了 minimumRequiredSpace=524288000 ...但我仍然遇到同样的问题...
    • 因为您要配置 524288000 字节,所以配置失败。您发布的日志说您的磁盘中只有 427515904 字节可用。因此,您必须配置 427515904 字节或更少才能使其正常工作。
    • @frb 我得到 java.io.IOException: 可用空间已用完,只剩下 0 个字节,需要 524288000 个字节。错误说剩余 0 个字节,但我控制文件夹上有 777 特权,并且有很多空间。我该如何解决?
    • 如何找到检查点文件和数据文件的写入位置?而我们在哪个配置文件中设置了 minimumRequiredSpace?
    【解决方案2】:

    错误消息是关于内存通道的。请参阅“通道关闭 [channel=Artiva-memory-channel]”。
    检查分配给有问题的 HDFS 接收器的通道。 它将在 flume.conf 文件中,属性如下: agent_name.sinks.hdfs_sink_name.channel

    【讨论】:

      猜你喜欢
      • 2017-09-16
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-23
      • 2016-07-21
      • 2012-03-08
      • 1970-01-01
      相关资源
      最近更新 更多