Spark环境搭建(三)Spark On YARN模式
Spark环境搭建(三)Spark On YARN模式
伪分布式
配置
Spark的Master由YARN的ResourceManager替代,Worker由NodeManager替代。
spark-env.sh
1 | HADOOP_CONF_DIR=/opt/bigdata/hadoop/default/etc/hadoop |
spark-defaults.conf
1 | [zhangsan@node0 conf]$ vim spark-defaults.conf |
将spark的jar包上传到HDFS
1 | 在hdfs上创建目录hdfs:node0:9000/shared/spark-archive |
运行SparkApp
Spark Application有两种运行模式,Client和Cluster。可以通过 --deploy-mode=client/cluster来指定。在提交Application的时候,可以告诉YARN需要的计算资源。
Client模式
Client模式,driver运行在客户端进程中;
实验
1 | [zhangsan@node1 default]$ bin/spark-shell --master yarn --deploy-mode client |
Cluster模式
Cluster模式,driver运行在YARN容器中ApplicationMaster。
Mesos
略。
集群模式
如要继续如下步骤,请完成Hadoop全分布式环境的搭建。
集群规划
| Hadoop | spark | |
|---|---|---|
| node1 | NameNode, SecondNameNode, ResourceManager |
Master, Worker, HistoryServer |
| node2 | DataNode, NodeManager |
Worker |
| node3 | DataNode, NodeManager |
Worker |
Spark On YARN, 只需要在一个节点上部署Spark,Spark的Master由YARN的ResourceManager替代,Worker由NodeManager替代。
spark-env.sh
spark-defaults.conf
与伪分布式-YARN配置基本一致,不同的是,此处我们的Namenode运行在node1节点上,因此需要修改一下node0为node1,
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.