我正在尝试将hdfs从1.2.1升级到2.6版本。但是,每当我运行start-dfs.sh-upgrade命令时,都会出现以下错误:
hduser@cluster1-nn:/usr/local/hadoop2/hadoop-2.6.0/etc\u bkp/hadoop$$hadoop\u new\u home/sbin/start-dfs.sh-升级
2017年5月15日12:45:58警告util.nativecodeloader:无法为您的平台加载本机hadoop库。。。在适用的情况下使用内置java类
在[nn]上启动namenodes
错误:请指定--hosts或--hostnames选项之一,而不是同时指定两者。
nn:启动datanode,登录到/var/hadoop/logs/hadoop-hduser-datanode-cluster1-nn.out dn1:启动datanode,登录到/var/hadoop/logs/hadoop-hduser-datanode-cluster1-dn1.out dn2:启动datanode,登录到/var/hadoop/logs/hadoop-hduser-datanode-cluster1-dn2.out
正在启动辅助名称节点[0.0.0.0]
错误:请指定--hosts或--hostnames选项之一,而不是同时指定两者。
请让我知道,如果你的任何Maven遇到这样的错误。
2条答案
按热度按时间jslywgbw1#
新安装的hadoop2.7.1在archlinux上也遇到了同样的问题。我不确定我的案子和你的案子是否一样,但我的经验会有所帮助。我只是把台词注解掉
HADOOP_SLAVES=/etc/hadoop/slaves
在/etc/profile.d/hadoop.sh
然后重新登录。访问hdfs和运行流媒体作业对我都有用。原因是特定于arch的脚本
/etc/profile.d/hadoop.sh
声明$HADOOP_SLAVES
环境变量。而且在start-dfs.sh
,hadoop-daemons.sh
被称为--hostnames
论据。这让人困惑libexec/hadoop-config.sh
.你可能想打字
echo $HADOOP_SLAVES
作为hadoop用户。如果有非空输出,请检查.bashrc
和/或其他shell启动脚本。希望有帮助:)u5i3ibmn2#
也许它缺少一些hadoop库,你能显示namenode日志的详细信息吗?