版本:hadoop2.7.1 、 scala2.11.8 、spark-2.0.2-bin-hadoop2.4
scala官方下载源:https://www.scala-lang.org/download/2.11.8.html
spark官方下载源:https://archive.apache.org/dist/spark/spark-2.0.2/
1.安装并配置scala:
- 上传scala-2.11.8.tgz到node2,解压:
tar -zxvf scala-2.11.8.tgz
,
重命名:mv scala-2.11.8 scala2118
- 配置环境变量:
source /etc/profile
- 测试运行:scala
2.安装并配置spark:
- 上传spark-2.0.2-bin-hadoop2.4.tgz到node2,解压:
tar -zxvf spark-2.0.2-bin-hadoop2.4.tgz
,重命名:mv spark-2.0.2-bin-hadoop2.4 spark20224
- 配置环境变量:
source /etc/profile
- 测试运行:
spark-shell
3.配置spark集群(将node2设为master节点) - 进入spark的conf目录,输入
cp spark-env.sh.template spark-env.sh
- vi spark-env.sh,输入内容
- 复制slaves.template并重命名:
cp slaves.template slaves
- vi slaves
4. 将 node2上的 scala 发送到 node3, node4中
scp -r /usr/local/scala2118 node4:/usr/local/
- 参照上面的配置环境变量
- 测试
scala
5. 将 node2上的 spark发送到 node3, node4中,并配置好环境变量
6. 确保 hadoop集群先启动, 再进入到 spark安装目录的 sbin下,使用以下命令启动spark集群
./start-all.sh
在node2,3,4上查看进程:jps
- node2 上有 Master
- node3 上有 Worker
- node4 上有 Worker
查看Master的 spark UI:http://node2:8080/
8.升级成高可用集群
- 停止spark master,worker,在spark的sbin目录下运行:
./stop-all.sh
- 在node1上安装并配置scala
- 在node1上安装并配置spark
- 修改spark-env.sh配置文件
- 修改slaves的配置文件
#localhost
node1
node2
node3
node4
- 将 spark-env.sh, slaves 发送到 node2, 3,4
scp -r spark-env.sh/ root@node2:$PWD
scp -r spark-env.sh/ root@node3:$PWD
scp -r spark-env.sh/ root@node4:$PWD
scp -r slaves root@node2:$PWD
scp -r slaves root@node3:$PWD
scp -r slaves root@node4:$PWD
- 在node1的 sbin 中启动集群
./start-all.sh
- 在 node2 的sbin中启动
./start-master.sh
- 访问
http://node1:8080
http://node2:8080