为了方便使用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. c#接口interface学习

    好久没学习C#了,上次已经学习到了接口这块,感觉有点不太好理解,因此重新学习,在vs上面运行了,本来不想写博客的,但是正好看到网上有人说,写博客可以加深印象,因此,写吧. 下面是菜鸟教程的实例 usi ...

  2. router.beforeEach、路由元信息、导航守卫与函数式编程

    一.函数的识别: 1.router.beforeEach:主函数.高阶函数.入口函数: 2.匿名参量函数:处理跳转过程中的附加逻辑 (to, from, next) => { if (to.ma ...

  3. 015_matlab运行C语言

    视频教程:https://v.qq.com/x/page/q3039wsuged.html 资料下载:https://download.csdn.net/download/xiaoguoge11/12 ...

  4. JS的ES6扩展

    1.字符串扩展 1. includes(str) : 判断是否包含指定的字符串 2. startsWith(str) : 判断是否以指定字符串开头 3. endsWith(str) : 判断是否以指定 ...

  5. 【Gamma】Scrum Meeting 1 & 与助教谈话

    前言 Gamma阶段第1次会议在5月26日22:00由PM在大运村一公寓三层召开, 时长30min. 任务分配 姓名 今日任务 明日任务 困难 周博闻 用户控制器解耦和注释 用户控制器解耦和注释 周国 ...

  6. abp 中log4net 集成Kafka

    1.安装包 Install-Package log4net.Kafka.Core 2.修改log4net.config 配置文件 <?xml version="1.0" en ...

  7. convmv 解决GBK 迁移到 UTF-8 ,中文 文件名乱码

    yum install convmv 命令: convmv -f GBK -t UTF-8 -r --nosmart --notest <目标目录> -f from -t to --nos ...

  8. 探索ENCODE数据库 | Encyclopedia of DNA Elements

    ENCODE: Encyclopedia of DNA Elements 目标:按不同组织,收集人类(还有小鼠.worm.fly)基因组里面的所有功能元件 The primary goal of th ...

  9. Android相关视频

    Android架构师 层次分析 –从顶层到底层 洞察其原理https://www.bilibili.com/video/av59066641?t=132安卓/Android 逆向破解系统班 第2期 全 ...

  10. 理解Spring定时任务@Scheduled的两个属性fixedRate和fixedDelay

    fixedRate和fixedDelay都是表示任务执行的间隔时间 fixedRate和fixedDelay的区别:fixedDelay非常好理解,它的间隔时间是根据上次的任务结束的时候开始计时的.比 ...