首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Oozie作业(Cloudera )在抛出错误时执行外壳脚本-- error=2,没有这样的文件或目录

Oozie作业是Cloudera提供的一种用于调度和执行大数据工作流的工具。当Oozie作业在执行过程中抛出错误时,可以通过执行外壳脚本来处理错误。在这种情况下,错误代码为2,表示没有找到指定的文件或目录。

执行外壳脚本是一种常见的处理错误的方式,它可以在错误发生时执行一些特定的操作,比如记录错误日志、发送通知、重试作业等。外壳脚本可以是任何可执行的脚本文件,如Shell脚本、Python脚本等。

为了解决Oozie作业执行错误时执行外壳脚本的问题,可以按照以下步骤进行操作:

  1. 创建外壳脚本:根据具体需求,编写一个外壳脚本,用于处理Oozie作业执行错误时的操作。脚本可以包含错误处理逻辑、日志记录、通知等功能。
  2. 配置Oozie作业:在Oozie作业的配置文件中,指定外壳脚本的路径和参数。可以使用Oozie提供的配置文件语法来定义外壳脚本的执行方式和参数传递方式。
  3. 错误处理逻辑:在外壳脚本中,根据错误代码进行相应的处理逻辑。对于错误代码为2的情况,可以进行文件或目录的检查,如果确实不存在,则可以采取相应的处理措施,如记录错误日志、发送通知等。
  4. 腾讯云相关产品推荐:腾讯云提供了一系列与大数据处理和云计算相关的产品,可以用于支持Oozie作业的执行和错误处理。以下是一些推荐的腾讯云产品:
  • 腾讯云容器服务(Tencent Kubernetes Engine,TKE):用于部署和管理容器化的应用程序,可以提供高可用性和弹性伸缩的能力,适用于大规模的数据处理任务。
  • 腾讯云对象存储(Tencent Cloud Object Storage,COS):提供了高可靠性、低成本的对象存储服务,适用于存储和管理大量的数据文件。
  • 腾讯云云服务器(Tencent Cloud Virtual Machine,CVM):提供了可扩展的虚拟服务器实例,适用于运行和管理各种类型的应用程序和服务。
  • 腾讯云云数据库(Tencent Cloud Database,TDB):提供了多种类型的数据库服务,包括关系型数据库、NoSQL数据库等,适用于存储和管理各种类型的数据。

更多腾讯云产品信息和介绍,请参考腾讯云官方网站:腾讯云

通过以上步骤和腾讯云相关产品的支持,可以有效地处理Oozie作业在抛出错误时执行外壳脚本的问题,并提供全面的解决方案。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

CDH——Cloudera’s Distribution Including Apache Hadoop

Hadoop 1.x 升级到 Hadoop 2.x 过程中,考虑到向下兼容问题, NameNode 进程没有嵌入 ZKFC 中代码,而另外开辟一个进程 ZKFC 。...) vi /etc/hosts # 2、SSH免密钥登录 ## 确保没有这个目录 cd /root/.ssh ## 利用下面命令自动创建.ssh目录, 进入到这个目录下输入下面命令创建免密钥文件...=7182 (无需记忆,这个是cm和web页面通信端口) # 3、创建用户cloudera-scm # (所有节点都要添加---没有目录,没有解释器,不能够登陆) useradd --system...运行Oozie脚本 hdfs上传脚本文件 Oozie cli 运行脚本 ? 点击WebUI 页面, 查看脚本任务执行详情 ? 查看执行节点以及执行详细信息 ?...注意:如果出现了错误信息, 也是通过这样方式进行追!!! 使用Oozie 图形化编辑器执行(Workflow 工作流) ?

1.4K30

如何使用Oozie API接口向Kerberos环境CDH集群提交Spark2作业

3.将定义好workflow.xml文件上传至HDFS/user/fayson/oozie/spark2oozie目录下 [5mra6d5vbq.jpeg] hadoop fs -mkdir -p...6.总结 ---- 通过Oozie API提交作业,需要先定义好workflow.xml文件 参数传递通过代码里面调用oozieClient.createConfiguration()创建一个Properties...指定HDFS上运行jarworkflow路径时需要带上HDFS路径,否则默认会找到本地目录 向Kerberos集群提交作业需要在程序中加载JAAS配置 Oozie-client提供了Kerberos...认证AuthOozieClient API接口 由于Oozie默认不支持Spark2作业提交,因此需要先在Oozie共享库中安装Spark2支持 定义Spark2workflow.xml时,...需要增加配oozie.action.sharelib.for.spark配置为spark2,否则作业无法正常执行

