关于如何在 Windows 中使用 hadoop 安装水槽的任何想法?

Posted

技术标签:

【中文标题】关于如何在 Windows 中使用 hadoop 安装水槽的任何想法?【英文标题】:Any idea about how to install flume with hadoop in windows? 【发布时间】:2016-01-28 17:22:08 【问题描述】:

我将hadoop安装在c:\hadoop2.5.2,然后在c:\hadop2.5.2\apache-flume-1.6.0下解压flume二进制文件

我收到如下所示的错误有什么想法吗?

C:\hadoop2.5.2\apache-flume-1.6.0\bin>flume-ng agent -conf -f conf/flume-twitter.conf -Dflume.root.logger=DEBUG,console -n TwitterAgent

C:\hadoop2.5.2\apache-flume-1.6.0\bin>powershell.exe -NoProfile -InputFormat none -ExecutionPolicy unrestricted -File C:\hadoop2.5.2\apache-
flume-1.6.0\bin\flume-ng.ps1 agent -conf -f conf/flume-twitter.conf -Dflume.root.logger=DEBUG,console -n TwitterAgent
C:\hadoop2.5.2\apache-flume-1.6.0\bin\flume-ng.ps1 : A parameter cannot be found that matches parameter name 'Dflume.root.logger=DEBUG,cons
ole'.
At line:0 char:1
+  <<<<
    + CategoryInfo          : InvalidArgument: (:) [flume-ng.ps1], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : NamedParameterNotFound,flume-ng.ps1

C:\hadoop2.5.2\apache-flume-1.6.0\bin>

我在flume.sh中设置了参数

export JAVA_HOME=C:\Java\jdk1.7.0_79\

# Give Flume more memory and pre-allocate, enable remote monitoring via JMX
export JAVA_OPTS="-Xms100m -Xmx2000m -Dcom.sun.management.jmxremote"

# Note that the Flume conf directory is always included in the classpath.
FLUME_CLASSPATH="C:\hadoop2.5.2\apache-flume-1.6.0\lib\flume-sources-1.0-SNAPSHOT.jar"

请各位大侠知道怎么解决这个问题?

【问题讨论】:

我认为您可能需要将 -Dflume.root.logger=DEBUG,console 更改为 -Dflume.root.logger="DEBUG,console".. 您是否已经尝试过? @vmachan 不工作 还会出现同样的错误吗? @vmachan 我想通了,但现在它给出了另一个错误“访问'/1/statuses/filter.json'的问题。原因:e> 未经授权”但我的凭据是正确的。 你能发布更新的命令和错误日志吗?..如果你在 Windows 上运行它..正斜杠“可能”导致问题..还有路径 `/1/statuses/ filter.json' 看起来确实有问题,这是在哪里配置的? 【参考方案1】:

我也遇到了同样的问题。 Flume 网站上的文档似乎已经过时了。这是我尝试过的示例,它对我有用。

bin\flume-ng agent -conf conf -conf-file conf/flume-conf.properties --name agent1 -property "flume.root.logger=INFO,console"

将 -D 替换为 -property Let reference source code of Apache Flume on the Github。从第 20 行看。

所以,你应该试试:

bin\flume-ng agent -conf -f conf/flume-twitter.conf -property "flume.root.logger=INFO,console" -n TwitterAgent

【讨论】:

是的,文档似乎不是最新的。更简单的检查方法是检查 bin 文件夹中的 flume-ng.ps1。其中,-property ""name1=val;name2=val; .."" sets a JDK system property value 指的是 JVM 运行时参数。

以上是关于关于如何在 Windows 中使用 hadoop 安装水槽的任何想法?的主要内容,如果未能解决你的问题,请参考以下文章

如何在Windows中使用Eclipse访问虚拟机Linux系统中的hadoop

如何在Windows中使用Intellij idea搭建远程Hadoop开发环境

如何在windows下安装hadoop

关于org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z报错

如何在Windows下面运行hadoop的MapReduce程序

如何在 Windows 8 中安装 hadoop