尝试从本地计算机访问AWS上的HDFS文件时出错

时间:2017-04-10 14:43:07

标签: amazon-web-services hadoop apache-spark amazon-ec2 hdfs

我已在this tutorial之后成功在AWS EC2上安装了hadoop和spark。 我可以从AWS上的spark访问HDFS。

但是,当我尝试通过

从本地计算机访问HDFS文件时
writeData

我得到了

val lines = sc.textFile("hdfs://namenode_public_DNS:9000/datasets/wikipedia/wikipedia.dat")
lines.first()

我该如何解决这个问题?

提前致谢。

  1. 所有AWS实例都设置为允许所有流量。
  2. 我只有1个namenode和1个datanode

2 个答案:

答案 0 :(得分:0)

您可以从外部访问用于hdfs的端口。 尝试在本地计算机上运行此命令。

$telnet namenode_public_DNS 9000

检查天气,你可以访问你的hdfs端口。

答案 1 :(得分:0)

请检查您是否已为您的EC2实例正确配置Security Groups。默认情况下,EC2实例的安全组配置不允许入站流量。您可以通过应用http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#adding-security-group-rule中给出的过程并为端口9000添加入站流量来向安全组添加新规则(您不需要为出站做任何事情,因为安全组是有状态的)。