我正在尝试使用oozie执行sqoop任务。代码结构如下所示
我的本地文件系统上有一个job.properties文件,用于提交oozie作业。 Job.properties文件如下
namenode=hdfs://servername:8020
jobtracker=servername:8021
queuename=default
oozie.wf.application.path=${namenode}/user/username/oozie
命令,我用来提交工作的是
oozie job -oozie http://localhost:11000/oozie \PATH\job.properties -run
如属性应用程序路径(/ user / username / oozie)中所述,我在HDFS路径中有我的工作流程。通过HDFS文件夹中的工作流.xml,我也复制了sqljdbc4.jar。
提交工作后,我的oozie.log文件中出现此错误。
Caused by: java.net.ConnectionException: Call to
servername/10.248.92.1:8021 failed on connection exception:
我不确定是什么导致此异常。一件奇怪的事是该IP地址:10.248.92.1是用于相同的服务器名称。
最佳答案
我看到您正在运行Hortonworks。他们最近将jobtracker端口默认更改为50030。这给您两个选择。 1)将属性文件的端口更改为8021,其他任何依赖jobtracker端口的文件/设置,或2)将jobtracker端口更改回8021。如果您更喜欢选项2,请按照以下说明进行操作。
很难找到jobtracker端口,但是对于HDP 1.3.2,可以在/usr/lib/ambari-server/web/javascripts/apps.js
中找到它。寻找一个看起来像这样的块:
{
"name": "mapred.job.tracker",
"templateName": ["jobtracker_host"],
"foreignKey": null,
"value": "<templateName[0]>:50300",
"filename": "mapred-site.xml"
},
并将
50300
更改为8021
。不幸的是,此更改不足以使群集使用新端口。转到Ambari Web UI并停止MapReduce服务。转到其配置,可能会发生良性更改(如果需要,可以稍后将其更改)。重新启动MapReduce后,该良性更改以及对jobtracker端口的更改将保留下来,并且将在端口8021上运行。如果您正在运行依赖jobtracker端口的其他服务,请继续并停止并重新启动它们。不幸的是,每次升级集群时,您都必须这样做(除非Hortonworks更改其设置方式)。您可能只想硬着头皮,得到所有东西,以在端口50300上查找jobtracker。
关于hadoop - 使用oozie工作流的Sqoop Task,以连接拒绝异常结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19549614/