最近装了hadoop,用于测试hdfs,先是折腾了配好了kerberos,然后又改回了simple模式。马上又要测它的文件同步,今天尝试用http://ip:9870/页面来上传下载文件,结果报错。折腾了很久才解决。
1 在哪里看文件目录,通过Utilities下面的browse the file
system,再点击目录名-》文件名,打开详情窗口点下载
![HDFS的文件上传与下载]()
![HDFS的文件上传与下载]()
2 点击下载之后,网页弹出的url变成了node:1006 端口忘记是什么了 ,大概就是IP变成了服务器名,要想从浏览器打开,需要配置主机的hosts文件,加上ip 服务器名
的配置,这个问题很好解决,再次点击下载,又报错:
User dr.who (auth:SIMPLE) is not authorized for protocol interface .....
网上搜索了一圈,是因为9870这个网页默认是用dr.who这个用户访问的hdfs,而我把hdfs设置为了simple认证模式,且认证用户是root和hdfs两个,显然dr.who没有权限
3 权限问题的解决
要解决权限问题有两个思路,第一,让网页访问用hdfs用户,第二,在hadoop-policy.xml中加入dr.who用户。选了第一个方案
首先,在hdfs-site.xml文件里加上
hadoop.http.staticuser.user
hdfs
2 点击下载之后,网页弹出的url变成了node:1006 端口忘记是什么了 ,大概就是IP变成了服务器名,要想从浏览器打开,需要配置主机的hosts文件,加上ip 服务器名
User dr.who (auth:SIMPLE) is not authorized for protocol interface .....
网上搜索了一圈,是因为9870这个网页默认是用dr.who这个用户访问的hdfs,而我把hdfs设置为了simple认证模式,且认证用户是root和hdfs两个,显然dr.who没有权限
3 权限问题的解决
要解决权限问题有两个思路,第一,让网页访问用hdfs用户,第二,在hadoop-policy.xml中加入dr.who用户。选了第一个方案
首先,在hdfs-site.xml文件里加上

