【问题标题】:Protobuf RPC not available on Hadoop 2.2.0 single node server?Protobuf RPC 在 Hadoop 2.2.0 单节点服务器上不可用?
【发布时间】:2013-11-23 14:40:37
【问题描述】:

我正在尝试在按照本教程安装的本地单节点集群上运行 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?

【问题讨论】:

    标签: java hadoop mapreduce protocol-buffers rpc


    【解决方案1】:

    好的,找到原因了,我连接错了yarn resourcemanager的端口。正确的配置是: yarn.resourcemanager.address=localhost:8032

    【讨论】:

    • 在 hadoop 2.7.1 上,对我来说是 8050
    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-22
      • 1970-01-01
      • 2014-08-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多