启动Hadoop时EC2上的权限被拒绝(公钥)

启动Hadoop时EC2上的权限被拒绝(公钥),hadoop,amazon-ec2,permission-denied,Hadoop,Amazon Ec2,Permission Denied,我的经理为我提供了一个Amazon实例和一个ppk。能够登录;试图安装hadoop;进行了必要的配置更改,例如,将主机和从机文件从localhost编辑为EC2实例名称,将所需属性添加到mapred-site.xml/hdfs-site.xml/core-site.xml文件,将namenode格式化为hdfs。 现在,当我运行start-dfs.sh脚本时,出现以下错误。 启动namenode,登录到/home/ubuntu/hadoop/libexec/。/logs/hadoop-ubunt

我的经理为我提供了一个Amazon实例和一个ppk。能够登录;试图安装hadoop;进行了必要的配置更改,例如,将主机和从机文件从localhost编辑为EC2实例名称,将所需属性添加到mapred-site.xml/hdfs-site.xml/core-site.xml文件,将namenode格式化为hdfs。 现在,当我运行start-dfs.sh脚本时,出现以下错误。 启动namenode,登录到/home/ubuntu/hadoop/libexec/。/logs/hadoop-ubuntu-namenode-domU-12-31-39-07-60-A9.out 无法确定主机“XXX.amazonaws.com(某些IP)”的真实性

是否确实要继续连接(是/否)?对 三十、 amazonaws.com:警告:将“XXX.amazonaws.com”(ECDSA)永久添加到已知主机列表中。 三十、 amazonaws.com:权限被拒绝(公钥)。 三十、 amazonaws.com:权限被拒绝(公钥)

到目前为止,主节点和从节点将是同一台机器。

XXX是实例名,有些IP是它的IP。出于安全原因屏蔽它们

我完全不知道如何使用EC2实例、SSH等。只需要在其中运行一个简单的MapReduce程序


请建议。

Hadoop使用SSH将信息从主服务器传输到从服务器。看起来您的节点正试图通过SSH相互通信,但尚未配置为这样做。为了通信,Hadoop主节点需要对从节点进行无密码SSH访问。Passwordless非常有用,这样每次尝试运行作业时,就不必为每个从属节点再次输入密码。那将是相当乏味的。看起来您必须在节点之间设置此选项,然后才能继续


我建议您检查并找到名为“配置SSH”的部分。它列出了如何实现这一点。

不过我还有一个问题。。。我的datanode未启动,日志显示错误org.apache.hadoop.hdfs.server.datanode.datanode:java.net.BindException:绑定到/0.0.0:50010的问题:地址已在使用我尝试删除tmp目录中的数据/名称文件夹,重新格式化hdfs,运行start-dfs.sh脚本。虽然NN启动,但SNN也启动了,但几乎立即关闭,并显示以下消息:INFO org.apache.hadoop.http.HttpServer:Port由webServer.getConnectors()[0]返回。getLocalPort()before open()为-1。在50090.netstat-nl | grep50010上打开侦听器;它显示有一些进程正在运行,但找不到pid。jps没有显示任何进程,因此尝试了“sudoJPS”,这表明有DN和SNN进程正在运行;所以用sudo kill-9杀了那些人。开始我的hadoop,现在一切都正常了。只是说,听起来很像Austin Ouyang的教程。