Hadoop通过WEB上传文件到HDFS失败

14 篇文章 1 订阅
3 篇文章 0 订阅

(零)问题

之前在写:🔗《从零开始学习大数据平台(Episode 1)》时,搭建了测试的大数据平台。
那时候用WEB上传文件到HDFS是正常的。
最近又用了一下,发现WEB不能上传文件了,浏览器中报错:

Couldn’t upload the file xxxx.yyy

大概如下图:
在这里插入图片描述

(一)可能的原因:目录权限

如上图,HDFS中创建目录的时候,仅用户自己有写权限。

通过命令创建的文件夹,属于Linux当前用户的,比如例子里是ac。
通过WEB创建的文件夹,属于dr.who。

所以修改了一个目录的权限,让本组和其他人有写权限。

$ac@vm00 ~> hdfs dfs -chmod +w /thePathName

再尝试上传文件依然失败。
看来不是这个原因💔……

🚦 文件/目录权限是否开启,需要配置:

$ vim hdfs-site.xml

如果下面配置是false则文件目录可以随意访问。

<configuration>
 ...
	<property>  <!--测试环境可以把dfs文件权限关闭(便于不同用户访问)-->
		<name>dfs.permissions</name>
		<value>true</value>
	</property>
 ...
 </configuration>

(二)可能的原因:域名解析

按F12打开浏览器的调试窗口,看到这么一句:
在这里插入图片描述
这才想起,之前成功都是用服务器自己浏览器在访问,hosts文件中有各个虚拟机的主机名和IP对应。
这次用的是别的机器,用IP地址直接访问的HDSF的WEB界面。

http://192.168.168.121:9870/explorer.html

没想到它内部还是用的配置中的主机名……
也就是说,如果想用WEB上传文件,那么浏览器所在的计算机,必须知道HDFS各个节点的主机名。

遂修改hosts加入:

192.168.168.121 vm00
192.168.168.122 vm01
192.168.168.123 vm02
192.168.168.124 vm10
192.168.168.125 vm11
...
#等等
...

然后执行命令让它立即生效(否者重启后才生效):

C:\> ipconfig /flushdns

上传成功! 🆗 👌 😄 💟

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值