Spark系列(一)Spark1.0.0源码编译及安装
最近想对自己学的东西做些回顾,想到写博客是个不错的方式,方便他人也有利自己,刚开始写不足之处大家多担待。
编译前需要安装JDK1.6以上、scala、Maven、Ant、hadoop2.20 如下图(/etc/profile):

Spark编译有提供了两种方式:
- Maven编译:在 /etc/profile文中添加:export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"
执行命令:mvn -Pyarn -Dhadoop.version=2.2.0 -Dyarn.version=2.2.0 -DskipTests clean package - SBT 编译配置文件:Spark安装目录下的 project/SparkBuilder.scala 执行:SPARK_HADOOP_VERSION=2.2.0 SPARK_YARN=true sbt/sbt assembly
说明:第一次编译时间会比较长因为需要下载依赖的jar包,(如果编译有失败基本上都是网络原因,重新执行编译命令就ok了);
编译完Spark后整个目录大小大概900M,如果再通过scp拷贝到其他节点那占空间,所以下一步还需要生成Spark部署包;
Spark 部署包生成命令make-distribution.sh
--hadoop VERSION : Hadoop 版本号,不加此参数时hadoop 版本为1.0.4 。
--with-yarn :是否支持Hadoop YARN ,不加参数时为不支持yarn 。
--with-hive :是否在Spark SQL 中支持hive ,不加此参数时为不支持hive 。
--skip-java-test :是否在编译的过程中略过java 测试,不加此参数时为略过。
--with-tachyon :是否支持内存文件系统Tachyon ,不加此参数时不支持tachyon 。
--tgz :在根目录下生成 spark-$VERSION-bin.tgz ,不加此参数时不生成tgz 文件,只生
成/dist 目录。
--name NAME :和— tgz 结
例:
生成支持yarn 、hive 的部署包:
./make-distribution.sh --hadoop 2.2.0 --with-yarn --with-hive --tgz
注:参数具有顺序性,安装过程中又会输入提示(如果你的JDK版本不是1.6)直接输入YES回车即可;
完成Spark部署包的生成后解压scp到各个节点,然后更改以下配置:
- 配置Spark安装目录下的 conf/slave文件,添加各个节点IP或主机名(如果配置主机名需配置 /etc/sysconfig/hosts文件 IP与主机名的对应关系) 4.2、配置Spark安装目录下的conf/spark-env.sh文件
export SPARK_MASTER_IP=chenx [Master主机名]
export SPARK_MASTER_PORT=7077 [访问端口]
export SPARK_WORKER_CORES=1 [使用的内核数]
export SPARK_WORKER_INSTANCES=1
export SPARK_WORKER_MEMORY=3g [使用内存大小]
以下为Spark的HA配置根据需求二选一;
//Spark 基于文件系统的HA配置
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=FILESYSTEM -Dspark.deploy.recoveryDirectory=/temp/recovery"
//Spark基于zookeeper的HA配置
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=hadoop1:2181,hadoop2:2181,hadoop3:2181 -Dspar
k.deploy.zookeeper.dir=/temp/recover"
最后运行: ./sbin/start-all.sh
单机模式运行jps命令看到 Master和Worker两个进程就ok了;
Spark系列(一)Spark1.0.0源码编译及安装的更多相关文章
- spark2.1.0的源码编译
本文介绍spark2.1.0的源码编译 1.编译环境: Jdk1.8或以上 Hadoop2.7.3 Scala2.10.4 必要条件: Maven 3.3.9或以上(重要) 点这里下载 http:// ...
- 英蓓特Mars board的android4.0.3源码编译过程
英蓓特Mars board的android4.0.3源码编译过程 作者:StephenZhu(大桥++) 2013年8月22日 若要转载,请注明出处 一.编译环境搭建及要点: 1. 虚拟机软件virt ...
- 非寻常方式学习ApacheTomcat架构及10.0.12源码编译
概述 开启博客分享已近三个月,感谢所有花时间精力和小编一路学习和成长的伙伴们,有你们的支持,我们继续再接再厉 **本人博客网站 **IT小神 www.itxiaoshen.com 定义 Tomcat官 ...
- 解决Tomcat10.0.12源码编译问题进而剖析其优秀分层设计架构
概述 Tomcat.Jetty.Undertow这几个都是非常有名实现Servlet规范的应用服务器,Tomcat本身也是业界上非常优秀的中间件,简单可将Tomcat看成是一个Http服务器+Serv ...
- pentaho专题系列之kettle篇--kettle源码编译
最近看了一些kettle的文章,都是kettle7.0以前的,已经跟不上时代了.截止笔者写这篇文章的时候,github上面的已经是7.1.0.3了,而且是发行版的,最新的快照版本已经是8.0的了.基于 ...
- Ubuntu 环境 TensorFlow (最新版1.4) 源码编译、安装
Ubuntu 环境 TensorFlow 源码编译安装 基于(Ubuntu 14.04LTS/Ubuntu 16.04LTS/) 一.编译环境 1) 安装 pip sudo apt-get insta ...
- Spark-2.0.2源码编译
注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6813925210731840013/ Spark官网下载地址: http://spark.apache.org/d ...
- android 5.0 (lollipop)源码编译环境搭建(Mac OS X)
硬件环境:MacBook Pro Retina, 13-inch, Late 2013 处理器 2.4 GHz Intel Core i5 内存 8 GB 1600 MHz DDR3 硬盘60G以 ...
- hadoop2.0 eclipse 源码编译
在eclipse下编译hadoop2.0源码 http://www.cnblogs.com/meibenjin/archive/2013/07/05/3172889.html hadoop cdh4编 ...
- kafka 0.11.0.3 源码编译
首先下载 kafka 0.11.0.3 版本 源码: http://mirrors.hust.edu.cn/apache/kafka/0.11.0.3/ 下载源码 首先安装 gradle,不再说明 1 ...
随机推荐
- Linux下GPIO驱动(四) ----gpio_request();gpio_free();
//gpio_request申请gpio口 int gpio_request(unsigned gpio, const char *label) { struct gpio_desc *desc; s ...
- python27读书笔记0.3
#-*- coding:utf-8 -*- ##D.has_key(k): A predicate that returns True if D has a key k.##D.items(): Re ...
- 【DB】SQLiteHelper
/// <summary> /// 说明:这是一个针对System.Data.SQLite的数据库常规操作封装的通用类. /// </summary> public class ...
- <三> jQuery 选择器
jQuery 选择器选择需要应用效果的元素,jQuery 元素选择器和属性选择器允许您通过标签名.属性名或内容对 HTML 元素进行选择.选择器允许您对 HTML 元素组或单个元素进行操作. 元素选择 ...
- pair work-Elevator Schedule附加题
[电梯调度算法的实现和测试] [附加题] 首先,我要感谢周敏轩同学和薛亚杰,吴渊渊小组.UI的编写是在两个小组成员的共同努力下完成的,希望在第二次结对编程中能够再一起对UI界面进行更新和完善.UI编写 ...
- 移动前端javascript事件
移动端事件: // 手势事件 touchstart //当手指接触屏幕时触发 touchmove //当已经接触屏幕的手指开始移动后触发 touchend //当手指离开屏幕时触发 touchcanc ...
- Java之向左添加零(000001)
int i_m = 270000 ; String str_m = String.valueOf(i_m); String str ="000000"; str_m=str.sub ...
- UI/UE对个性化推荐的影响
用户界面,用户体验. 在创建网站选择色调时,大多数企业想到的是美观.其实,颜色所起到的作用远超出人们的想象. 关于颜色与购买习惯的心理学书籍比比皆是,下 ...
- 手游:cocos2d-x3.0 移植 wp8 开发 各种 “蛋疼”问题的汇总
蛋疼的问题的起源: wp8 做应用开发,显示显示中文,源码包含中文都是没有一点问题的, 只是cocos2d-x 的编码方式(UTF-8),引起的一系列的问题. 1:不能显示服务器返回的中文 2:c++ ...
- android 设备唯一码的获取,Cpu号,Mac地址
开发Android应用中,我们常常需要设备的唯一码来确定客户端. Android 中的几中方法,使用中常常不可靠 1. DEVICE_ID 假设我们确实需要用到真实设备的标识,可能就需要用到DEVIC ...