Hadoop2.7.1已经配置完毕。
Hosts分配如下:
master 172.16.15.140
slave1 172.15.15.141
slave2 172.16.15.142
一、安装Scala:
下载地址:http://www.scala-lang.org/download/2.11.7.html
(scala-2.11.7.tgz
)以下全部使用root权限操作。
(1)创建/usr/scala文件夹:
mkdir /usr/scala
(2)将压缩包解压至/usr/scala 目录:
tar zxvf /home/hadoop/scala-2.11.7.tgz -C /usr/scala
(3)设置环境变量:
vim /etc/profile
#追加如下内容
export SCALA_HOME=/usr/scala/scala-2.11.7
export PATH=$PATH:$SCALA_HOME/bin
(4)使之生效(不用root权限):
source /etc/profile
(5)测试Scala是否安装配置成功(不用root权限):
scala -version
二、安装Spark
官网下载spark1.5.0:
spark-1.5.0-bin-hadoop2.6.tgz
以下全部使用root权限操作
(1)将压缩包解压至/usr目录:
tar zxvf /home/hadoop/spark-1.5.0-bin-hadoop2.6.tgz -C /usr/spark
(2)将spark文件夹授权给hadoop用户:
chown -R hadoop:hadoop /usr/spark/
(3)设置环境变量:
vim /etc/profile
#追加如下内容
export SPARK_HOME=/usr/spark/spark-1.5.0
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
(4)使之生效(不用root权限)
source /etc/profile
(5)测试Spark是否安装配置成功(不用root权限):
spark-shell --version
(6)运行SparkPi(不用root权限)
run-example org.apache.spark.examples.SparkPi 10
(7)以下不用root权限,使用hadoop用户。配置Spark:
修改spark-env.sh
cd /usr/spark/spark-1.5.0/conf/ cp spark-env.sh.template spark-env.sh vi spark-env.sh # 追加如下内容 export SCALA_HOME=/usr/scala/scala-2.11.7 export JAVA_HOME=/usr/java/jdk1.7.0_80 export SPARK_MASTER_IP=172.16.15.140 export SPARK_WORKER_MEMORY=1024m
启动Spark
$SPARK_HOME/sbin/start-all.sh
提交任务到Spark集群
spark-submit --master spark://172.16.15.140:7077 --class org.apache.spark.examples.SparkPi --name Spark-Pi /usr/spark/lib/spark-examples-1.5.0-hadoop2.6.0.jar
- 使用web查看Spark运行状态
http://master:8080/
三、与Hadoop结合使用
- 分别开启Hadoop集群和Spark集群。
$HDOOP_HOME/sbin/start-dfs.sh
$HDOOP_HOME/sbin/start-yarn.sh
$SPARK_HOME/sbin/start-all.sh
- 在Yarn中运行Spark任务,编辑spark-env.sh:
vim /usr/spark/spark-1.5.0/conf/spark-env.sh
#追加如下内容
export HADOOP_CONF_DIR=/home/hadoop/hadoop-2.7.1/etc/hadoop
- 提交Spark任务到yarn中
spark-submit --master yarn-cluster --class org.apache.spark.examples.SparkLR --name SparkLR /usr/spark/lib/spark-examples-1.5.0-hadoop2.6.0.jar
- 使用web查看任务运行状态(Hadoop的任务监控WebUI)
http://master:8088/
- 结合HDFS,Spark的输入是HDFS的文件
spark-submit --master yarn-cluster --class org.apache.spark.examples.JavaWordCount --name JavaWordCount /usr/spark/lib/spark-examples-1.5.0-hadoop2.6.0.jar hdfs://master:9000/data/
spark-submit工具的参数说明: