spark集群模式

2020-07-15 13:41发布

spark中yarn on cluster和yarn on client有什么区别?

spark中yarn on cluster和yarn on client有什么区别?

2条回答
yangzp
2020-08-26 13:50

运行环境

模式

描述

Local

本地模式

常用于本地开发测试,如在eclipse,idea中写程序测试等。本地还分为local单线程和local-cluster多线程local[*]

Standalone

集群模式

Spark自带的一个资源调度框架,支持完全分布式。存在的Master单点故障可由ZooKeeper来实现HA

Yarn

集群模式

运行在yarn资源管理器框架之上,由yarn负责资源管理,Spark负责任务调度和计算

yarn-client


以client模式连接到YARN cluster. 集群的位置基于HADOOP_CONF_DIR 变量找到

yarn-cluster


以cluster模式连接到YARN cluster. 集群的位置基于HADOOP_CONF_DIR 变量找到

Mesos

集群模式

运行在mesos资源管理器框架之上,由mesos负责资源管理,Spark负责任务调度和计算

Kubernetes

集群模式

运行在Kubernetes资源管理的集群上,目前Kubernetes调度程序是实验性的

1Local模式: Local模式就是运行在一台计算机上的模式,通常就是用于在本机上练手和测试。它可以通过以下集中方式设置master

local: 所有计算都运行在一个线程当中,没有任何并行计算,通常我们在本机执行一些测试代码,或者练手,就用这种模式;

local[K]: 指定使用几个线程来运行计算,比如local[4]就是运行4worker线程。通常我们的cpu有几个core,就指定几个线程,最大化利用cpu的计算能力;

local[*]: 这种模式直接帮你按照cpu最多cores来设置线程数了。

2Standalone模式: 构建一个由Master+Slave构成的Spark集群,Spark运行在集群中。

image.png

3Yarn模式: Spark客户端直接连接Yarn不需要额外构建Spark集群。yarn-clientyarn-cluster两种模式,主要区别在于:Driver程序的运行节点。

yarn-clientDriver程序运行在客户端,适用于交互、调试,希望立即看到app的输出

yarn-clusterDriver程序运行在由RMResourceManager)启动的APAPPMaster中,这种模式适用于生产环境

image.png

4Mesos模式:Spark客户端直接连接Mesos不需要额外构建Spark集群。国内应用比较少,更多的是运用yarn调度。


一周热门 更多>