1.异常信息例如以下:

Caused by: com.google.protobuf.ServiceException: java.net.ConnectException: Call From slave4/10.95.3.65 to 0.0.0.0:10020 failed on connection exception: java.net.ConnectException: 拒绝连接; For more details see:  http://wiki.apache.org/hadoop/ConnectionRefused

后来通过调试和跟踪hadoop源码,发现oozie在提交任务后确实会去连接jobhistory,

开到debug模式后,在org.apache.hadoop.mapred.ClientCache,这个类的:

  protected MRClientProtocol instantiateHistoryProxy()

      throws IOException {

    final String serviceAddr = conf.get(JHAdminConfig.MR_HISTORY_ADDRESS);

    if (StringUtils.isEmpty(serviceAddr)) {

      return null;

    }

    LOG.debug("Connecting to HistoryServer at: " + serviceAddr);

    final YarnRPC rpc = YarnRPC.create(conf);

    LOG.debug("Connected to HistoryServer at: " + serviceAddr);

    UserGroupInformation currentUser = UserGroupInformation.getCurrentUser();

    return currentUser.doAs(new PrivilegedAction<MRClientProtocol>() {

      @Override

      public MRClientProtocol run() {

        return (MRClientProtocol) rpc.getProxy(HSClientProtocol.class,

            NetUtils.createSocketAddr(serviceAddr), conf);

      }

    });

  }

通过上面的代码能够知道确实连接了HistoryServer,因此我通过命令

mr-jobhistory-daemon.sh start historyserver 把这个服务启动,这样在NN上会启动JobHistoryServer进程,这个进程的监听port就是10020,本以为这样这个问题就能攻克了,没想到在oozie的log日志里还是报上面的错,唯一可能的原因是oozie没有读取到 jobhistory的配置, 因此我把这个配置:

        <property>

                <name>mapreduce.jobhistory.address</name>

                <value>master:10020</value>

        </property>

又在oozie/conf/hadoop-conf/core-site.xml文件里又加入了一遍,上述错误就消失了,job也能正常跑起来了。

2. oozie安装好了,提交任务的时候总是报Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: Data truncation: Data too long for column 'proto_action_conf' at row 1 {prepstmnt 184665592 INSERT INTO WF_JOBS (id, app_name, app_path, conf, group_name, parent_id, run,
user_name, bean_type, auth_token, created_time, end_time, external_id, last_modified_time, log_token, proto_action_conf, sla_xml, start_time, status, wf_instance) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) [params=?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?]} [code=1406, state=22001]

经过搜索,wf_jobs中的proto_action_conf这个字段存储的是工作流中workflow.xml的内容,默认oozie创建元数据表的时候此字段类型为text(mysql),此种类型为最大长度为

65536字符的text列,所以有时无法容纳workflow.xml的内容,须要将其改为LONGTEXT类型,改后就好了。


