我尝试使用亚马逊实例的公共IP而不是网络内IP来配置Hadoop,因为我的目标是创建一个混合群集,即Cloud + Local机器群集。虽然所有的ssh设置都非常好,但是当使用amazon公共IP时,Hadoop仍然无法连接(datanode无法找到namenode)。我在hbase的zookeeper配置中使用了亚马逊实例的公共IP,并且它正确连接到它。那么为什么HBase connect和Hadoop没有?
同样的问题也出现在卡夫卡身上。
答案 0 :(得分:0)
删除.ssh / known_hosts文件并尝试
答案 1 :(得分:0)
我找到了答案。
诀窍是不要在'/ etc / hosts'文件中有关于amazon EC2实例的任何条目,并且'〜/ .ssh / config'文件在亚马逊实例中只应包含以下设置:
Host ec2-x-x-x-x.compute-1.amazonaws.com
StrictHostKeyChecking no
IdentityFile /path to private key
此处ec2-x-x-x-x.compute-1.amazonaws.com
是亚马逊实例的公共IP。