注:本文是建立在hadoop已经搭建完成的基础上进行的。

Apache Spark是一个分布式计算框架,旨在简化运行于计算机集群上的并行程序的编写。该框架对资源调度,任务的提交、执行和跟踪,节点间的通信以及数据并行处理的内在底层操作都进行了抽象。它提供了一个更高级别的API用于处理分布式数据。从这方面说,它与Apache Hadoop等分布式处理框架类似。但在底层架构上,Spark与它们有所不同。

Spark起源于加利福利亚大学伯克利分校的一个研究项目。学校当时关注分布式机器学习算法的应用情况。因此,Spark从一开始便为应对迭代式应用的高性能需求而设计。在这类应用中,相同的数据会被多次访问。该设计主要靠利用数据集内存缓存以及启动任务时的低延迟和低系统开销来实现高性能。再加上其容错性、灵活的分布式数据结构和强大的函数式编程接口,Spark在各类基于机器学习和迭代分析的大规模数据处理任务上有广泛的应用,这也表明了其实用性。

Spark支持四种运行模式。

  • 本地单机模式:所有Spark进程都运行在同一个Java虚拟机(Java Vitural Machine,JVM)中。
  • 集群单机模式:使用Spark自己内置的任务调度框架。
  • 基于Mesos:Mesos是一个流行的开源集群计算框架。
  • 基于YARN:即Hadoop 2,它是一个与Hadoop关联的集群计算和资源调度框架。

spark是由Scala语言编写的,但是运行的环境是jvm,所以需要安装JDK 
编译过程:Python、java、Scala编写的代码 -> scala编译器编译解释,生成class文件 -> 由jvm负责执行class文件(与java代码执行一致)

Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处

由于 spark是由Scala语言编写的,所以依赖Scala环境,且由Scala编写的执行代码也需要环境进行编译。

hdfs是作为spark的持久层,所以需要安装Hadoop,同时如果需要配置spark on yarn,则Hadoop需要安装yarn版本的

spark官方详细参数配置手册:http://spark.apache.org/docs/latest/configuration.html

下载地址:http://spark.apache.org/downloads.html

---------------------------------------------------------------------------------------------------------

1、安装Scala

官网下载地址: http://www.scala-lang.org/download/all.html

下载后解压到指定目录,例如 /usr/local/scala

# tar -zxvf scala-2.11.8.tgz  ;  mv scala-2.11.8 /usr/local/scala

配置环境变量:

# vim /etc/profile

export  SCALA_HOME=/usr/local/scala/

export  PATH=$SCALA_HOME/bin:$PATH

2、编辑conf/spark-env.sh文件

export HADOOP_HOME=/usr/local/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_MASTER_IP=dataMaster30
export SPARK_EXECUTOR_INSTANCES=3
export SPARK_EXECUTOR_CORES=3
export SPARK_EXECUTOR_MEMORY=8g
export SPARK_DRIVER_MEMORY=2g

3、编辑slaves文件

#localhost
dataSlave31
dataSlave32
dataSlave33
dataSlave34
dataSlave35

4、启动spark集群:

/usr/local/spark/sbin/start-all.sh

关闭spark集群:

/usr/local/spark/sbin/stop-all.sh

 

5、检测是否安装成功:

# jps (Master节点) 此时会多出现一个Master进程

1701 Master
1459 SecondaryNameNode
2242 NameNode
1907 ResourceManage

# jps  (Worker节点) 此时会多出现一个Worker进程

5387 Worker
4269 DataNode
4398 NodeManager

执行以下测试命令,查看spark单机运行是否成功:

/usr/local/spark/bin/run-example SparkPi 1000

执行以下测试命令,查看spark集群运行是否成功:

cd /usr/local/spark

./bin/spark-submit --master spark://master60:7077 --class org.apache.spark.examples.SparkPi  lib/spark-examples-1.6.1-hadoop2.6.0.jar 1000

如果没有报错的话,则证明spark确实部署成功。

6、查看集群状态:

http://master30:/

最后设置开机自启动:

vim /etc/rc.local

su - hadoop -c "/usr/local/hadoop/sbin/start-all.sh"
su - hadoop -c "/usr/local/spark/sbin/start-all.sh"

