Protobuf RPC在Hadoop 2.2.0单节点服务器上不可用?

时间:2013-11-23 14:40:38

标签: java hadoop mapreduce protocol-buffers rpc

我正在尝试按照本教程在我安装的本地单节点集群上运行hadoop 2.2.0 mapreduce作业: http://codesfusion.blogspot.co.at/2013/10/setup-hadoop-2x-220-on-ubuntu.html?m=1

虽然在服务器端引发了以下异常:

org.apache.hadoop.ipc.RpcNoSuchProtocolException: Unknown protocol: org.apache.hadoop.yarn.api.ApplicationClientProtocolPB
at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.getProtocolImpl(ProtobufRpcEngine.java:527)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:566)
at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:928)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2048)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2044)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1491)
at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2042)

有没有办法让我将Protobuf RPC配置为在服务器端可用?我需要hadoop本地库吗?或者我可以在客户端以某种方式切换到Writables / Avro RPC吗?

2 个答案:

答案 0 :(得分:5)

好的,找到原因,我连接到纱线资源管理器的错误端口。正确的配置是: yarn.resourcemanager.address =本地主机:8032

答案 1 :(得分:0)

就我而言,当Application Master和YARN容器之间没有足够的内存时,我在日志中遇到了同样的错误。减少了yarn.app.mapreduce.am.resource.mb属性,它适用于我的单节点安装。