[bigdata] spark集群安装及测试

在spark安装之前,应该已经安装了hadoop原生版或者cdh,因为spark基本要基于hdfs来进行计算。

1. 下载

spark:  http://mirrors.cnnic.cn/apache//spark/spark-1.4.1/spark-1.4.1-bin-hadoop2.3.tgz

scala:   http://downloads.typesafe.com/scala/2.10.5/scala-2.10.5.tgz?_ga=1.171364775.609435662.1441620697

注意scala版本要与spark版本匹配,具体spark版本需要什么版本的scala可以官方文档上查看,如Spark 1.4.1需要 2.10.x的scala。

“ Spark runs on Java 6+, Python 2.6+ and R 3.1+. For the Scala API, Spark 1.4.1 uses Scala 2.10. You will need to use a compatible Scala version (2.10.x)” [http://spark.apache.org/docs/latest/]

 

2. 集群所有服务器上解压

tar -xvf /opt/app/spark-1.4.1-bin-hadoop2.3.tgz
tar -xvf /opt/app/scala-2.10.5.tgz

 

3. 配置

假设集群有三台机器hadoop1,hadoop2,hadoop3,其中hadoop1作为master服务器,hadoop1,hadoop2,hadoop3作为slave服务器

1) 配置ssh免密码登陆,master与slave通信需要ssh通信,设置master到slaves服务器的ssh免密码登陆

在master hadoop1上执行

ssh-keygen-trsa 

将 ~/.ssh/id_rsa.pub 的内容追加到三台slave服务器上的~/.ssh/authorized_keys文件。

hadoop1也需要配置,否则启动worker的时候会报权限问题。

2) 所有服务器上配置环境变量

vim /etc/profile

export SCALA_HOME=/opt/app/scala-2.10.5

export SPARK_HOME=/opt/app/spark-1.4.1-bin-hadoop2.3

export PATH=$SCALA_HOME/bin:$SPARK_HOME/bin:$PATH

3)所有服务器上配置spark

[root@hadoop1 conf]# pwd
/opt/app/spark-1.4.1-bin-hadoop2.3/conf
[root@hadoop1 conf]# cp spark-env.sh.template spark-env.sh
[root@hadoop1 conf]# cp slaves.template slaves

vim spark-env.sh

export JAVA_HOME=/opt/app/jdk1.7.0_45
export SCALA_HOME=/opt/app/scala-2.10.5
export SPARK_HOME=/opt/app/spark-1.4.1-bin-hadoop2.3
export SPARK_MASTER_IP=10.200.8.74
export SPARK_WORKER_MEMORY=1g
export HADOOP_CONF_DIR=/etc/hadoop/conf
export SPARK_LIBRARY_PATH=$SPARK_HOME/lib
export SCALA_LIBRARY_PATH=$SPARK_LIBRARY_PATH

vim slaves

hadoop1
hadoop2
hadoop3

 

4. 启动

[root@hadoop1 spark-1.4.1-bin-hadoop2.3]# sbin/start-all.sh 
[root@hadoop1 spark-1.4.1-bin-hadoop2.3]# sbin/stop-all.sh   //停止

 

5. 验证测试

通过jps命令查看启动的spark进程。

hadoop1上已启动Master与Worker进程

复制代码
[root@hadoop1 spark-1.4.1-bin-hadoop2.3]# jps
15663 Bootstrap
13356 QuorumPeerMain
6498 Master
14194 RunJar
45397 jar
36966 Main
16028 Main
13862 JobHistoryServer
14198 RunJar
15920 Main
6681 Worker
14196 RunJar
15922 Main
8241 Jps
17013 Kafka
15470 Bootstrap
15981 AlertPublisher
14001 DataNode
15951 EventCatcherService
13434 Bootstrap
13470 SecondaryNameNode
复制代码

hadoop2,hadoop3上已启动Worker进程

复制代码
[root@hadoop2 conf]# jps
3004 Worker
19548 QuorumPeerMain
31525 troy-recv-3.0.0-SNAPSHOT.jar
16302 Kafka
23010 Bootstrap
5478 Application
20054 NodeManager
19745 DataNode
4381 Jps
复制代码

通过执行样例程序,成功执行说明一切安装部署OK

bin/run-example org.apache.spark.examples.SparkPi

通过web界面查看集群状态: http://master_ip:8080/

 

至此,spark集群安装部署完成。

 

posted @   【雨歌】  阅读(545)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示