【摘要】:集群的部署图示例如图7-1所示。图7-1 一种可能的集群部署图示例图中的部分模块在本章前面部分已经介绍过,此处重点介绍这些模块在集群资源调度过程中所起到的作用。Worker节点集群上的计算和内存资源实际的拥有者,受Master节点统一管理。
集群的部署图示例如图7-1所示。
图7-1 一种可能的集群部署图示例
图中的部分模块在本章前面部分已经介绍过,此处重点介绍这些模块在集群资源调度过程中所起到的作用。
(1)Master节点
Master节点有两个用途:一是应用程序调度,Master节点接收用户提交的应用程序,并将应用程序交付执行,当有多个程序提交时会对这些应用程序执行的先后顺序进行调度;二是资源调度,由于集群中的资源实际上指的是Worker节点上的计算和内存资源,因此Master节点实际上是对Worker节点进行调度,注册和管理集群中所有的Worker节点。
(2)Worker节点(www.xing528.com)
集群上的计算和内存资源实际的拥有者,受Master节点统一管理。每一个Worker节点在启动之后都会向Master节点注册自身,向Master汇报自己的核心总数和内存总量,并按照Master节点的指示启动内部的Executor。
(3)Executor
集群上计算任务的执行者。一个Worker节点可能会启动多个Executor,每个Executor维护一个线程池,线程池中的每个线程用于执行一个任务。需要注意每个Executor内部执行的任务必定属于同一个应用程序。
(4)Driver程序
计算任务的分配者,在本章后面的内容中会看到,作业调度的相关工作,包括作业任务会被划分成阶段,阶段再进一步被分割成多个任务等等工作,都是在Driver程序中执行的。作业调度完毕之后,Driver程序会把实际的并行计算任务交付给Worker节点上的Executor去执行。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。