spark1.6.1 on yarn搭建部署的更多相关文章

  1. Spark1.3.1 On Yarn的集群搭建

    下面给出的是spark集群搭建的环境: 操作系统:最小安装的CentOS 7(下载地址) Yarn对应的hadoop版本号:Hadoop的Cloudera公司发行版Hadoop2.6.0-CDH5.4 ...

  2. Spark集群基于Zookeeper的HA搭建部署笔记(转)

    原文链接:Spark集群基于Zookeeper的HA搭建部署笔记 1.环境介绍 (1)操作系统RHEL6.2-64 (2)两个节点:spark1(192.168.232.147),spark2(192 ...

  3. 云服务器+tomcat+mysql+web项目搭建部署

    云服务器+tomcat+mysql+web项目搭建部署 1.老样子,开头墨迹两句. 作为我的第二篇文章,有很多感慨,第一篇人气好低啊,有点小丧气,不过相信我还是经验少,分享的都是浅显的,所以大家可能不 ...

  4. Ubuntu14.04下Ambari安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)

    不多说,直接上干货! 写在前面的话 (1) 最近一段时间,因担任我团队实验室的大数据环境集群真实物理机器工作,至此,本人秉持负责.认真和细心的态度,先分别在虚拟机上模拟搭建ambari(基于CentO ...

  5. Ubuntu14.04下Cloudera安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)(在线或离线)

    第一步: Cloudera Manager安装之Cloudera Manager安装前准备(Ubuntu14.04)(一) 第二步: Cloudera Manager安装之时间服务器和时间客户端(Ub ...

  6. nginx Win下实现简单的负载均衡(1)nginx搭建部署

    快速目录: 一.nginx Win下实现简单的负载均衡(1)nginx搭建部署 二.nginx Win下实现简单的负载均衡(2)站点共享Session 三.nginx Win下实现简单的负载均衡(3) ...

  7. zabbix环境搭建部署(一)

     Linux高端架构师课程 Linux实战运维国内NO.1全套视频课程 QQ咨询:397824870  > 监控报警 > zabbix环境搭建部署(一) zabbix环境搭建部署(一) 监 ...

  8. 企业级监控软件zabbix搭建部署之zabbix server的安装

    企业级监控软件zabbix搭建部署之zabbix server的安装 zabbix线上已经应用半年多了,关于zabbix在生产环境中的使用心得,以及一些经验写下来,希望让大家少走弯路,共同学习! 环境 ...

  9. 企业级监控软件Zabbix搭建部署之zabbix在WEB页面中的配置

    企业级监控软件zabbix搭建部署之zabbix在WEB页面中的配置 企业级监控软件zabbix搭建部署之zabbix在WEB页面中的配置 关于安装请看 http://www.linuxidc.com ...

随机推荐

  1. Jmeter(八)HTTPCookie管理器

    Cookie绝对是日常工作以及技术中一个绕不过去的‘角色’,正常各种各样的业务需要Cookie的存在.Jmeter中也有支持发送Cookie的组件,但是,仅是后话:在此还是有必要先记一记Cookie到 ...

  2. php安装imagemagick扩展 常见问题与解决方案(win平台)

    1.写在前面 1-1.ImageMagick介绍 ImageMagick是一套功能强大.稳定而且开源的工具集和开发包,可以用来读.写和处理超过89种基本格式的图片文件,包括流行的TIFF.JPEG.G ...

  3. 梳理源码:spring ioc容器加载的流程图

  4. C# 自己动手实现Spy++(二)

    昨天已经实现了获取窗口的标题.句柄等信息,但是高亮部分还有问题,而且红色绘制框擦除也有问题,今天就又研究了下上述两个问题. 高亮部分红色框只显示左上的边框,而右下的显示不出来,如图: 代码如下: pu ...

  5. mysql的DATE_FORMAT参数格式

    mysql有个字段是DATETIME类型,要实现可以按月统计,该怎么写sql语句?select month(f1) from tt group by month(f1)or select DATE_F ...

  6. css实战第三天小结

    1.谈一谈对层级的理解: 如果对两个并列的子元素都设置了相对于同一个父元素(如果没有设置父元素那么默认相对于浏览器而言)进行了定位(相对定位),则这两个都具有相同的层级(默认为0),他们的trbl也默 ...

  7. 关于SqlServer2008小记(查询数据库连接数,强行干掉连接)

    查询连接数 select count(*) from master.dbo.sysprocesses 这条语句查出来的是所有连接到本机(或者连接到本服务器)的连接数,并非是某一个库的连接数. 查询连接 ...

  8. hive之窗口函数

    窗口函数 1.相关函数说明 COVER():指定分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变而变化 CURRENT ROW:当前行 n PRECEDING:往前n行数据 n FOLLO ...

  9. nodejs基础学习1

    ES6常用新语法 ES6新语法 什么是ES6? 由于JavaScript是上个世纪90年代,由Brendan Eich在用了10天左右的时间发明的:虽然语言的设计者很牛逼,但是也扛不住"时间 ...

  10. iOS如何把所有页面状态栏的字体颜色都设置为白色

    第一步:在info.plist中添加一个字段:view controller -base status bar 设置为NO 第二步:在一个所有界面都继承的父类里添加: if (IOS7_OR_LATE ...