- (零)问题
- (一)可能的原因:目录权限
- (二)可能的原因:域名解析
之前在写:《从零开始学习大数据平台(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则文件目录可以随意访问。
(二)可能的原因:域名解析... ... dfs.permissions true
按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
上传成功!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)