spark集群安装配置

一. Spark简介

  Spark是一个通用的并行计算框架,由UCBerkeley的AMP实验室开发。Spark基于map reduce 算法模式实现的分布式计算,拥有Hadoop MapReduce所具有的优点;但不同于Hadoop MapReduce的是Job中间输出和结果可以保存在内存中,从而不再需要读写HDFS,节省了磁盘IO耗时,性能比Hadoop更快。 所以,相对来说Hadoop更适合做批处理,而Spark更适合做需要反复迭代的机器学习。下面是我在ubuntu14.04中配置Spark的整个流程以及遇到的问题的,一方面当做自己的备忘录,另一方面也希望能够给像我一样初次配置的新手提供一些帮助~╮(╯▽╰)╭

二. 安装配置

2.1 准备工作

注意:确保你之前已经安装配置好了hadoop集群(YARN方式),可以参考我的另一篇博文:Linux中安装配置hadoop集群

我所使用的环境:

ubuntu 14.04 LTS 计算机两台,一个当作Master,一个作slave。

Scala版本:scala-2.10.6

Hadoop版本:hadoop-2.7.1

Spark版本:spark-1.6.1 (记得下载预编译版本的)

我的安装目录:

Scala:/home/hadoop/spark/scala-2.10.6

Spark:/home/hadoop/spark/spark-1.6.1

Java:/home/javafile/jdk1.7.0_79

2.2 具体安装步骤

1. 安装scala

首先,去scala官网下载scala-2.10.6.tgz,解压到:/home/hadoop/spark目录下;
1 2 tar zxvf scala-2.10.6.tgz

然后,修改:/etc/profile

2. 安装Spark

同样,还是先去Spark官网下载:spark-1.6.1-bin-hadoop2.6.tgz,解压到:/home/hadoop/spark下;

1 cd /home/hadoop/spark
2 tar zxvf spark-1.6.1-bin-hadoop2.6.tgz

然后,修改:/etc/profile

3. 配置Spark

01. 修改配置文件spark-env.sh

1 cd /home/hadoop/spark/spark-1.6.1/conf
2 cp spark-env.sh.template spark-env.sh

修改spark-env.sh如下:

02. 修改配置文件slaves

在slaves中添加你的slave主机名:我只有一个slave,所以只添加了一个。

03. 配置slave

至此,master节点上的Spark已配置完毕。把master上Spark相关配置copy到slave中。(注意,三台机器spark所在目录必须一致,因为master会登陆到worker上执行命令,master认为worker的spark路径与自己一样)

三. 启动Spark

3.1 启动

启动命令非常简单:

1 cd /home/hadoop/spark/spark-1.6.1
2 sbin/start-all.sh

3.2 验证Spark是否启动成功

使用 jps 命令,查看master和slave上的进程:

master:

slave:

进入Spark的Web管理页面: http://master:8080 (将master替换成你的master主机名即可)

四. 总结

至此,Spark集群的安装配置就完成了,有什么不对的地方还请大家指正,一起交流讨论~

参考:

http://www.tuicool.com/articles/MbuaUv

http://wuchong.me/blog/2015/04/04/spark-on-yarn-cluster-deploy/

http://www.ibm.com/developerworks/cn/opensource/os-cn-spark-deploy1/index.html

