Hadoop的OSX上的“无法从SCDynamicStore加载境界信息”Hadoop的OSX上的“

2019-05-13 09:16发布

我得到在Hadoop启动这个错误在OSX 10.7:

无法加载从SCDynamicStore领域信息放:org.apache.hadoop.hdfs.server.namenode.SafeModeException:无法创建目录/用户/特拉维斯/输入/ conf目录。 名称节点是在安全模式。

它似乎并没有被引起使用Hadoop的功能的任何问题。

Answer 1:

马修Buckett在HADOOP-7489的建议为我工作。 以下添加到您的hadoop-env.sh文件:

export HADOOP_OPTS="-Djava.security.krb5.realm=OX.AC.UK -Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk"


Answer 2:

作为更新到这一点(解决大卫·威廉姆斯 “关于Java 1.7点),我经历了,只有设置.realm.kdc性能不足以阻止有问题的邮件。

但是,通过检查源文件被忽略,我能够确定设置消息.krb5.conf属性/dev/null是足够的消息打压。 显然,如果你确实有一个KRB5配置,最好指定它的实际路径。

总之,我hadoop-env.sh片断如下:

HADOOP_OPTS="${HADOOP_OPTS} -Djava.security.krb5.realm= -Djava.security.krb5.kdc="
HADOOP_OPTS="${HADOOP_OPTS} -Djava.security.krb5.conf=/dev/null"


Answer 3:

我有在OS X 10.8.2同样的问题,Java版本1.7.0_21。 不幸的是,上述方案没有与此版本解决这个问题:(

编辑:我找到了解决这个的基础上,提示我看到了这里 。 在hadoop-env.sh文件,更改JAVA_HOME设置:

export JAVA_HOME=`/usr/libexec/java_home -v 1.6`

(注坟墓的报价在这里。)



Answer 4:

仅供参考,您可以通过只指定以下进一步简化这一点:

export HADOOP_OPTS="-Djava.security.krb5.realm= -Djava.security.krb5.kdc="

这在HADOOP-7489上提到的。



Answer 5:

我对MacOS和尝试不同的组合,这是对我工作普遍(包括Hadoop的1.2和2.2)后,类似的问题:

$HADOOP_HOME/conf/hadoop-env.sh设置下面几行:

# Set Hadoop-specific environment variables here.
export HADOOP_OPTS="-Djava.security.krb5.realm= -Djava.security.krb5.kdc="

# The java implementation to use.
export JAVA_HOME=`/usr/libexec/java_home -v 1.6`

希望这将有助于



Answer 6:

还可以添加

YARN_OPTS="$YARN_OPTS -Djava.security.krb5.realm=OX.AC.UK -Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk"

上cdh4.1.3执行start-yarn.sh(或start-all.sh)之前



Answer 7:

从Eclipse的调试MapReduce的,当我有这个错误,但它是一个红鲱鱼。 真正的问题是,我应该加入调试参数到JAVA_OPTS已远程调试

-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=1044

然后创建在指出端口1044的调试配置一个新的“远程Java应用程序”的个人资料。

这篇文章有一些关于事物的调试方面更深入的信息。 它在谈论Solr的,但工作起来用Hadoop一样。 如果你有麻烦,下面贴留言,我会尽力帮助。



文章来源: Hadoop on OSX “Unable to load realm info from SCDynamicStore”