下面给出的是spark集群搭建的环境:

操作系统:最小安装的CentOS 7(下载地址

Yarn对应的hadoop版本号:Hadoop的Cloudera公司发行版Hadoop2.6.0-CDH5.4.0(下载地址

Java版本号:JDK1.8(下载地址

Scala版本号:Scala2.10.4(下载地址

Spark版本号:spark-1.3.1-bin-hadoop2.6(下载地址

集群组成:master  192.168.1.2

slave1   192.168.1.3

slave2   192.168.1.4

slave3   192.168.1.5

1、  操作系统的安装

我觉得这个就没必要说了,下载一个虚拟机或者直接在真机安装,比较简单,不再赘述。

2、  Java的安装

请参看我的博文《Jdk1.8在CentOS7中的安装与配置》有详细说明。

3、  Scala的安装

请参看我的博文《Scala2.10.4在CentOS7中的安装与配置》有详细说明。

4、  Yarn的部署

Yarn是由Hadoop2.x发展而来,是Hadoop1.x的JobTracker和TaskTracker的升级版本,是hadoop2.x的资源调度工具。搭建Hadoop2.x环境的时候,yarn会自动被搭建好,所以,我们只需要搭建hadoop环境即可。

Hadoop具体环境搭建,请参看我的博文《Hadoop2.6.0在CentOS 7中的集群搭建》有详细说明。

5、  Spark的集群搭建

a)         首先,从官网下载spark1.3.1对应hadoop2.6.0的版本(注:以下所有操作都在超级用户模式下进行!)

b)         在主节点master的root/app的目录下,解压下载好的spark-1.3.1-bin-hadoop2.6.tgz:

tar –xzvf spark-1.3.1-bin-hadoop2.6.tgz

c)         配置Spark的环境变量:

  i.   vi  /etc/profile

  ii.  在文件最后添加:

## SPARK 
export SPARK_HOME=spark的绝对路径(我这边是:/root/app/spark-1.3.1-bin-hadoop2.6)
export PATH=$PATH:$SPARK_HOME/bin

d)         Spark的相关文件配置

  i.  slaves的配置:

    1.   vi slaves
    2.   添加从节点slave名称:

        slave1

        slave2

        slave3

  ii.  spark-env.sh的配置

    1.   vi spark-env.sh
    2.   向文件添加:
export JAVA_HOME=Java安装的绝对路径(我这边是:/root/app/jdk1.8)
export SCALA_HOME=Scala安装的绝对路径(我这边是:/root/app/scala2.10)
export HADOOP_CONF_DIR=hadoop环境下的配置文件目录etc/hadoop的绝对路径(我这边是:/root/app/hadoop-2.6.0-cdh5.4.0/etc/Hadoop)
export SPARK_MASTER_IP=主节点IP或主节点IP映射名称(我这边是:master)
export SPARK_MASTER_PORT=主节点启动端口(默认7077)
export PARK_MASTER_WEBUI_PORT=集群web监控页面端口(默认8080)
export SPARK_WORKER_CORES=从节点工作的CPU核心数目(默认1)
export SPARK_WORKER_PORT=从节点启动端口(默认7078)
export SPARK_WORKER_MEMORY=分配给Spark master和 worker 守护进程的内存空间(默认512m)
export SPARK_WORKER_WEBUI_PORT=从节点监控端口(默认8081)
export SPARK_WORKER_INSTANCES=每台从节点上运行的worker数量 (默认: 1). PS:当你有一个非常强大的计算的时候和需要多个Spark worker进程的时候你可以修改这个默认值大于1 . 如果你设置了这个值。要确保SPARK_WORKER_CORE 明确限制每一个worker的核心数, 否则每个worker 将尝试使用所有的核心。

     3.  我这边的yarn部署是按照spark配置文件的默认部署的,如果你想根据实际情况来部署的话,可以修改一下文件:

# - HADOOP_CONF_DIR, to point Spark towards Hadoop configuration files
# - SPARK_EXECUTOR_INSTANCES, Number of workers to start (Default: 2)
# - SPARK_EXECUTOR_CORES, Number of cores for the workers (Default: 1).
# - SPARK_EXECUTOR_MEMORY, Memory per Worker (e.g. 1000M, 2G) (Default: 1G)
# - SPARK_DRIVER_MEMORY, Memory for Master (e.g. 1000M, 2G) (Default: 512 Mb)
# - SPARK_YARN_APP_NAME, The name of your application (Default: Spark)
# - SPARK_YARN_QUEUE, The hadoop queue to use for allocation requests
# - SPARK_YARN_DIST_FILES, Comma separated list of files to be distributed with the job.
# - SPARK_YARN_DIST_ARCHIVES, Comma separated list of archives to be distributed with the job.

  iii.  Spark文件复制:

    将配置好的Spark文件复制到各个从节点slave对应的目录上:

scp spark-1.3.1-bin-hadoop2.6/ root@slave1:/root/app
scp spark-1.3.1-bin-hadoop2.6/ root@slave2:/root/app
scp spark-1.3.1-bin-hadoop2.6/ root@slave3:/root/app

6、  Spark On Yarn的集群启动:

  a)  Yarn的启动:

     i.   先进入hadoop目录下

    ii.   ./sbin/start-all.sh

    iii.   jps发现有ResourceManager进程,说明yarn启动完成

  b)  Spark的启动:

    i.   先进入spark目录下

    ii.   ./sbin/start-all.sh

    iii.   jps主节点发现有Master进程,jps从节点有Worker进程,说明spark启动完成

  c)      Spark监控页面,我就不测试了,一般都是masterIP:8080,如有打不开监控页面的问题也是防火墙没有被禁用的问题,请参看我的博文《Hadoop环境搭建过程中可能遇到的问题》 里面的问题2有详细说明。

