说明:在window上安装spark跟linux上差不多,只需安装cygwin模拟linux环境就可以了。
安装清单:
1. jdk-8u111-linux-i586.tar.gz
2. scala-2.10.6.tgz
3. hadoop-2.6.0.tar.gz
4. spark-2.0.1-bin-hadoop2.7.tgz
这些都可以从官网下载,这里附百度云盘链接:链接: http://pan.baidu.com/s/1hsyT3k4 密码: i5sq
所有安装包我放在 /home/song/spark/package 目录下
所有安装我均安装在 /home/song/spark 目录下
1.安装jdk:切换到安装目录 - 解压 - 修改环境变量
cd /home/song/spark
tar -xzvf ./package/jdk-8u73-linux-x64.tar.gz
sudo vi /etc/profile
备注1: Ubuntu系统,可能会出现vi编辑器方向键不能正常使用,解决方法:
方法1:
sudo apt-get remove vim-common
sudo apt-get install vim
方法2:
sudo apt-get update
sudo apt-get install vim
编辑 /etc/profile 文件。(备注2:因为修改权限的问题需要sudo执行,负责可能会出现不能保存的问题)
export JAVA_HOME=/home/song/spark/jdk1.8.0_111/
export JRE_HOME=/home/song/spark/jdk1.8.0_111/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
保存,更新 /etc/profile 文件
source /etc/profile
查看安装是否成功
java -version
2.配置 ssh localhost
备注3:因为单机下只能配置单节点,不能配置master与多个slave
安装启动ssh
sudo apt-get update
sudo apt-get install openssh-server
sudo /etc/init.d/ssh start
生成添加秘钥和公钥(一路回车):
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
检查ssh能否登陆localhost
ssh localhost
exit
3.安装hadoop2.6.0
解压到安装目录:
cd /home/song/spark
tar -xzvf ./package/hadoop-2.6.0.tar.gz
修改 /etc/profile 文件,添加java环境变量
export HADOOP_HOME=/home/song/spark/hadoop-2.6.0
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
配置 /home/song/spark/hadoop-2.6.0/etc/hadoop/hadoop-env.sh 文件
cd /home/song/spark/hadoop-2.6.0/etc/hadoop
vi hadoop-env.sh
文件最后加上Java环境
export JAVA_HOME=/home/song/spark/jdk1.8.0_111/
修改Configuration(配置)文件:
(1) 修改:core-site.xml
fs.default.name
hdfs://localhost:9000
(2) 修改 hdfs-site.xml
dfs.replication
1 # 配置的备份方式,在单机hadoop中,设置为1(默认为3)
dfs.name.dir
file:///home/song/spark/hadoopdata/hdfs/namenode
#这里路径要换成自己数据存放路径
dfs.data.dir
file:///home/song/spark/hadoopdata/hdfs/datanode
#这里路径要换成自己数据存放路径
(3) 修改 mapred-site.xml
mapreduce.framework.name
yarn
(4) 修改 yarn-site.xml
yarn.nodemanager.aux-services
mapreduce_shuffle
初始化hadoop(在bin目录下知道hdfs)
cd /home/song/spark/hadoop-2.6.0/bin
./hdfs namenode -format
启动
cd /home/song/spark/hadoop-2.6.0/sbin
./start-all.sh
停止
./start-all.sh
jps查看后台进程
2907 Jps
2323 ResourceManager
2172 SecondaryNameNode
1729 NameNode
2442 NodeManager
检查WebUI,浏览器打开端口: http://localhost :8088
port 8088: cluster and all applications
port 50070: Hadoop NameNode
port 50090: Secondary NameNode
port 50075: DataNode
4.安装scala-2.10.6
解压scala,安装到指定目录
cd /home/song/spark
tar -xzvf ./package/scala-2.10.6.tgz
sudo vi /etc/profile
在 /etc/profile 文件下,添加scala环境变量
export SCALA_HOME=/home/song/spark/scala-2.10.6
export PATH=$SCALA_HOME/bin:$PATH
保存,更新
source /etc/profile
检查
scala -version
5.安装spark
解压spark安装包到指定安装目录
cd /home/song/spark
tar -xzvf ./package/spark-2.0.1-bin-hadoop2.7.tgz
mv spark-2.0.1-bin-hadoop2.7 spark-2.0.1
sudo vi /etc/profile
在 /etc/profile 文件的末尾添加环境变量:
export SPARK_HOME=/home/song/spark/spark-2.0.1
export PATH=$SPARK_HOME/bin:$PATH
保存,更新
source /etc/profile
在conf目录下复制并重命名 spark-env.sh.template 为 spark-env.sh :
cp spark-env.sh.template spark-env.sh
vi spark-env.sh
在 spark-env.sh 中添加:
export JAVA_HOME=/home/song/spark/jdk1.8.0_111/
export SCALA_HOME=/home/song/spark/scala-2.10.6
export SPARK_MASTER_IP=localhost
export SPARK_WORKER_MEMORY=1G
启动
cd /home/song/spark/spark-2.0.1
./start-all.sh
停止
./stop-all.sh
运行实例
./run-example SparkPi
得到结果:
Pi is roughly 3.13927
检查WebUI,浏览器打开端口: http://localhost :8080
我只是个小白,写博客是为了以后自己能够翻阅方便,主要参考一下内容:
http://www.tuicool.com/articles/QBRJnen
http://wuchong.me/blog/2015/04/04/spark-on-yarn-cluster-deploy/
Hadoop实战