s3040608090
V2EX  ›  Hadoop

想请教一下从 oozie 调用 hadoop 遇到的问题

  •  
  •   s3040608090 · Jul 10, 2018 · 3120 views
    This topic created in 2874 days ago, the information mentioned may be changed or developed.

    长话短说。hadoop(2.7)和 oozie(5.0)都安装在一台服务器上(伪分布式)。尝试 oozie 的官方 example:example

    修改 map-reduce 的 job.properties 如下:

    nameNode=hdfs://localhost:9000
    jobTracker=localhost:8032
    queueName=default
    examplesRoot=examples
    
    oozie.wf.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/map-reduce
    outputDir=map-reduce
    

    按照文档中的提示输入命令"oozie job -oozie http://localhost:11000/oozie -config examples/apps/map-reduce/job.properties -run"时报错:

    Error: E0501 : E0501: Could not perform authorization operation, Failed on local exception: com.google.protobuf.InvalidProtocolBufferException: Message missing required fields: callId, status; Host Details : local host is: "Master/服务器 ip"; destination host is: "localhost":9000;

    已经确认 nameNode 端口无误,在服务器 shell 键入"hadoop fs -ls hdfs://localhost:9000"会返回结果。,可以确认 oozie 的端口无误,浏览器输入“ http://服务器 ip:11000 ”可以进入 oozie 管理界面。jobtracker ip 应该没错,我在 yarm-site.xml 里没有看见端口的设置项,但是在"netstat -tunlp"中看见有 8032 端口在占用,这应该是 resourcemanager 的默认端口。 关键点可能在 Message missing required fields: callId, status 这个提示上,放狗搜看到有人说是 hadoop 版本太高接口不一致什么的,但是 oozie5.0 已经要求安装的 hadoop 最低版本在 2.6 以上。这让我很疑惑。 希望能得到一些指导,感谢。

    1 replies    2018-07-10 18:37:04 +08:00
    blueskea
        1
    blueskea  
       Jul 10, 2018 via Android
    自带的 mr 感觉不好用,我直接用的 shell 类型的 action 替代了自带的 mr 方式。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   940 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 22:38 · PVG 06:38 · LAX 15:38 · JFK 18:38
    ♥ Do have faith in what you're doing.