spark的docker安装(单节点适合开发环境)

说明:spark安装时会自动安装hadoop,不用再单独安装hadoop,安装之前确保设备至少有4GB内存,推荐8GB
安装环境
centos7.2
docker(这个安装请参考我的另一篇博客https://blog.csdn.net/qq_16563637/article/details/81699251)
本人亲自测试能够正常使用
下载spark

docker pull sequenceiq/spark:1.6.0

docker运行

docker run -it -p 4040:4040 -p 7077:7077 -p 8088:8088 -p 8081:8081 -p 8080:8080 -p 8042:8042 -p 8030:8030 -p 8031:8031 -p 8040:8040 -p 9000:9000 -p 49707:49707 -p 50010:50010 -p 50070:50070 -p 50075:50075 -p 50020:50020 -p 50090:50090 --name spark --rm sequenceiq/spark:1.6.0 /bin/bash

设置spark
进入容器(docker run运行后会直接进入容器,该步骤可以省略)
docker exec -it 容器名 /bin/bash
docker exec -it 05d499dd260f /bin/bash

cd /usr/local/spark-1.6.0-bin-hadoop2.6
cd conf
cp spark-env.sh.template spark-env.sh
vi spark-env.sh

在最底部添加

export JAVA_HOME=/usr/java/jdk1.7.0_51
export SPARK_MASTER_PORT=7077

保存

cp slaves.template slaves
vi slaves

去掉localhost
添加192.168.1.103
保存

cd ../sbin
./stop-all.sh
./start-master.sh
./start-slave.sh 192.168.1.103:7077 --webui-port 8081 

为了正常使用配置环境变量,进入容器中设置
docker exec -it 05d499dd260f /bin/bash

vi /etc/profile
export SPARK_HOME=/usr/local/spark-1.6.0-bin-hadoop2.6
export HADOOP_HOME="/usr/local/hadoop-2.6.0"
export PATH=$PATH:$SPARK_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

保存:wq
使配置文件生效

source /etc/profile

测试spark是否安装OK
执行下面命令(该算法是利用蒙特·卡罗算法求PI)

/usr/local/spark-1.6.0-bin-hadoop2.6/bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master spark://192.168.1.103:7077 \
--executor-memory 1G \
--total-executor-cores 2 \
/usr/local/spark-1.6.0-bin-hadoop2.6/lib/spark-examples-1.6.0-hadoop2.6.0.jar \
100

如果没有报错说明spark安装正常
打开spark-shell
spark-shell
出现 scala> 说明安装正常
开始检查hadoop是否正常
ctrl+C退出spark-shell
查看命令行是否能用

hadoop version

如果输出版本信息继续输入

cd /usr/local/hadoop-2.6.0
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar grep input output 'dfs[a-z.]+'

如果输出mapreduce程序执行说明安装正常
查看spark 管控台
http://192.168.1.103:8080/
查看hadoop 管控台
http://192.168.1.103:50070
结束

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值