spark集群安装配置的更多相关文章

  1. Hadoop2.2集群安装配置-Spark集群安装部署

    配置安装Hadoop2.2.0 部署spark 1.0的流程 一.环境描写叙述 本实验在一台Windows7-64下安装Vmware.在Vmware里安装两虚拟机分别例如以下 主机名spark1(19 ...

  2. CentOS下Hadoop-2.2.0集群安装配置

    对于一个刚开始学习Spark的人来说,当然首先需要把环境搭建好,再跑几个例子,目前比较流行的部署是Spark On Yarn,作为新手,我觉得有必要走一遍Hadoop的集群安装配置,而不仅仅停留在本地 ...

  3. [bigdata] spark集群安装及测试

    在spark安装之前,应该已经安装了hadoop原生版或者cdh,因为spark基本要基于hdfs来进行计算. 1. 下载 spark:  http://mirrors.cnnic.cn/apache ...

  4. 大数据技术之_19_Spark学习_01_Spark 基础解析 + Spark 概述 + Spark 集群安装 + 执行 Spark 程序

    第1章 Spark 概述1.1 什么是 Spark1.2 Spark 特点1.3 Spark 的用户和用途第2章 Spark 集群安装2.1 集群角色2.2 机器准备2.3 下载 Spark 安装包2 ...

  5. CentOS6安装各种大数据软件 第十章:Spark集群安装和部署

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

  6. Spark入门:第2节 Spark集群安装:1 - 3;第3节 Spark HA高可用部署:1 - 2

    三. Spark集群安装 3.1 下载spark安装包 下载地址spark官网:http://spark.apache.org/downloads.html 这里我们使用 spark-2.1.3-bi ...

  7. 3 Spark 集群安装

    第3章 Spark集群安装 3.1 Spark安装地址 1.官网地址 http://spark.apache.org/ 2.文档查看地址 https://spark.apache.org/docs/2 ...

  8. hbase单机环境的搭建和完全分布式Hbase集群安装配置

    HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境. @hbase单机环境的搭建 ...

  9. hive集群安装配置

    hive 是JAVA写的的一个数据仓库,依赖hadoop.没有安装hadoop的,请参考http://blog.csdn.net/lovemelovemycode/article/details/91 ...

随机推荐

  1. projecteuler之58题Spiral primes

    package com.android; public class SpiralPrimes { public static void main(String args[]) { long numPr ...

  2. shell 脚本中$$,$#,$?分别代表什么意思?

    $0 这个程式的执行名字$n 这个程式的第n个参数值,n=1..9$* 这个程式的所有参数,此选项参数可超过9个.$# 这个程式的参数个数$$ 这个程式的PID(脚本运行的当前进程ID号)$! 执行上 ...

  3. MySQL PrepareStatement基本的两种模式&客户端空间占用的源码分析

    关于预编译(PrepareStatement),对于所有的JDBC驱动程序来讲,有一个共同的功能,就是“防止SQL注入”,类似Oracle还有一种“软解析”的概念,它非常适合应用于OLTP类型的系统中 ...

  4. 程序中使用事务来管理sql语句的执行,执行失败时,可以达到回滚的要求。

    1.设置使用事务的SQL执行语句 /// <summary> /// 使用有事务的SQL语句 /// </summary> /// <param name="s ...

  5. 字符相等(E - 暴力求解、DFS)

    判断字符相等 Description Today on a lecture about strings Gerald learned a new definition of string equiva ...

  6. D.6661 - Equal Sum Sets

    Equal Sum Sets Let us consider sets of positive integers less than or equal to n. Note that all elem ...

  7. js中的总结汇总(以后的都收集到这篇)

    点1:js中的比较字符串是否相等,js中是用"=="这个来判断是否相等,这点跟java中不一样,java中是.equals()这种方法. 在之前写的ajax的demo中,因为用了. ...

  8. oracle_SQL中ROWID与ROWNUM的使用(转)

    转自:http://www.360doc.com/content/12/0802/11/219024_227802569.shtml rownum: ROWNUM是对结果集加的一个伪列, 即先查到结果 ...

  9. Codeforces 509C Sums of Digits 贪心

    这道题目有人用DFS.有人用DP 我觉得还是最简单的贪心解决也是不错的选择. Ok,不废话了,这道题目的意思就是 原先存在一个严格递增的Arrary_A,然后Array_A[i] 的每位之和为Arra ...

  10. Python 2.7 学习笔记 基本语法和函数定义

    本文介绍下python的基本语法 一.变量定义 不需要说明类型,也不需要像js等脚本语言使用var等标识符.直接声明即可,如: num=1 说明:上面语句声明了一个变量num,并在声明时初始化值为 1 ...