一、安装依赖软件Scala(所有节点)

1、下载Scala:http://www.scala-lang.org/files/archive/scala-2.10.4.tgz

2、解压:

  1. [root@Hadoop-NN-01 ~]# tar -xzvf scala-2.10.4.tgz -C /usr/local/

3、配置scala环境变量

  1. [root@Hadoop-NN-01 ~]# vim /etc/profile
  2. export SCALA_HOME=/usr/local/scala
  3. export PATH=$PATH:${SCALA_HOME}/bin
  4.  
  5. [root@Hadoop-NN-01 ~]# source /etc/profile #使环境变量生效

4、测试scala运行环境

  1. [root@Hadoop-NN-01 scala]# scala
  2. scala> 15*15
  3. res0: Int = 225

二、安装spark

1、下载spark:http://archive.cloudera.com/cdh5/cdh/5/spark-1.5.0-cdh5.6.0.tar.gz

理论上讲CDH的一套是没有问题,可是我装了三个版本都没有装成功,启动的时候始终一个错:Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/Logger

提示缺少slf4j依赖包:log4j-1.2.17.jar、 slf4j-api-1.7.10.jar、 slf4j-log4j12-1.7.10.jar

可我将这三个包放到lib下依然不行,最后只能下载的官方的安装。如果有朋友知道原谅还请留言,谢谢!

引用【书忆江南】的回复:

  1. #CDH版的Spark安装目录下的/conf/spark-env.sh配置文件中,添加以下环境变量:export SPARK_DIST_CLASSPATH=(/mnt/sda6/Hadoop/hadoop−2.6.0−cdh5.15.0/bin/hadoopclasspath),给这个变量添加你已经安装的CDHHadoop的类路径,我看到别的教程说等号后面可以直接(/mnt/sda6/Hadoop/hadoop−2.6.0−cdh5.15.0/bin/hadoopclasspath),给这个变量添加你已经安装的CDHHadoop的类路径,我看到别的教程说等号后面可以直接(hadoop classpath),我试过,这样只能启动Master,启动Worker进程的时候还是会报缺Logger的错。所以,必须要在括号内写全CDH Hadoop的安装路径精确到/bin,然后再斜杠接上hadoop classpath才行。
  2.  
  3. export SPARK_DIST_CLASSPATH=$(/mnt/sda6/Hadoop/hadoop-2.6.0-cdh5.15.0/bin/hadoop classpath)

官方下载:http://www.apache.org/dyn/closer.lua/spark/spark-1.6.0/spark-1.6.0-bin-hadoop2.6.tgz

2、解压:

  1. [root@Hadoop-NN-01 ~]# tar xzvf spark-1.6.0-bin-hadoop2.6.tgz

3、配置Spark环境变量

  1. [root@Hadoop-NN-01 ~]# vim /etc/profile
  2. export SPARK_HOME=/home/hadoopuser/spark-1.6.0-bin-hadoop2.6
  3. export PATH=$PATH:${SPARK_HOME}/bin
  4.  
  5. [root@Hadoop-NN-01 ~]# source /etc/profile #使环境变量生效

4、配置 ${SPARK_HOME}/conf/spark-env.sh

  1. [hadoopuser@Hadoop-NN-01 conf]$ cp spark-env.sh.template spark-env.sh
  2.  
  3. [hadoopuser@Hadoop-NN-01 conf]$ vim spark-env.sh
  4. export JAVA_HOME=/usr/java/jdk1.8.0_73
  5. export SCALA_HOME=/usr/local/scala
  6. export HADOOP_HOME=/home/hadoopuser/hadoop-2.6.0-cdh5.6.0
  7. export HADOOP_CONF_DIR=/home/hadoopuser/hadoop-2.6.0-cdh5.6.0/etc/hadoop

  8. export SPARK_MASTER_IP=192.168.107.82
  9. export SPARK_MASTER_PORT=8070
  10. export SPARK_MASTER_WEBUI_PORT=8090
  11. export SPARK_WORKER_CORES=1 #每个Worker使用的CPU核数
  12. export SPARK_WORKER_INSTANCES=1 #每个Slave中启动几个Worker实例
  13. export SPARK_WORKER_PORT=8092 #Worker的WebUI端口号
  14. export SPARK_WORKER_MEMORY=1g #每个Worker使用多大的内存