cdh4.1.2 hadoop和oozie集成问题的更多相关文章

  1. Hadoop生态圈-Oozie实战之调度shell脚本

    Hadoop生态圈-Oozie实战之调度shell脚本 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客展示案例:使用Oozie调度Shell脚本. 1>.解压官方案例 ...

  2. Hadoop生态圈-Oozie实战之逻辑调度执行多个Job

    Hadoop生态圈-Oozie实战之逻辑调度执行多个Job 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 1>.启动hadoop集群 [root@yinzhengjie ha ...

  3. Hadoop生态圈-Oozie部署实战

    Hadoop生态圈-Oozie部署实战 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Oozie简介 1>.什么是Oozie Oozie英文翻译为:驯象人.一个基于工作流 ...

  4. 【Hadoop离线基础总结】Hue与oozie集成

    目录 1.停止oozie与hue的进程 2.修改oozie的配置文件 3.修改hue的配置文件 4.启动hue与oozie的进程 5.页面访问hue 1.停止oozie与hue的进程 bin/oozi ...

  5. 安装CDH4 (Cloudera Distribution Hadoop)步骤

    安装流程 机器和系统 3台服务器,安装centos 6.4 64bit系统,内存8G,磁盘60G,cpu单核 已配置好静态ip,并配置好/etc/hosts 下载cdh4版本 https://www. ...

  6. 高可用Hadoop平台-集成Hive HAProxy

    1.概述 这篇博客是接着<高可用Hadoop平台>系列讲,本篇博客是为后面用 Hive 来做数据统计做准备的,介绍如何在 Hadoop HA 平台下集成高可用的 Hive 工具,下面我打算 ...

  7. MapReduce 规划 系列的12 使用Hadoop Streaming技术集成newLISP文字

    本文example6环境与前Hadoop 1.x异,于Hadoop 2.x环境测试. 功能与前面相同的日志处理程序. 第一newLISP文字,游玩mapper任务.于stdin读取文本数据,将did由 ...

  8. 【原】centos6.5下hadoop cdh4.6 安装

    1.架构准备:      namenode 10.0.0.2      secondnamenode 10.0.0.3      datanode1 10.0.0.4      datanode2 1 ...

  9. 高可用Hadoop平台-Oozie工作流之Hadoop调度

    1.概述 在<高可用Hadoop平台-Oozie工作流>一篇中,给大家分享了如何去单一的集成Oozie这样一个插件.今天为大家介绍如何去使用Oozie创建相关工作流运行与Hadoop上,已 ...

随机推荐

  1. MySQL TEXT数据类型的最大长度

    TINYTEXT 256 bytes   TEXT 65,535 bytes ~64kb MEDIUMTEXT  16,777,215 bytes ~16MB LONGTEXT 4,294,967,2 ...

  2. 匹配不含有某个信息的sql语句写法

    SELECT id,order_id,flight_info FROM order_flights WHERE mark=0 AND flight_info REGEXP '[^() DAY)]' O ...

  3. Oracle 优化——位图、函数等索引介绍

    一.位图索引 我将使用一个例子,来描述位图索引的存储,并分析它的优点. Table :Loans 放贷信息 ID userId 行业投向 币种 证件类型 还本付息方式 状态 1 1 农业 人民币 身份 ...

  4. Swift—Core Foundation框架-备

    Core Foundation框架是苹果公司提供一套概念来源于Foundation框架,编程接口面向C语言风格的API.虽然在Swift中调用这种C语言风格的API比较麻烦,但是在OS X和iOS开发 ...

  5. Swift—类的继承-备

    Swift中的继承只能发生在类上,不能发生在枚举和结构体上.一个类可以继承另一个类的方法.属性.下标等特征,当一个类继承其他类时,继承类叫子类,被继承类叫父类(或超类).子类继承父类后,可以重写父类的 ...

  6. 转:ASCII码表_全_完整版

    ASCII码表 ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符 0 NUL 32 (space) 64 @ 96 . 1 SOH 33 ! 65 A 9 ...

  7. LIBSVM之一

    libSVM简单的介绍 libSVM是台湾林智仁(Chih-Jen Lin) 教授2001年开发的一套支持向量机库,这套库运算速度挺快,可以很方便的对数据做分类或回归.由于libSVM程序小,运用灵活 ...

  8. 为什么设计模式在C++社区没有Java社区流行?

    我们发现设计模式在Java社区很流行,但是在C++社区却没有那么被关注,甚至有点被排斥,究竟是什么原因造成这个差异的呢?    昨天和同事讨论这个问题,最后得出几点原因:     (1)C++内存需要 ...

  9. 设置tableWidget->verticalScrollBar()的属性

    tableWidget->verticalScrollBar()->setStyleSheet("QScrollBar{background:rgb(255,255,0); wi ...

  10. 【转】android小结(一)之menu

    原文网址:http://zhouyunan2010.iteye.com/blog/1151215 android提供有三种menu类型 一.Options Menu(选项菜单) 这是一组item选项的 ...