环境:

linux

spark1.6.0

hadoop2.2.0

一.安装scala(每台机器)
 
1.下载scala-2.11.0.tgz
 
放在目录: /opt下,tar -zxvf scala-2.11.0.tgz
 
2.在hadoop用户下
 
vim /etc/profile
3.在profile文件加入Scala路径
 
 export SCALA_JAVA=/opt/scala-2.11.
export PATH=$PATH:$SCALA_JAVA/bin 
 
4.使配置环境生效
source /etc/profile
5.检验scala是否安装成功
[hadoop@testhdp01 ~]$ scala -version
Scala code runner version 2.10.1 -- Copyright 2002-2013, LAMP/EPF
成功
 
 
二.安装spark
 
1.编译spark1.6.0(在linux下编译很多次都编译不成功,所以我放到mac下编译的。)
 
进入spark目录,然后执行以下命令:
build/mvn -Pyarn -Phadoop-2.2 -Dhadoop.version=2.2. -DskipTests clean package
./make-distribution.sh --name custom-spark --tgz -Psparkr -Phadoop-2.2 -Phive -Phive-thriftserver -Pyarn
mvn -Pyarn -Phadoop-2.2 -Dhadoop.version=2.2. -Phive -Phive-thriftserver -DskipTests clean package
 
用idea编译方法:
 
2.配置spark
 
cd /opt/spark-1.6.-bin-hadoop2.2.0/conf

cp spark-env.sh.template spark-env.sh

cp slaves.template slaves

vim spark-env.sh
 
加入
export SCALA_HOME=/opt/scala-2.10.
export JAVA_HOME=/opt/jdk1..0_51
export SPARK_MASTER_IP=192.168.22.7
export HADOOP_HOME=/opt/hadoop-2.2.
export SPARK_HOME=/opt/spark-1.6.-bin-hadoop2.2.0
export SPARK_LIBRARY_PATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$HADOOP_HOME/lib/native
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop/
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native
export SPARK_JAR=$SPARK_HOME/lib/spark-assembly-1.6.-hadoop2.2.0.jar

mac 下配置如下,在文件头加入

#jdk
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1..0_79.jdk/Contents/Home
export PATH=$PATH:$JAVA_HOME/bin #scala
export SCALA_HOME=/usr/local/Cellar/scala-2.10.
export PATH=$PATH:$SCALA_HOME/bin #hadoop
export HADOOP_HOME=/usr/local/Cellar/hadoop/2.7./libexec
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin #hive
export HIVE_HOME=/usr/local/Cellar/hive/2.0./libexec
export SPARK_CLASSPATH=$HIVE_HOME/lib/mysql-connector-java-5.1..jar:$SPARK_CLASSPATH #spark
export SPARK_HOME=/usr/local/Cellar/spark-1.3.-bin-hadoop2.
export PATH=$PATH:$SPARK_HOME/bin

3.配置spark 支持hive

vim spark-env.sh
export HIVE_HOME=/opt/apache-hive-0.13.
export SPARK_CLASSPATH=$HIVE_HOME/lib/mysql-connector-java-5.1..jar:$SPARK_CLASSPATH
拷贝apache-hive-0.13.1-bin/conf/hive-site.xml到$SPARK_HOME/conf下
cp /opt/apache-hive-0.13./conf/hive-site.xml conf/
在/etc/profile.d目录下创建hive.sh文件
加入环境变量设置
#!/bin/bash
export HIVE_HOME=/opt/apache-hive-0.13.
export PATH=$HIVE_HOME/bin:$PATH
是环境变量生效
source /etc/profile.d/hive.sh
4.配置集群
进入spark的conf目录
vim slaves
删除localhost
加入子节点的名字
testhdp02
testhdp03
 
配置spark系统环境(三个子节点都要配置)
sudo su - root
sudo vim /etc/profile
export SPARK_HOME=/opt/spark-1.5.-bin-hadoop2.2.0
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
 
3.把配置好的spark打包,发送到子节点
 
 
 
三:错误分析
 
bin/spark-shell
运行
val textFile = sc.textFile("README.md")
textFile.count()
 
出现如下错误:
 
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:)
at java.lang.reflect.Method.invoke(Method.java:)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:)
... more
Caused by: java.lang.IllegalArgumentException: Compression codec com.hadoop.compression.lzo.LzoCodec not found.
at org.apache.hadoop.io.compress.CompressionCodecFactory.getCodecClasses(CompressionCodecFactory.java:)
at org.apache.hadoop.io.compress.CompressionCodecFactory.<init>(CompressionCodecFactory.java:)
at org.apache.hadoop.mapred.TextInputFormat.configure(TextInputFormat.java:)
... more
Caused by: java.lang.ClassNotFoundException: Class com.hadoop.compression.lzo.LzoCodec not found
at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:)
at org.apache.hadoop.io.compress.CompressionCodecFactory.getCodecClasses(CompressionCodecFactory.java:)
... more
 
解决方案:
修改saprk-env.sh文件
 