其它参数:

SPARK_MASTER_IP

绑定一个外部IP给master。

SPARK_MASTER_PORT

从另外一个端口启动master(默认: 7077)

SPARK_MASTER_WEBUI_PORT

Master的web UI端口(默认:8080)

SPARK_WORKER_PORT

启动Spark worker 的专用端口(默认:随机)

SPARK_WORKER_DIR

伸缩空间和日志输入的目录路径(默认:SPARK_HOME/work)

SPARK_WORKER_CORES

作业可用的CPU内核数量(默认:所有可用的)

SPARK_WORKER_MEMORY

作业可使用的内存容量,默认格式1000M或者 2G (默认:所有RAM去掉给操作系统用的1 GB)注意:每个作业自己的内存空间由SPARK_MEM决定。

SPARK_WORKER_WEBUI_PORT

worker 的web UI 启动端口(默认:8081)

SPARK_WORKER_INSTANCES

每个机器上运行worker数量(默认:1)当你有一个非常强大的计算机的时候和需要多个Spark worker进程的时候你可以修改这个默认值大于1。如果你设置了这个值。要确保SPARK_WORKER_CORE 明确限制每一个r worker的核心数,否则每个worker 将尝试使用所有的核心。

SPARK_DAEMON_MEMORY

分配给Spark master和 worker 守护进程的内存空间(默认:512m)

SPARK_DAEMON_JAVA_OPTS

Spark master 和 worker守护进程的JVM 选项(默认:none)

5、配置 {SPARK_HOME}/conf/ slaves

  1. [hadoopuser@Hadoop-NN-01 conf]$ cp slaves.template slaves
  2.  
  3. [hadoopuser@Hadoop-NN-01 conf]$ vim slaves
  4. #注意这里添加所有工作节点的主机名或者ip
  5. #Hadoop-NN-01(如果既想当master又想当worker的话,可以配置上。)
  6. Hadoop-DN-01
  7. Hadoop-DN-02

6、程序分发

  1. scp -r spark-1.6.0-bin-hadoop2.6. hadoopuser@Hadoop-DN-01:/home/hadoopuser/
  2. scp -r spark-1.6.0-bin-hadoop2.6. hadoopuser@Hadoop-DN-02:/home/hadoopuser/

7、启动spark集群

  1. [hadoopuser@Hadoop-NN-01 sbin]# ./start-all.sh

单节点启动:

  1. sbin/start-master.sh            #启动主节点
  2. sbin/start-slave.sh 192.168.107.82:8070 #启动从节点

8、运行示例程序

  1. [hadoopuser@Hadoop-NN-01 spark-1.6.0-bin-hadoop2.6.]# ./bin/run-example SparkPi 10 > Sparkpilog.txt

9、验证

1)jps

主节点多了Master

从节点多了Worker

2)浏览器查看http://192.168.107.82:8090/

10、使用spark-shell

  1. [hadoopuser@Hadoop-NN-01 spark-1.5.0-cdh5.6.0]# bin/spark-shell

浏览器访问SparkUI  http:// 192.168.107.82:4040/

可以从 SparkUI 上查看一些 如环境变量、Job、Executor等信息。

至此,整个 Spark 分布式集群的搭建就到这里结束。

11、停止spark集群

  1. [hadoopuser@Hadoop-NN-01 sbin]# ./stop-all.sh

