本文主要介绍“什么是Spark的集群部署模式”。在日常操作中,相信很多人对Spark的集群部署模式存在哪些问题有所怀疑。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮助大家解答“Spark的集群部署模式有哪些”的疑惑!接下来,请和边肖一起学习!
Spark有三种集群部署模式,即集群管理模式。它们是独立的,纱和介子。这三种模式实际上是主/从模式。
三种集群资源管理概述
Spark Standalone
作为Spark的一部分,Standalone是一个简单的集群管理器。它具有对工作人员故障灵活响应的高可用性、管理每个应用程序资源的能力,以及与现有Hadoop一起运行和访问HDFS数据的能力。该版本包括一些可以在本地或AmazonEC2云计算中轻松部署的脚本。它可以在Linux、Windows或Mac OSX上运行.
Apache Mesos
Apache Mesos,分布式系统内核,带HA的主从,可以管理各个应用的资源,对Docker容器有很好的支持。它可以运行Spark work、Hadoop的MapReduce或任何其他服务应用程序。它有Java、Python和C语言的API。它可以在Linux或Mac OSX上运行.
Hadoop YARN
Hadoop YARN是一个用于作业调度和集群资源管理的分布式计算框架,以HA为主、从,支持不安全模式下的Docker容器、安全模式下的Linux和Windows容器执行器以及可插拔调度器。它可以在Linux和Windows上运行。
集群资源调度能力的对比
模式资源调度能力比对SecurityHA
独立仅支持先进先出调度器,单用户串行。默认情况下,应用程序可以使用所有节点的所有资源。节点节点和cpu内存的限制可以通过SparkConf控制共享秘密的单点恢复,SSL为数据加密备用主控与zookeeper和本地文件系统。
纱支持资源调度器和应用程序管理器应用程序管理器。CapacityScheduler和FairScheduler在队列范围内,资源是共享的。Kerberos .用于SSL数据加密的主动/备用切换的HA模式取决于zookeeper,但不需要单独的zkfc进程。
Mesos看下面:插件安全模块,默认赛勒斯SASL,SSL进行数据加密一主多备,领袖选举基于zookeeper。
Mesos的资源调度能力描述
粗粒度模式:每个应用的运行环境由一个Dirver和几个executor组成,其中每个executor占用几个资源,可以在内部运行多个Task(对应多少槽)。在应用程序的每一个任务正式运行之前,都需要申请运行环境中的所有资源,这些资源在运行过程中应该始终被占用,即使不被使用,* * *程序运行后,这些资源应该被回收。比如你提交一个应用,你指定用5个执行器来运行你的应用,每个执行器占用5GB内存和5个CPU,每个执行器内部设置了5个槽,所以Mesos需要为执行器分配资源,先启动它们,然后开始调度任务。另外,在程序运行过程中,mesos的主从并不知道执行器内部各个任务的运行状态,执行器通过内部通信机制直接向Driver报告任务状态。在某种程度上,可以认为每个应用程序都使用mesos来构建一个虚拟集群供自己使用。
细粒度模式:鉴于粗粒度模式会浪费大量资源,Spark On Mesos还提供了另一种调度模式:细粒度模式,类似于现在的云计算,思路是按需分配。与粗粒度模式一样,当应用程序启动时,执行器将首先启动,但每个执行器占用的资源只是其自身操作所需的资源,无需考虑将来要运行的Tasks。之后,mesos会为每个执行器动态分配资源,每次分配后可以运行一个新的任务,单个任务完成后可以立即释放相应的资源。每个任务将向Mesos从机和Mesos主机报告状态,这有利于更细粒度的管理和容错。这种调度模式类似于MapReduce调度模式,每个Task都是完全独立的。优点是便于资源控制和隔离,缺点也很明显,短作业长延迟运行。
至此,“Spark有哪些集群部署模式”的研究结束,希望能解决大家的疑惑。理论和实践的结合可以帮助你学得更好。去试试吧!如果你想继续学习更多的相关知识,请继续关注网站,边肖会继续努力,给大家带来更多实用的文章!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/145794.html