长话短说。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 以上。这让我很疑惑。 希望能得到一些指导,感谢。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.