今天由于所以要安装spark做一些实验。我已有的环境是:

操作系统:CentOS6.5
hadoop:hadoop2.4.1
JDK:1.7
集群环境:四个节点
 
闲话不说,以下是我的安装步骤:
说明:下边的这些安装都是先在master节点上安装。安装完成后将scala和spark传到其他节点。
Spark采用的是sala语言编写的,需要依赖scala的。所以首先需要安装scala
安装scala
下载地址:http://www.scala-lang.org/download/  我这里下载的是最新的2.11.4版本
 
解压:tar -zxvf scala-2.11.4.tgz
 
配置环境变量:
vi /etc/profile
添加
export SCALA_HOME=/hadoop/scala-2.11.4
export PATH=$PATH:$SCALA_HOME/bin
 
生效 source /etc/profile
很简单,scala就安装好了(虽然我不会用,没接触过啊~~~~~)
 
安装Spark
要选择与自己集群对用的下载
解压:tar -zxvf <安装包>
 
配置环境变量(这部可选,主要就是方便打开)
export SPARK_HOME=/hadoop/spark-1.1.0-bin-hadoop2.4
export PATH=$PATH:$SCALA_HOME/bin:$SPARK_HOME/bin
环境变量生效
 
配置Spark
进入到spark的conf中:cd /hadoop/spark-1.1.0-bin-hadoop2.4/conf
修改slaves,添加你的spark节点,我这里添加了三个
Master.domain.dev
Slave1.domain.dev
Slave2.domain.dev
 
cp spark-env.sh.template spark-env.sh
 
修改spark-env.sh,添加
export HADOOP_HOME=/usr/lib/hadoop
export JAVA_HOME=/usr/jdk64/jdk1.7.0_45
export SCALA_HOME=/hadoop/scala-2.11.4
 
master节点spark配置完成,很简单吧,接下来只需要把spark和scala的安装目录拷贝到slave1和salve2节点就可以了。需要注意的是,拷贝过去后的目录和master中的目录一样。
scp -r scala-2.11.4/ slave2:/hadoop/
scp -r spark-1.1.0-bin-hadoop2.4/ slave2:/hadoop/
拷贝成功后需要配置一下slave1和slave2节点中的环境变量,也就是配置/etc/profile文件。
大功告成,开始启动吧~~~~~~~~~~
 
测试spark
启动spark:spark-all.sh
哈哈,没报错,一次启动成功。
jps一下,会看到多出两个进程Master和Worker。
在其他两个节点中只有Worker进程的。
 
用一个例子跑一下吧。
我这里跑了一个WordCount的例子。跑例子前先在hdfs中存一个文件。
启动Spark-Shell
scala>val file = sc.textFile("hdfs://master:8020/testdata/input/README.md")
scala>val count = file.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_+_)
scala> count.collect()
运行这三天语句之后你会神奇的发现竟然出结果了。对scala语言不太了解,就不具体讲解了。要想深入学习spark,必须要先学习scala啊。

Spark在集群中的安装的更多相关文章

  1. Hadoop实战1:MapR在ubuntu集群中的安装

    由于机器学习算法在处理大数据处理的时候在所难免的会效率降低,公司需要搭建hadoop集群,最后采用了商业版的Hadoop2(MapR). 官网: http://doc.mapr.com/display ...

  2. 安装spark ha集群

    安装spark ha集群 1.默认安装好hadoop+zookeeper 2.安装scala 1.解压安装包 tar zxvf scala-2.11.7.tgz 2.配置环境变量 vim /etc/p ...

  3. Spark新手入门——3.Spark集群(standalone模式)安装

    主要包括以下三部分,本文为第三部分: 一. Scala环境准备 查看二. Hadoop集群(伪分布模式)安装 查看三. Spark集群(standalone模式)安装 Spark集群(standalo ...

  4. Spark新手入门——2.Hadoop集群(伪分布模式)安装

    主要包括以下三部分,本文为第二部分: 一. Scala环境准备 查看 二. Hadoop集群(伪分布模式)安装 三. Spark集群(standalone模式)安装 查看 Hadoop集群(伪分布模式 ...

  5. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十七):kafka manager安装

    一.kafka-manager简介 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.这个管理工具可以很容 ...

  6. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十一)NIFI1.7.1安装

    一.nifi基本配置 1. 修改各节点主机名,修改/etc/hosts文件内容. 192.168.0.120 master 192.168.0.121 slave1 192.168.0.122 sla ...

  7. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十七)Elasticsearch-6.2.2集群安装,组件安装

    1.集群安装es ES内部索引原理: <时间序列数据库的秘密(1)—— 介绍> <时间序列数据库的秘密 (2)——索引> <时间序列数据库的秘密(3)——加载和分布式计算 ...

  8. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十)安装hadoop2.9.0搭建HA

    如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...

  9. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(九)安装kafka_2.11-1.1.0

    如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...

随机推荐

  1. 一些web编程能用到的小知识

    1 信用卡验证算法-luhn算法.(in django/utils/checksums.py) 1.从卡号最后一位数字开始,逆向将奇数位(1.3.5等等)相加.2.将偶数位数字相加,但是这里有个麻烦. ...

  2. poj 2135 Farm Tour 最小费用最大流建图跑最短路

    题目链接 题意:无向图有N(N <= 1000)个节点,M(M <= 10000)条边:从节点1走到节点N再从N走回来,图中不能走同一条边,且图中可能出现重边,问最短距离之和为多少? 思路 ...

  3. MINA实战

    backlog,放入到acceptor队列中还未处理最大数量: solinger参数,用来说明close之后是否直接关闭:参数越大,等待时间越长. mina中的udp处理,即使对端关闭也会继续传输,但 ...

  4. swift版本hello

    import UIKit class ViewController: UIViewController { @IBOutlet var button : UIButton? //var alertVi ...

  5. js格式化数字,金额按千位逗号分隔,负号用括号

    // 返回数字 function removeFormatMoney(s) { s = s.toString().replace("(","-").replac ...

  6. html&nbsp;&nbsp;特殊字符(转)

    有些字符在HTML里有特别的含义,比如小于号<就表示HTML Tag的开始,这个小于号是不显示在我们最终看到的网页里的.那如果我们希望在网页中显示一个小于号,该怎么办呢? 这就要说到HTML字符 ...

  7. 让Eclipse使用新版本的JRE

    更新到新的 Mac OS X 再打开Eclipse 编译程序会报错, Exception in thread "main" java.lang.UnsupportedClassVe ...

  8. org.dom4j.DocumentException unknown protocol h

    待解析文件的路径中有空格,把空格去掉就好了

  9. SQLite入门与分析(八)---存储模型(1)

    写在前面:SQLite作为嵌入式数据库,通常针对的应用的数据量相对于通常DBMS的数据量是较小的.所以它的存储模型设计得非常简单,总的来说,SQLite把一个数据文件分成若干大小相等的页面,然后以B树 ...

  10. Android 动态刷新listview中的数据

    之前一直困扰listview刷新后位置的问题,现在才明白,原来不能重新设置listview的adapter,而应该用notifyDataSetChanged()来刷新,这样位置就不会置顶. 下面做了一 ...