export SCALA_HOME=/opt/scala-2.10.
export JAVA_HOME=/opt/jdk1..0_51
export SPARK_MASTER_IP=192.168.22.7
export HADOOP_HOME=/opt/hadoop-2.2.
export SPARK_HOME=/opt/spark-1.6.-bin-hadoop2.2.0
export SPARK_LIBRARY_PATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$HADOOP_HOME/lib/native
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop/
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native
export SPARK_JAR=$SPARK_HOME/lib/spark-assembly-1.6.-hadoop2.2.0.jar
export SPARK_CLASSPATH=$SPARK_CLASSPATH:$HADOOP_HOME/share/hadoop/yarn/*:$HADOOP_HOME/share/hadoop/yarn/lib/*:$HADOOP_HOME/share/hadoop/common/*:$HADOOP_HOME/share/hadoop/common/lib/*:$HADOOP_HOME/share/hadoop/hdfs/*:$HADOOP_HOME/share/hadoop/hdfs/lib/*:$HADOOP_HOME/share/hadoop/mapreduce/*:$HADOOP_HOME/share/hadoop/mapreduce/lib/*:$HADOOP_HOME/share/hadoop/tools/lib/*:$SPARK_HOME/lib/*
 
 
 
 
 
 
 
 
 
 
 

linux上配置spark集群的更多相关文章

  1. linux下配置tomcat集群的负载均衡

    linux下配置tomcat集群的负载均衡 一.首先了解下与集群相关的几个概念集群:集群是一组协同工作的服务实体,用以提供比单一服务实体更具扩展性与可用性的服务平台.在客户端看来,一个集群就象是一个服 ...

  2. 配置spark集群

    配置spark集群 1.配置spark-env.sh [/soft/spark/conf/spark-env.sh] ... export JAVA_HOME=/soft/jdk 2.配置slaves ...

  3. Linux上安装Hadoop集群(CentOS7+hadoop-2.8.0)--------hadoop环境的搭建

    Linux上安装Hadoop集群(CentOS7+hadoop-2.8.0)------https://blog.csdn.net/pucao_cug/article/details/71698903 ...

  4. Linux中安装配置spark集群

    一. Spark简介 Spark是一个通用的并行计算框架,由UCBerkeley的AMP实验室开发.Spark基于map reduce 算法模式实现的分布式计算,拥有Hadoop MapReduce所 ...

  5. 安装配置Spark集群

    首先准备3台电脑或虚拟机,分别是Master,Worker1,Worker2,安装操作系统(本文中使用CentOS7). 1.配置集群,以下步骤在Master机器上执行 1.1.关闭防火墙:syste ...

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

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

  7. 本地开发spark代码上传spark集群服务并运行

    打包 :右击.export.Java .jar File 把TestSpark.jar包上传到spark集群服务器的 spark_home下的myApp下: 提交spark任务: cd /usr/lo ...

  8. win系统下的eclipse连接和使用linux上的hadoop集群

    准备工作 先在win系统的hosts文件中加入下面内容 10.61.6.164master     //hadoop集群的master节点 一.首先在eclipse上安装hadoop插件 下载hado ...

  9. Linux 下配置zookeeper集群

    我们首先准备三台服务器,IP地址分别如下(前提是要先安装JDK) 192.168.100.101 192.168.100.102 192.168.100.103 1.配置主机名到IP地址的映射(此步骤 ...

随机推荐

  1. 【学习笔记】深入理解js闭包

    本文转载: 一.变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域. 变量的作用域无非就是两种:全局变量和局部变量. Javascript语言的特殊之处,就在于函数内部可以直接 ...

  2. NIO入门之轻松读取大文件

    NIO入门之轻松读取大文件 今天同事碰到了一个问题,从游戏服务器下载下来的输出log有一个多G大.用记事本打不开,EditPlus也打不开,都提示文件太大.用word也打不开,提示文件大于512M.打 ...

  3. DROP AGGREGATE - 删除一个用户定义的聚集函数

    SYNOPSIS DROP AGGREGATE name ( type ) [ CASCADE | RESTRICT ] DESCRIPTION 描述 DROP AGGREGATE 将删除一个现存聚集 ...

  4. Vue 在beaforeCreate时获取data中的数据

    众所周知,vue在beforecreate时期是获取不到data中的 数据的 但是通过一些方法可以实现在beforecreate时获取到data中的数据 暂时想到两种放发可以实现,vue在before ...

  5. window Chrome 下允许跨域访问服务端接口设置

    关闭chrome,使用cmd命令进入chrome安装目录cd C:\Program Files (x86)\Google\Chrome\Application 然后使用命令打开chromechrome ...

  6. 两个div之间的蜜汁间隙

    两个div左右相邻,想让他们紧挨在一起 加了margin:0:padding:0: 不知道为什么还是会有间隙. 然后在两个div的父元素加了:font-size:0: 就终于挨在一起惹.

  7. Java sleep方法的作用(sleep())

    sleep() 方法的作用是在指定的毫秒数内让当前“正在执行的线程”休眠(暂停执行).这个“正在执行的线程”是指 this.currentThread() 返回的线程. 例 1 下面通过一个案例来理解 ...

  8. Spring-1-IOC

    IOC与DI的区别? IOC:控制反转(Inversion of Control是面向对象的一种设计原则,可以用来降低计算机之间的耦合度,其中最常见的是依赖注入).是实现的目标 DI:是实现IOC的一 ...

  9. Exploded location overlaps an existing deployment解决办法

    项目->properties->MyEclipse->Web->Web Context-root的名字为重命名之后的名字即可

  10. java值的传递

    public class Example { String str = new String("good"); char[] ch = {'a','b','c'}; public ...