DSE with Hadoop:入门时出错

时间:2014-11-20 06:10:16

标签: hadoop cassandra datastax-enterprise

我在使用Hadoop的DSE中遇到了问题。

让我描述一下设置,包括一些细节中的步骤,以便您能够帮助我。

我设置了一个三节点的DSE群集,其群集名称为“#training;#39;”。这三台机器都运行Ubuntu 14.04,64位,4 GB RAM。

使用GUI安装程序(sudo命令)安装DSE。安装完成后,cassandra.yaml文件被修改为

rpc_address = 0.0.0.0

一个接一个地启动了三个节点。创建了具有replication_factor = 3的键空间。数据已成功插入并从任何其他节点访问。

然后使用GUI安装程序(sudo)将DSE安装在第四台计算机上(让我们将此计算机称为HadoopMachine),使用相同的配置。

/ etc / default / dse修改如下:

HADOOP_ENABLED = 1

然后,在此HadoopMachine上,运行以下命令:

sudo service dse start

到目前为止一切顺利。

然后从安装目录:

bin/dse hadoop fs -mkdir /user/hadoop/wordcount

这失败了。提供了一系列错误消息,运行数百行,结尾为:

    at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1368)
    at com.datastax.bdp.loader.SystemClassLoader.tryLoadClassInBackground(SystemClassLoader.java:163)
    at com.datastax.bdp.loader.SystemClassLoader.loadClass(SystemClassLoader.java:117)
    at com.datastax.bdp.loader.SystemClassLoader.loadClass(SystemClassLoader.java:81)
    at com.datastax.bdp.loader.SystemClassLoader.loadClass(SystemClassLoader.java:75)
    at java.util.ResourceBundle$RBClassLoader.loadClass(ResourceBundle.java:503)
    at java.util.ResourceBundle$Control.newBundle(ResourceBundle.java:2640)
    at java.util.ResourceBundle.loadBundle(ResourceBundle.java:1501)
    at java.util.ResourceBundle.findBundle(ResourceBundle.java:1465)
    at java.util.ResourceBundle.findBundle(ResourceBundle.java:1419)
    at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1361)
    at java.util.ResourceBundle.getBundle(ResourceBundle.java:890)
    at sun.util.resources.LocaleData$1.run(LocaleData.java:164)
    at sun.util.resources.LocaleData$1.run(LocaleData.java:160)
FATAL ERROR in native method: processing of -javaagent failed
bin/dse: line 192: 12714 Aborted                 (core dumped) "$HADOOP_BIN/hadoop" "$HADOOP_CMD" $HADOOP_CREDENTIALS "${@:2}"

我不知道问题是什么,以及如何解决。

将不胜感激任何帮助。感谢。

1 个答案:

答案 0 :(得分:2)

经过多次努力,我设法找到了解决方案。我一直在猜测,这个问题会在一个不太明显的地方出现一个错误的步骤,至少对我而言,结果就是这样。

因此,为了其他可能面临同样问题的人的利益,问题是什么以及有效的方法如下。

DSE文档指定对于具有集成Hadoop的DSE,您必须拥有Oracle JRE 7.我或许愚蠢地认为它将意味着Oracle JRE 7或更高版本。所以我的机器上有JRE 8,从未意识到这就是问题所在。当我删除JRE 8并安装JRE 7和宾果游戏时,它确实有效。

我很惊讶。现在我意识到,由于DSE使用Hadoop 1.0.4(一个古老的版本),它只适用于JRE 7。 JRE 8必须在Hadoop 1.0.4之后,JRE 8中的某些内容必须与JRE 7不兼容,我猜。