【问题标题】:Stopping Flume Agent停止 Flume 代理
【发布时间】:2016-10-06 09:22:53
【问题描述】:

我有一个要求,我想以假脱机目录作为源来运行 Flume 代理。在将 spool 目录中的所有文件复制到 HDFS(sink) 之后,我希望代理停止,因为我知道所有文件都被推送到通道。 此外,我想每次针对不同的假脱机目录运行此步骤,并在目录中的所有文件都标记为 .COMPLETED 时停止代理。 有什么办法可以阻止水槽代理?

【问题讨论】:

  • 这不是flume的用例
  • 好的。也许我可以降级。让我向您解释一下我要实现的目标。我有一个 ETL 过程。当用户提供输入目录时,我首先使用 put 命令将其复制到 HDFS,然后在其上运行 MapReduce 作业。我试图探索是否有比使用 put 命令更有效的方式将数据推送到 HDFS。所以我试图探索水槽来实现这一点。但问题是每次假脱机目录都会改变,因为用户可能希望从不同的目录加载数据。这是否适合 Flume 的用例?如果不适合,是否有任何其他组件可用于执行此操作?

标签: hadoop flume flume-ng


【解决方案1】:

现在我建议在运行水槽代理时打开水槽代理终端。然后在这个终端上执行 ctrl+c 代理就消失了。

【讨论】:

    【解决方案2】:

    停止 Flume 代理的两种方法:

    1. 进入运行Flume代理的终端,按ctrl+C强行杀死代理
    2. 从任何终端运行 jps 并查找“应用程序”进程。记下它的进程 id,然后运行 ​​kill -9 来终止进程

    【讨论】:

      【解决方案3】:

      打开另一个重复的会话窗口,然后使用下面的命令。

      ps –ef | grep 水槽

      取出process_id,用下面的命令杀死

      kill -9 process_id

      这对我有用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-12-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多