分享

报Protocol message end-group tag did not match expected tag,求大神支招

rano1986 发表于 2015-6-29 14:32:19 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 10 89049
rano1986 发表于 2015-7-3 09:23:45
bob007 发表于 2015-6-29 16:42
可以多找找,不是空的,我这能看到
链接: http://pan.baidu.com/s/1c0DuYsS 密码:503d

谢谢你的帮助,我解决了问题,总结原因如下:
1、需要连接HDFS NN主机,如果连接其他DN的话,会报Connection refused
2、需使用8020端口,如果使用9000端口,会报Protocol message end-group tag did not match expected tag
3、在定义一个FileSystem变量的时候分布式和单机版的方法是不一样的,单机版使用的是FileSystem类的静态函数
FileSystem hdfs = FileSystem.get(conf)  
分布式下需要使用Path来获得
Path dstDir = new Path(hdfsPath);  
FileSystem hdfs = dstDir.getFileSystem(conf);   
否则会报
Wrong FS: hdfs://hdfs://10.108.66.81:8020/..., expected: file:///
4、需要定义执行HDFS的用户,否则会出现Permission denied
System.setProperty("HADOOP_USER_NAME", "hdfs");

回复

使用道具 举报

12
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条