3.3K40
  • 如何使用Oozie API接口向非Kerberos环境CDH集群提交Shell工作流

    4.将定义好workflow.xml文件上传至HDFS /user/faysontest/oozie/shellaction目录下 [root@ip-172-31-6-148 opt]# sudo...* package: com.cloudera.nokerberos * describe: 使用Oozie-clientAPI接口向非Kerberos集群提交Shell Action作业 *...] 4.Shell脚本执行结果 [ni1dlr1ofl.jpeg] 可以看到作业已运行成功,到此已完成了通过OozieAPI接口创建workflow并运行示例演示。...6.总结 ---- 通过Oozie API提交作业,需要先定义好workflow.xml文件 参数传递通过代码里面调用oozieClient.createConfiguration()创建一个Properties...指定HDFS上运行jarworkflow路径时需要带上HDFS路径,否则默认会找到本地目录 GitHub地址: https://github.com/fayson/cdhproject/blob

    1K70

    如何使用Oozie API接口向Kerberos环境CDH集群提交Shell作业

    4.将定义好workflow.xml文件上传至HDFS /user/faysontest/oozie/shellaction目录下 [root@ip-172-31-16-68 ~]# klist [...Web界面查看 [h1qjp5ikbq.jpeg] 点击执行成功Map查看作业是在那个节点运行 [1m83ojy6aa.jpeg] 4.登录ip-172-31-21-83节点查看Shell脚本执行结果...6.总结 ---- 通过Oozie API提交作业,需要先定义好workflow.xml文件 参数传递通过代码里面调用oozieClient.createConfiguration()创建一个Properties...指定Shell脚本时需要注意,shell脚本必须放在workflow.xml文件同级lib目录下,并且代码中不能指定完整HDFS路径,只需要指定相对路径即可properties.put("exec...环境CDH集群提交Spark作业》 《如何使用Oozie API接口向Kerberos环境CDH集群提交Spark2作业》 《如何使用Oozie API接口向Kerberos集群提交Java程序》

    1.7K60

    如何使用Oozie API接口向非Kerberos环境CDH集群提交Spark作业

    作业方式有多种,前面Fayson介绍了Livy相关文章主要描述如何在集群外节点通过RESTful API接口向CDH集群提交Spark作业,本篇文章我们借助于oozie-clientAPI接口向非...2.定义一个Spark Actionworkflow.xml文件,内容如下: <workflow-app name="My Workflow" xmlns="uri:<em>oozie</em>:workflow:0.5...3.将定义好<em>的</em>workflow.xml<em>文件</em>上传至HDFS<em>的</em> /user/faysontest/<em>oozie</em>/testoozie<em>目录</em>下 [root@ip-172-31-6-148 ~]# sudo -u faysontest...6.总结 ---- 通过<em>Oozie</em> API提交<em>作业</em>,需要先定义好workflow.xml<em>文件</em> 参数传递通过<em>在</em>代码里面调用oozieClient.createConfiguration()创建一个Properties...<em>在</em>指定HDFS上运行<em>的</em>jar<em>或</em>workflow<em>的</em>路径时需要带上HDFS<em>的</em>路径,否则默认会找到本地<em>的</em><em>目录</em> GitHub地址: https://github.com/fayson/cdhproject/blob

    1.4K70

    如何使用Oozie API接口向Kerberos环境CDH集群提交Spark作业

    CDH集群提交Spark作业》,本篇文章主要介绍使用OozieAPI接口向Kerberos集群提交Spark作业。...2.定义一个Spark Actionworkflow.xml文件,内容如下: <workflow-app name="My Workflow" xmlns="uri:<em>oozie</em>:workflow:0.5...3.将定义好<em>的</em>workflow.xml<em>文件</em>上传至HDFS<em>的</em> /user/fayson/<em>oozie</em>/testoozie<em>目录</em>下 [b73rpckzqx.jpeg] hadoop fs -mkdir -p /...6.总结 ---- 通过<em>Oozie</em> API提交<em>作业</em>,需要先定义好workflow.xml<em>文件</em> 参数传递通过<em>在</em>代码里面调用oozieClient.createConfiguration()创建一个Properties...<em>在</em>指定HDFS上运行<em>的</em>jar<em>或</em>workflow<em>的</em>路径时需要带上HDFS<em>的</em>路径,否则默认会找到本地<em>的</em><em>目录</em> 向Kerberos集群提交<em>作业</em>需要在程序中加载JAAS配置 <em>Oozie</em>-client提供了Kerberos

    1.9K70

    如何使用Oozie API接口向非Kerberos环境CDH集群提交Java作业

    2.定义一个Java Actionworkflow.xml文件,内容如下: <workflow-app name="MapReduceWorkflow" xmlns="uri:<em>oozie</em>:workflow...3.将定义好<em>的</em>workflow.xml<em>文件</em>上传至HDFS<em>的</em> /user/faysontest/<em>oozie</em>/javaaction<em>目录</em>下 [root@ip-172-31-6-148 opt]# sudo -...* package: com.<em>cloudera</em>.nokerberos * describe: 使用<em>Oozie</em>-client<em>的</em>API接口向非Kerberos集群提交MapReduce<em>作业</em> * creat_user...6.总结 ---- 通过<em>Oozie</em> API提交<em>作业</em>,需要先定义好workflow.xml<em>文件</em> 参数传递通过<em>在</em>代码里面调用oozieClient.createConfiguration()创建一个Properties...<em>在</em>指定HDFS上运行<em>的</em>jar<em>或</em>workflow<em>的</em>路径时需要带上HDFS<em>的</em>路径,否则默认会找到本地<em>的</em><em>目录</em> GitHub地址: https://github.com/fayson/cdhproject/blob

    1.1K70

    OushuDB入门(六)——任务调度篇

    为什么使用Oozie 使用Oozie主要基于以下两点原因: Hadoop中执行任务有时候需要把多个MapReduce作业连接到一起执行,或者需要多个作业并行处理。...基于这样背景,Oozie提出了Coordinator概念,它能够将每个工作流作业作为一个动作来运行,相当于工作流定义中一个执行节点,这样就能够将多个工作流作业组成一个称为Coordinator Job...HDP2.5.3安装中没有文件,需要自行下载,然后拷贝到相应目录。...Oozie工作流节点分为控制节点和动作节点两类。控制节点控制着工作流开始、结束和作业执行路径。动作节点触发计算处理任务执行。...wf:lastErrorNode函数返回最后出错节点名称,如果没有错误则返回空字符串。 2. 部署工作流 这里所说部署就是把相关文件上传到HDFS对应目录中。

    72010

    如何使用Oozie API接口向Kerberos集群提交Java程序

    作业方式有多种,前面Fayson介绍了《如何跨平台本地开发环境提交MapReduce作业到CDH集群》和《如何使用Oozie API接口向非Kerberos环境CDH集群提交Java作业》,本篇文章主要介绍如何在...2.定义一个Java Actionworkflow.xml文件,内容如下: <workflow-app name="MapReduceWorkflow" xmlns="uri:<em>oozie</em>:workflow...3.将定义好<em>的</em>workflow.xml<em>文件</em>上传至HDFS<em>的</em> /user/faysontest/<em>oozie</em>/javaaction<em>目录</em>下 [yn8uuyvho4.jpeg] hadoop fs -mkdir...6.总结 ---- 通过<em>Oozie</em> API提交<em>作业</em>,需要先定义好workflow.xml<em>文件</em> 参数传递通过<em>在</em>代码里面调用oozieClient.createConfiguration()创建一个Properties...<em>在</em>指定HDFS上运行<em>的</em>jar<em>或</em>workflow<em>的</em>路径时需要带上HDFS<em>的</em>路径,否则默认会找到本地<em>的</em><em>目录</em> 向Kerberos集群提交<em>作业</em>需要在程序中加载JAAS配置 <em>Oozie</em>-client提供了Kerberos

    2.6K70

    Kettle构建Hadoop ETL实践(七):定期自动执行ETL作业

    系统任务调度:系统需要周期性执行工作,比如写缓存数据到硬盘、日志清理等。/etc目录下有一个crontab文件,这个就是系统任务调度配置文件。...allow/deny文件由每行一个用户名构成。 2. crontab命令 通过crontab 命令,我们可以固定间隔时间点执行指定系统指令shell脚本。...,这种情况一般是由于crontab文件没有配置环境变量引起。...我们ETL工作流中使用了Sqoop和Hive两种。ok和error是动作节点预定义两个XML元素,它们通常被用来指定动作节点执行成功失败时下一步跳转节点。这些元素Oozie中被称为转向元素。...控制节点控制着工作流开始、结束和作业执行路径,动作节点触发计算处理任务执行Oozie协调器作业能够满足谓词条件时触发工作流作业执行

    6K53

    基于Hadoop生态圈数据仓库实践 —— ETL(三)

    2)为什么需要Oozie Hadoop中执行任务有时候需要把多个Map/Reduce作业连接到一起执行,或者需要多个作业并行处理。...基于这样背景,Oozie提出了Coordinator概念,它能够将每个工作流作业作为一个动作来运行,相当于工作流定义中一个执行节点,这样就能够将多个工作流作业组成一个称为Coordinator Job...Oozie协调程序支持创建这样数据应用管道。 (4)CDH 5.7.0中Oozie 2....> /tmp/sqoop_metastore.log 2>&1 & (4)连接metastore重建sqoop job 前面建立sqoop job,其元数据并没有存储share...建立协调作业定期自动执行工作流 (1)建立协调作业属性文件 建立内容如下job-coord.properties文件: nameNode=hdfs://cdh2:8020 jobTracker

    99720

    如何使用Hue创建Spark2Oozie工作流(补充)

    1.文档编写目的 ---- 目前Oozie SparkAction 仅支持Spark1.6, 而并不支持Spark2, 这是 CDH Spark2已知局限性(https://www.cloudera.com...Oozie ShellAction 来调用 Spark2作业。.../SPARK2/lib/spark2/examples/jars/spark-examples_2.11-2.1.0.cloudera1.jar [d8hm5ip1h0.jpeg] 命令行测试脚本是否正常运行...通过使用Shell脚本方式向集群提交Spark2作业,注意在shell脚本中指定spark-examples_2.11-2.1.0.cloudera1.jar包,要确保集群所有节点相应目录存在...目录访问权限问题也会导致执行失败。 醉酒鞭名马,少年多浮夸! 岭南浣溪沙,呕吐酒肆下!挚友不肯放,数据玩花! 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

    3K60

    0621-6.2.0-如何卸载CDH6.2

    除非你是使用Cloudera官方提供一键安装脚本安装CDH,否则并没有现成一键卸载脚本供使用。...我们卸载CDH时候一般会先从Cloudera Manager里停止集群,删除集群,以及移除所有相关Parcel;然后各台机器移除Cloudera Manager和Agent相关rpm以及安装依赖包...可以通过这份JSON文件备份恢复Cloudera Manager整个部署。...注意:如果在进行API调用操作之前未停止集群,那么API调用将在运行作业之前停止所有集群服务,任何运行作业和数据都会丢失。 2.登录到Cloudera Manager所在服务器执行以下命令。...9.3 移除Cloudera Manager Lock文件 1.在所有节点执行删除命令,以下采用批量脚本执行

    2.8K30

    如何在Oozie中创建有依赖WorkFlow

    和CWorkFlow依赖AWorkFlow执行结果),这时不可能将AWorkFLow作为BWorkFlow和CWorkFlow中一个处理模块来,这样会重复执行AWorkFlow,可能会导致输入BWorkFlow...shell类型Oozie工作流,这里需要注意是Kerberos环境下,我们需要将keytab文件也上传至对应WorkFlowWorkSpace/lib目录下,如下图所示: ?...2.通过Yarn查看作业执行情况,这里作业已经执行成功了,我们通过时间来分析 ? 3.通过GeneratorWorkflow工作流作业执行情况可以看到 ?...2018-06-10 23:10:00看到GeneratorWorkflow向集群提交了作业,与我们定义启动时间一致,到2018-06-10 23:10:14可以看到开始执行生成数据MR作业,并成功执行...4.done_flag即为数据目录生成文件标识,若未指定则默认为_SUCCESS文件,若指定为空,则表示文件夹本身。

    6.5K90

    进击大数据系列(十一)Hadoop 任务调度框架 Oozie

    适用场景包括: 需要按顺序进行一系列任务; 需要并行处理任务; 需要定时、周期触发任务; 可视化作业流运行过程; 运行结果异常通报。...Oozie 是一个可伸缩,可靠和可拓展系统 为什么选择Oozie 没有工作流调度系统之前,公司里面的任务都是通过 crontab 来定义,时间长了后会发现很多问题: 1.大量crontab任务需要管理...2.任务没有按时执行,各种原因失败,需要重试 3.多服务器环境下,crontab分散很多集群上,光是查看log就很花时间 Oozie和Azkaban对比 两者功能方面大致相同,只是Oozie底层提交...,目录下,有一个hadooplibs目录,这个目录下有两个文件: hadooplib-2.5.0-cdh5.3.6.oozie-4.0.0-cdh5.3.6 hadooplib-2.5.0-mr1-...接着,创建一个libext文件夹,将上面所说hadoop2类库以及ext压缩包拷贝到这个目录下。

    53820

    HAWQ取代传统数仓实践(五)——自动调度工作流(Oozie、Falcon)

    为什么使用Oozie         使用Oozie主要基于以下两点原因: Hadoop中执行任务有时候需要把多个MapReduce作业连接到一起执行,或者需要多个作业并行处理。...基于这样背景,Oozie提出了Coordinator概念,它能够将每个工作流作业作为一个动作来运行,相当于工作流定义中一个执行节点,这样就能够将多个工作流作业组成一个称为Coordinator Job...安装中没有文件,需要自行下载,然后拷贝到相关目录。...Oozie工作流节点分为控制节点和动作节点两类。控制节点控制着工作流开始、结束和作业执行路径。动作节点触发计算处理任务执行。...wf:lastErrorNode函数返回最后出错节点名称,如果没有错误则返回空字符串。 2. 部署工作流         这里所说部署就是把相关文件上传到HDFS对应目录中。

    2K60

    0590-6.1.0-C6升级过程中Oozie共享库问题分析

    作者:余枫 1 问题现象 升级CDH6.1至CDH6.2过程中,当升级过程执行到安装Oozie共享库时,成功创建Oozie ShareLib根目录之后上载Oozei共享库过程中报错了,报错信息如下...2 问题分析 异常日志信息显示” org.cloudera.log4j.redactor.RedactorAppender”类找不到,通过安装Oozie共享库脚本“/opt/cloudera/cm-agent...由于上述异常抛出找不到类,那可能是由于缺少jar包导致,通过对比${OOZIE_HOME}下lib和libtools目录*log*.jar相关jar包时,发现 ${OOZIE_HOME}/libtools...${OOZIE_HOME}/lib,同样是存放jar包目录下查看包含logjar包 ?...3 问题解决 经过上述问题分析后,${OOZIE_HOME}/libtools创建logredactor-2.0.7.jar包软连 cd /opt/cloudera/parcels/CDH/lib/

    2K30

    如何在Kerberos环境下修改启用HACDH集群HOSTNAME

    2.通过CMAPI接口备份Cloudera Manager配置 可以通过浏览器输入CM配置访问地址,将内容备份或者终端使用curl将数据抓取保存至文件。..." 6.为了确保修改失败后能够回滚,这里建议将MySQLPostgreSQL进行备份 4 修改集群HOSTNAME 1.执行如下命令修改集群HOSTNAME,以cdh01.fayson.com为例...3.将修改后hosts文件同步至集群所有节点/etc目录下 [root@cdh1 ~]# cd /data/disk1/shell/ [root@cdh1 shell]# sh bk_cp.sh ip.list...5 修改krb5.conf配置文件 这里Fayson使用是Active Directory提供Kerberos服务,没有修改该服务hostname,如果你KDC服务是修改了HOSTNAME则需要根据如下步骤进行修改...8.登录任意ZK服务所在节点,执行zookeeper-client访问ZK服务,命令行执行如下命令 [zk: localhost:2181(CONNECTED) 2] addauth digest hdfs-fcs

    63210
    领券