7、至此,Spark On Yarn的集群搭建完成。

Spark1.3.1 On Yarn的集群搭建的更多相关文章

  1. hadoop-2.6.0.tar.gz + spark-1.5.2-bin-hadoop2.6.tgz的集群搭建(单节点)

    前言 本人呕心沥血所写,经过好一段时间反复锤炼和整理修改.感谢所参考的博友们!同时,欢迎前来查阅赏脸的博友们收藏和转载,附上本人的链接.http://www.cnblogs.com/zlslch/p/ ...

  2. hadoop-2.6.0.tar.gz + spark-1.5.2-bin-hadoop2.6.tgz 的集群搭建(3节点和5节点皆适用)

    本人呕心沥血所写,经过好一段时间反复锤炼和整理修改.感谢所参考的博友们!同时,欢迎前来查阅赏脸的博友们收藏和转载,附上本人的链接.http://www.cnblogs.com/zlslch/p/584 ...

  3. hadoop-2.6.0.tar.gz + spark-1.5.2-bin-hadoop2.6.tgz的集群搭建(单节点)(Ubuntu系统)

    前言 本人呕心沥血所写,经过好一段时间反复锤炼和整理修改.感谢所参考的博友们!同时,欢迎前来查阅赏脸的博友们收藏和转载,附上本人的链接.http://www.cnblogs.com/zlslch/p/ ...

  4. hadoop-2.6.0.tar.gz + spark-1.6.1-bin-hadoop2.6.tgz的集群搭建(单节点)(CentOS系统)

    福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师      人工智能躺过的坑         Java全栈大联盟   ...

  5. Hadoop 2.2 YARN分布式集群搭建配置流程

    搭建环境准备:JDK1.6,SSH免密码通信 系统:CentOS 6.3 集群配置:NameNode和ResourceManager在一台服务器上,三个数据节点 搭建用户:YARN Hadoop2.2 ...

  6. Hadoop2.7.4 yarn(HA)集群搭建步骤(CentOS7)

    群节点分配: Park01:Zookeeper.NameNode(active).ResourceManager(active) Park02:Zookeeper.NameNode(standby) ...

  7. hadoop yarn HA集群搭建

    可先完成hadoop namenode HA的搭建:http://www.cnblogs.com/kisf/p/7458519.html 搭建yarnde HA只需要在namenode HA配置基础上 ...

  8. Hadoop集群搭建-01前期准备

    Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...

  9. Hadoop集群搭建-04安装配置HDFS

    Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...

随机推荐

  1. build.xml

    下载ant 解压ant 后设置ANT_HOME, PATH中添加ANT_HOME目录下的bin目录(如:ANT_HOME:,PATH:D:\apache-ant-1.9.2%ANT_HOME%\bin ...

  2. 【Web Shell】- 技术剖析中国菜刀 – Part I

    这里的中国菜刀不是指切菜做饭的工具,而是中国安全圈内使用非常广泛的一款Webshell管理工具,想买菜刀请出门左拐东门菜市场王铁匠处.中国菜刀用途十分广泛,支持多种语言,小巧实用,据说是一位中国军人退 ...

  3. Android自动化之旅—生成渠道包

    美团Android自动化之旅—生成渠道包:http://tech.meituan.com/mt-apk-packaging.html   Android Studio系列教程六--Gradle多渠道打 ...

  4. BZOJ5092 分割序列(贪心)

    设si为该序列的异或前缀和,则显然相当于求Σmax{sj+sj^si} (i=1~n,j=0~i).从高位到低位考虑,如果该位si为1,无论sj怎么填都是一样的:如果该位si为0,则sj该位应尽量为1 ...

  5. BZOJ 2844: albus就是要第一个出场

    2844: albus就是要第一个出场 Time Limit: 6 Sec  Memory Limit: 128 MBSubmit: 1134  Solved: 481[Submit][Status] ...

  6. 【BZOJ4774】修路(动态规划,斯坦纳树)

    [BZOJ4774]修路(动态规划,斯坦纳树) 题面 BZOJ 题解 先讲怎么求解最小斯坦纳树. 先明白什么是斯坦纳树. 斯坦纳树可以认为是最小生成树的一般情况.最小生成树是把所有给定点都要加入到联通 ...

  7. 【BZOJ2989】数列(二进制分组,主席树)

    [BZOJ2989]数列(二进制分组,主席树) 题面 BZOJ 权限题啊... Description 给定一个长度为n的正整数数列a[i]. 定义2个位置的graze值为两者位置差与数值差的和,即g ...

  8. 51nod 1681 公共祖先 | 树状数组

    51nod 1681 公共祖先 有一个庞大的家族,共n人.已知这n个人的祖辈关系正好形成树形结构(即父亲向儿子连边). 在另一个未知的平行宇宙,这n人的祖辈关系仍然是树形结构,但他们相互之间的关系却完 ...

  9. 洛谷 P2184 贪婪大陆 解题报告

    P2184 贪婪大陆 题目背景 面对蚂蚁们的疯狂进攻,小\(FF\)的\(Tower\) \(defence\)宣告失败--人类被蚂蚁们逼到了\(Greed\) \(Island\)上的一个海湾.现在 ...

  10. Android 65535 问题与 MultiDex分包

    Android Multidex 遇到的问题 http://blog.csdn.net/wangbaochu/article/details/51178881 Android 使用android-su ...