hdfs - ls:本地异常失败:com.google.protobuf.InvalidProtocolBufferException:

Tam*_*mpa 12 hadoop hdfs cloudera

我正在尝试使用以下内容在hdfs中列出我的目录:

ubuntu@ubuntu:~$ hadoop fs -ls hdfs://127.0.0.1:50075/ 
ls: Failed on local exception: com.google.protobuf.InvalidProtocolBufferException: 
Protocol    message end-group tag did not match expected tag.; 
Host Details : local host is: "ubuntu/127.0.0.1"; destination host is: "ubuntu":50075; 
Run Code Online (Sandbox Code Playgroud)

这是我的/ etc/hosts文件

127.0.0.1       ubuntu localhost
#127.0.1.1      ubuntu

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
Run Code Online (Sandbox Code Playgroud)

如何正确使用hdfs://列出我的目录?

我在ubuntu 12.04上使用couldera 4.3

Kau*_*ngh 23

HDFS未运行在50075.要检查您的hdfs端口,请在linux中使用以下命令

hdfs getconf -confKey fs.default.name
Run Code Online (Sandbox Code Playgroud)

你会得到类似的输出

hdfs://hmaster:54310
Run Code Online (Sandbox Code Playgroud)

并相应地更正您的URL


小智 7

在您的cloudera管理器上,检查名称节点上的配置项"NameNode服务RPC端口"或"dfs.namenode.servicerpc-address".从URL上添加相同的端口号.它应该工作正常.在此输入图像描述


Tar*_*riq 2

您的 NN 是否在端口上运行50075?如果您只想列出所有目录,实际上不必这样做。只需使用hadoop fs -ls /. 这将列出根目录下的所有目录。