CentOS6.5 安装Spark集群的更多相关文章

  1. Spark学习笔记--Linux安装Spark集群详解

    本文主要讲解如何在Linux环境下安装Spark集群,安装之前我们需要Linux已经安装了JDK和Scala,因为Spark集群依赖这些.下面就如何安装Spark进行讲解说明. 一.安装环境 操作系统 ...

  2. 安装Spark集群(在CentOS上)

    环境:CentOS 6.4, Hadoop 1.1.2, JDK 1.7, Spark 0.7.2, Scala 2.9.3 1. 安装 JDK 1.7 yum search openjdk-deve ...

  3. CentOS7 安装spark集群

    Spark版本 1.6.0 Scala版本 2.11.7 Zookeeper版本 3.4.7 配置虚拟机 3台虚拟机,sm,sd1,sd2 1. 关闭防火墙 systemctl stop firewa ...

  4. RedHat6.5安装Spark集群

    版本号: RedHat6.5   RHEL 6.5系统安装配置图解教程(rhel-server-6.5) JDK1.8      http://blog.csdn.net/chongxin1/arti ...

  5. Centos6.6 安装Mysql集群

    一.环境准备 1.1系统IP设置 准备三台服务器安装Centos6.6 64位操作系统,IP地址及角色分配如下: Node                 IP Address            ...

  6. 36. CentOS-6.3安装Mysql集群

    安装要求 安装环境:CentOS-6.3安装方式:源码编译安装 软件名称:mysql-cluster-gpl-7.2.6-linux2.6-x86_64.tar.gz下载地址:http://mysql ...

  7. redis CentOS6.5安装及集群部署

    .下载redis source包 链接:https://pan.baidu.com/s/122ZCjNvjl9Jx6M2YsLrncw 密码:92ze 2.解压 tar -xzf redis-3.2. ...

  8. CentOS6.5 安装Storm集群

    1.首先安装依赖包 [root@Hadoop-NN-01 ~]# yum install uuid* [root@Hadoop-NN-01 ~]# yum install libuuid [root@ ...

  9. CentOS6.5安装HBase集群及多HMaster配置

    1.配置SSH免登录 请参考:http://www.cnblogs.com/hunttown/p/5470357.html 服务器配置: Hadoop-NN-01 主Hadoop-NN-02 备Had ...

随机推荐

  1. SVN如何忽略dll文件和bin目录

    一般来说,编译之后的结果文件都会放在bin目录下.用svn做代码管理服务器的时候,肯定不希望编译的结果文件也签入进去,因此需要在客户端配置. 在checkout目录下,在svn的子菜单中 Proper ...

  2. Python的符号、对齐和用0填充

    # 用0填充 print("用0填充:{0:010.2f}".format(math.pi)) # 用1填充(事实上,你无法实现“用1填充”,因为即使实现了,那也是另外一个数字) ...

  3. HDU 5954 - Do not pour out - [积分+二分][2016ACM/ICPC亚洲区沈阳站 Problem G]

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5954 Problem DescriptionYou have got a cylindrical cu ...

  4. flume 学习总结

    flume 总结 flume 总结 下载配置安装 1 下载 2 配置安装 flume 架构 agent 配置 1 source 配置 11 监听网络端口 12 监控文件 2 channel 配置 3 ...

  5. Converting Python Virtual Machine Code to C

    Converting Python Virtual Machine Code to C

  6. windows SysinternalsSuite

    procdump -ma -i  c\dumps 捕获系统所有程序的崩溃 SysinternalsSuite autoruns是个什么鬼

  7. 剑指Offer题解(Python版)

    https://blog.csdn.net/tinkle181129/article/details/79326023# 二叉树的镜像    链表中环的入口结点    删除链表中重复的结点    从尾 ...

  8. 转:CSS设置HTML元素的高度与宽度的各种情况总结

    1.元素不设宽度第一种情况:元素为文档流中元素<!-- 父元素宽度为100px --><div style="width:100px;">     < ...

  9. 知乎改版api接口之scrapy自动登陆

    最近使用scrapy模拟登陆知乎,发现所有接口都发生变化了,包括验证码也发生了很大变化,通过抓包分析,记录下改版后的知乎模拟登陆,废话不多说,直接上代码,亲测有效 # -*- coding: utf- ...

  10. java 线程(七)等待与唤醒

    package cn.sasa.demo5; public class Resources { private String name; private boolean gender; //标记 pu ...