Spark集群搭建

集群规划:
            节点         Spark
          node1       1(master)
          node2       1(worker)
          node3       1(worker)
          node4       1  (客户端)

1、上传安装包,解压到/home/目录下;
2、在hadoop1主机上,进入/home/spark-1.6.0-bin-hadoop2.6/conf 目录下,修改 spark-env.sh 文件(如果没有该文件,则将spark-env.sh.template修改为spark-env.sh),添加如下配置:
export SPARK_MASTER_IP=node1
export SPARK_MASTER_PORT=7077
export SPARK_WORKER_CORES=2
export SPARK_WORKER_MEMORY=1g
注:7077是master节点与worker节点进行通信的端口,默认是7077。另外spark提供了webUI的界面,默认端口是8080,在${spark-home}/bin/start-master.sh中 配置。
3、在同一个目录下,修改slaves文件(若没有slaves文件,则修改slaves.template为slaves),删除原有配置,添加如下配置:
node2
node3
4、将hadoop1上配置好的安装包,同步至hadoop2、hadoop3两台主机上。
[root@node1 home]# pwd
/home
[root@node1 home]# scp -r spark-1.6.0-bin-hadoop2.6/ node2:`pwd`
[root@node1 home]# scp -r spark-1.6.0-bin-hadoop2.6/ node3:`pwd`
5、启动Spark集群:在master节点(node1 )上,进入/home/spark-1.6.0-bin-hadoop2.6/sbin 目录,执行启动命令:
[root@node1 sbin]# ./start-all.sh
注意:启动的时候,要注意添加路径,因为脚本名称和hadoop集群的脚本名称相同,故此处要指明脚本的路径。
6、使用jps命令查看各节点上的进程,验证集群是否启动成功。
访问Web管理界面,验证是否搭建成功。http://192.168.152.101:8080/




 在实际使用的时候,一般不在spark集群(即本文的 node1~node3 主机) 直接提交作业,而是在一台专门的客户端加上去提交。 下面以 node4 作为客户端,说明客户端的搭建和使用方式。
其实spark客户端的搭建与使用十分简单,只需要把spark的安装包拷贝至客户端上即可, 拷贝完成后,就可以在客户端进行提交任务的操作。
在node1主机上,执行如下命令,将spark的安装包拷贝至客户端:
scp -r /home/spark-1.6.0-bin-hadoop2.6  node4:`pwd`



Spark任务提交命令( standalone模式下):
./spark-submit --master spark://node1:7077 --deploy-mode client --jars ../lib/spark-examples-1.6.0-hadoop2.6.0.jar --class org.apache.spark.examples.SparkPi 100





Spark on Yarn:
    说明:
          1、在standalone模式下,资源调度与任务执行的节点分别叫做 masterworker ;
       在yarn模式下,负责资源调度与任务执行的接口分别叫做 resourcemanager 和 nodemananger。
    2、将spark应用提交到yarn上时,没有用到standalone集群,所以standalone集群可以关闭。
    
    要将spark应用提交到yarn上运行, 需进行两项准备工作:
1、 提前将yarn和hdfs启动( 启动hdfs的目的在于:在提交任务时,spark框架会将jar包上传到hdfs集群上,这样各个计算节点就可以从hdfs集群上获取jar包,以进行计算任务,hdfs此时的作用相当于ftp服务器 ),可将hadoop集群启动,也可以单独启动hdfs和yarn。
start-all.sh
2、修改客户端配置:spark-env.sh , 指定hadoop配置文件的目录( 务执行前,会向resourcemanager申请资源。spark框架会从此项配置中获取resourcemanager运行在哪个节点上)。
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
    准备工作做好之后,就可以提交命令,将spark应用提交到yarn上运行了
./spark-submit --master yarn  --jars ../lib/spark-examples-1.6.0-hadoop2.6.0.jar --class org.apache.spark.examples.SparkPi 100
    关于 --master的说明,  有三种取值:
            (a) yarn-client       以客户端方式提交
            (b) yarn-cluster     以集群方式提交
            (c) yarn                 等同于 yarn-client



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值