zoukankan      html  css  js  c++  java
  • spark yarn 集群提交kafka代码

    配置好hadoop的环境,具体根据http://blog.csdn.net/u010638969/article/details/51283216博客所写的进行配置。

    运行start-dfs.sh启动hdfs集群,成功后运行jps应该有NameNode,DataNode,SecondaryNameNode等应用。通过master:8088可以查看集群情况。

    最好通过hadoop/logs里面的日志看一下有没有报错,确认集群启动成功。

    运行start-yarn.sh启动yarn集群,通过查看logs下的日志查看是否成功。

    打包用户代码,我的代码中包含了kafka处理structured stream的逻辑,打包后传送到集群中,用spark-submit提交报错:

    Resources are low on NN
    

      

    百度之发现是hdfs处于安全模式中,无法进行文件的修改。而流处理程序是必须使用hdfs进行checkpoint的,所以无法启动成功。

    尝试使用

    bin/hdfs dfsadmin -safemode leave
    

      

    但是无法关闭安全模式。进入logs查看日志发现是dfs中路径没找到,根本原因是我移动了hadoop在linux中的路径,而配置文件没有随之更改,所以这里更改hdfs-site.xml中的路径,重新启动hdfs,查看日志启动成功。

    再次提交代码遇到另外的错误:

    java.lang.NoSuchMethodError: org.apache.spark.sql.SQLContext.internalCreateD
    

      

    没有找到对应的方法,查看代码堆栈发现是kafka的结构化输入输出相关的,于是想到应该是spark的版本不对造成的,kafka的结构化输入输出在spark2.3.0后才支持,而集群中的是spark2.2.0,更换spark的版本后,再次提交代码,运行成功。

  • 相关阅读:
    mysql添加外键的4种方式
    时序分析(1):时序约束原理(旧版、可能有错)
    SignalTap II——基本使用和高级技巧
    Testbench编写技巧
    异步复位同步释放
    协议——SCCB与IIC的区别
    协议——IIC
    Modelsim——显示状态机名称的方法
    亚稳态
    计数器(2):递增再递减,不断循环
  • 原文地址:https://www.cnblogs.com/yuanyifei1/p/8578546.html
Copyright © 2011-2022 走看看