Mesos的Framework与Executor注册过程

本文以Hadoop框架为例,介绍了framework与executor向mesos注册过程。

成都创新互联致力于互联网网站建设与网站营销,提供网站设计制作、成都网站设计、网站开发、seo优化、网站排名、互联网营销、小程序设计、公众号商城、等建站开发,成都创新互联网站建设策划专家,为不同类型的客户提供良好的互联网应用定制解决方案,帮助客户在新的全球化互联网环境中保持优势。

1. Framework注册过程

(1) JobTracker启动时,会调用MesosScheduler的start()方法

(2) MesosScheduler的start()方法创建一个MesosSchedulerDriver对象,并将自己作为参数传入该对象。

(3) MesosSchedulerDriver初始化,创建一个SchedulerProcess对象

(4) MesosSchedulerDriver初始化,调用MasterDetector::create(),它将向SchedulerProcess对象发送一个NewMasterDetectedMessage消息

(5) SchedulerProcess对象收到NewMasterDetectedMessage消息后,向Master发送一个RegisterFrameworkMessage消息

(6) Master收到该消息后,保存相关信息,并返回FrameworkRegistedMessage消息,确认framework注册成功

2.     Executor注册过程

本节描述框架frameworkX在某个slaveX上注册executor executorX的过程:

(1)Master***次向slaveX发送执行frameworkX中task的消息 RunTaskMessage

(2)slave收到该消息后,运行相应的消息处理函数runTask()

(3)该函数发现该slave上未启动frameworkX对应的executorX,则调用IsolationModule的lauchExecutor()函数

(4)该函数创建一个FrameworkExecutor对象,并调用ExecutorProcess的Initialize()函数进行初始化,同时启动TaskTracker

(5)Initialize()函数创建消息RegisterExecutorMessage,并发送给slave

(6)Slave收到该消息后,调用对象的消息处理函数registerExecutor,该函数创建ExecutorRegisteredMessage消息,返回给ExecutorProcess

(7)ExecutorProcess收到该消息后,调用对应的消息处理函数registered(),该函数再进一步调用FrameworkExecutor的registered()函数

接下来,master发送给slave的RunTaskMessage消息依次经过的流程如下图所示。需要注意的是,对于同一个计算框 架,Mesos在一个slave上只会创建一个资源container,所有task全部在这个container里运行,也就是说,mesos无法做到 task级别的隔离,只能做到executor级别的隔离,而对于同一个框架,同一个slave上所有task全部在一个executor中运行。

对于Hadoop而言,每个mesos-slave上只会创建一个TaskTracker,且该TaskTracker会被放置到一个 executor(对应一个linux container)中运行,而同一个TaskTracker上所有task均在该TaskTracker所在进程树中,因而共享该executor对应 的资源。当TaskTracker接收到新的task时,会增加该executor可以使用的资源量(使用“lxc-cgroup –n %s %s %lld”),而当有task运行完成时,则减少该executor可使用的资源量(使用“lxc-cgroup –n %s %s %lld”)。

原文链接:http://dongxicheng.org/apache-mesos/apache-mesos-framework-executor-registering/

新闻名称:Mesos的Framework与Executor注册过程
当前链接:http://www.hantingmc.com/qtweb/news24/263224.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联