为了方便使用Spark的同学提交任务以及加强任务管理等原因,经调研采用Livy比较靠谱,下图大致罗列一下几种提交平台的差别。

  本文会以基于mac的单机环境搭建一套Spark+Livy+Hadoop来展示如何提交任务运行,本文只针对框架能够运行起来,至于各个组件参数怎么配置性能更好,各位兄弟就自行找度娘了。

一.搭建Spark

访问http://spark.apache.org/downloads.html下载安装包,然后按照以下步骤操作即可。

1.下载完成后解压到某个目录下,在该目录执行以下命令

tar zxvf spark-2.1.0-hadoop2.7.tgz

2.配置Spark环境变量

Mac环境变量一般在/etc/profile下配置,打开profile文件在文件中添加。

#SPARK VARIABLES START

export SPARK_HOME =/usr/local/spark-2.1.0-hadoop2.7

export PATH = ${PATH}:${SPARK_HOME}/bin

#SPARK VARIABLES END

3.配置Java环境

同样在/etc/profile下配置。在此之前已经安装scala和jdk相关环境。将java安装目录添加到里面export JAVA_HOME =/Library/java/javaVirtualMachines/jdk1.8.0_111.jdk/COntents/Home 设置完成后,保存退出,最后使用source /etc/profile 使环境变量生效。

4.执行sbin/start-all.sh,启动spark

5.测试

打开终端,输入pyspark,出现下面的画面即表示安装成功。

二.Livy安装

1.去https://www.apache.org/dyn/closer.lua/incubator/livy/0.6.0-incubating/apache-livy-0.6.0-incubating-bin.zip下载安装包。

2.解压安装包,并且编辑livy.conf,添加红框中的参数即可。

然后编辑livy-env.sh,添加Spark的安装目录配置。

3.最后bin/livy-server start启动Livy即可

三.Hadoop安装

1.去https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/下载安装包,并解压

2.修改各种配置,vim core-site.xml,修改为

修改hdfs-site.xml为

3.配置环境变量

export HADOOP_HOME=/User/deploy/software/hadoop/hadoop-2.8.5

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"

export  HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

4.格式化节点

5.执行sbin/start-all.sh启动Hadoop,出现以下界面说明安装成功

yarn和hadoop安装是一体的,访问判断yarn是否安装成功

6.如果datanode没有启动成功,就去配置的NameNode下的current/VERSION中的clusterID复制到DataNode下的VERSION即可。

四.开发代码提交任务

通过上面的步骤基础环境就已经搭建好,接着就是开发接口提交任务。部分代码截图如下:

 五.关注公众号获取源码

基于Livy的Spark提交平台搭建与开发的更多相关文章

  1. 【读书笔记】iOS-微信公众平台搭建与开发揭秘

    一,微信公众平台. 1,“再小的个体,也有自己的品牌”,这是微信公众平台的官方广告. 2,微信公众平台没有认证门槛,只需要一个邮箱和手持身份证照片.目前一个身份证号只可注册两个微信公众帐号. 二,LB ...

  2. Windows平台搭建NodeJs开发环境以及HelloWorld展示—图解

    Windows 7系统下搭建NodeJs开发环境(NodeJs+WebStrom)以及Hello World!展示,大体思路如下:第一步:安装NodeJs运行环境.第二步:安装WebStrom开发工具 ...

  3. 基于Docker的ELK日志平台搭建

    1.安装Docker Docker可简单理解为一个轻量级的虚拟机.Docker对进程进行封装隔离,隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器.Docker和传统虚拟化方式的不同.传统虚拟 ...

  4. win/mac平台搭建ionic开发环境教程(转)

    出处:http://www.ionic-china.com/doc/ionic-winmac.html#preface 前言 ionic中文网为大家准备了绿色版的nodejs和androidSDK以及 ...

  5. 在Windows平台搭建PHP开发环境(四)

    一.概念 1.1 在Windows下搭建 wamp: apache(iis) + php + mysql +phpmyadmin 1.2 在Linux下搭建     lamp: linux + php ...

  6. 在window平台搭建Qt开发环境(使用VS2008 IDE)

    一直用QT Creator(mingw)开发Qt应用程序,每次如果需要修改编译链接参数选项时,都要修改pro文件,而这个文件是基于文本的,每次都要记住这些选项参数名,如果在知道原理的情况下还记住这些字 ...

  7. 详解Windows平台搭建Androiod开发环境

    http://blog.csdn.net/lyq8479/article/details/6348330 1.安装JDK 2.安装SDK管理器,安装SDK(在线.离线) 3.下载安装Eclipse 4 ...

  8. cocos2d-x 2.1.4学习笔记01:windows平台搭建cocos2d-x开发环境

    cocos2d-x的大致开发流程是,首先使用win32版进行代码编写并完成游戏,然后将代码迁移到对应的开发环境上进行交叉编译完成游戏打包,如iphone上是mac+xcode,android是ecli ...

  9. Windows X64平台搭建Java开发环境

       JDK下载路径:www.oracle.com/technetwork/java/javase/downloads/index.html 下载JDK(Java Develop Kit) (1)针对 ...

随机推荐

  1. 利用python画小猪佩奇

    import turtle as t t.pensize(4) t.hideturtle() t.colormode(255) t.color((255,155,192),"pink&quo ...

  2. ent facebook 开源的golang orm 框架

    ent 是facebook 开源的golang orm 框架,简单强大,具有提下特性 schema 即代码 方便的图遍历 静态类型以及显示api 多种存储引擎支持(当前是mysql,sqlite,以及 ...

  3. EF core 性能调优

    Entity Framework Core performance tuning – a worked example Last Updated: February 25, 2019 | Create ...

  4. 浅谈LCA

    目录 什么是LCA 倍增求LCA dfs bfs 树剖求LCA 什么是LCA LCA就是最近公共祖先 对于有根树\(Tree\)的两个结点\(u.v\),最近公共祖先\(LCA(T,u,v)\)表示一 ...

  5. 模拟26A 题解

    A. marshland 考试时想到了网络流,然而不会建图,就死了. 正解是最大费用可行流. 比较容易想到的是将每个点拆为两个点, s连没有危险值的入点, 没有危险值的入点连有危险值的入点,入点出点之 ...

  6. Android Studio 点运行启用时,列表中不显示虚拟机,但是实际上在AVD Manager中已经添加了2个虚拟设备了

    Android Studio 点运行启用时,列表中不显示虚拟机,但是实际上在AVD Manager中已经添加了2个虚拟设备了 百度上找了一下方法, 情况出现:打开androidstudio,一直连接不 ...

  7. 深入kubernetes调度之NodeSelector

    Kubernetes的调度有简单,有复杂,指定NodeName和使用NodeSelector调度是最简单的,可以将Pod调度到期望的节点上. 1 NodeNamePod.spec.nodeName用于 ...

  8. visual studio 2019 企业版下载

    由于visual studio从2017开始就是网络下载安装,所以网速慢的朋友安装上就存在时间感,所以笔者在百度云上提供了visual studio 2019的下载包.需要的朋友自己下载安装.不过,2 ...

  9. MySQL的tmpdir临时文件说明及使用设置

    晚上收到告警MySQL数据库服务器磁盘占满发现是,数据库在tmpdir写数据的文件占用过大 执行命令lsof -n | grep deleted印出所有针对已删除文件的读写操作,这类操作是无效的,也正 ...

  10. javascript prototype理解

    如图比较好的阐述了prototype和__proto__ 简单的可以这么理解: 狗类A( function foo()),狗类A的模板描述:A.模板 (foo.prototype)是一个对象objec ...