文档介绍:该【基于Spark的机器学习资料45、Mesos总体架构介绍 】是由【wawa】上传分享,文档一共【3】页,该文档可以免费在线阅读,需要了解更多关于【基于Spark的机器学习资料45、Mesos总体架构介绍 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。上空闲资源的列表。master通过编制的策略,如公平共享或设置优先级,来决定为每个framework提供多少资
源。为了支持一组不同内部框架分配策略,Mesos允许组织者通过可插拔的配置模块定义他们自己的策略。
每个运行在Mesos上的框架由两个组件组成:一个由master注册的用于提供资源的scheduler(调度器),以及
在slave节点上启动来运行框架任务的executorprocess(执行进程)。当master决定了提供多少资源给框架,
framework的scheduler就选择所请求的资源以使用。当framework接受了请求的资源,它会向Mesos传递
一个它要启动的任务的描述信息。
上图展示了一个框架如何调度并运行任务的示例。在第一步中,slave1向master报告它有4个CPU和4GB
的内存空闲。于是master调用了分配模块,告诉framework1可以提供所有可用资源。在第二步中,master发
送了一个描述了这些资源的资源提供给framework1。在第三步中,framework的scheduler回应了master一条
关于在slave上运行了2个任务的信息,使用了2个CPU;1GB内存和1个CPU用于第一个任务;2GB内
存用于第二个任务。最后,在第四步,master发送任务给slave,这个任务要求分配合适的资源给framework的
executor,executor将启动两个任务(用虚线描绘的部分)。由于1个CPU和1GB内存仍然空闲,此时分配
模块会将他们提供给framework2。此外,当任务完成而资源变为空闲时,资源提供进程会重复上述步骤。
四、Mesos上可构建的工程
长期运行的服务:
Aurora--是一个服务调度器,运行在Mesos之上,允许你运行一些长期运行的服务,以利用Mesos的可扩展
性、容错性和资源的隔离。
Marathon--是一个构建在Mesos之上的私有PaaS。它可以自动地处理硬件或软件故障,并保证一个应用“总
是可用“的。
Singularity--是一个用于运行Mesos任务的调度器(HTTPAPI和web接口):长期运行的进程、一次性任务
以及调度作业。
SSSP--是一个简单的web应用,它为在S3中存储和共享文件提供了一个白色标签"Megaupload"。
大数据处理:
CrayChapel--是一种高效的并行编程语言。ChapelMesos调度器让你可以在Mesos上运行Chapel程序。
Dpark--是一个Spark的Python克隆,是一个以Python编写的类MapReduce框架,它运行在Mesos上。
Exelixi--是一个分布式框架,用于大规模运行遗传算法。
Hadoop--在Mesos上运行Hadoop通过整个集群高效地分配MapReduce作业。
Hama--是一个基于BulkSynchronousParallel计算技术的分布式计算框架,用于进行大规模的科学计算,如矩
阵、图表、和网络算法等。
MPI--是一个消息传递系统,设计于在各种各样并行计算机上的功能。
Spark--是一个快速且通用的集群计算系统,它可以使并行作业更易于写。
Storm--是一个分布式的实时计算系统。Storm使可靠地处理数据的无界流变得简单,实时处理Hadoop所进
行批处理的内容。
批量调度:
Chronos--是一个分布式作业调度器,支持复杂作业拓扑。它可以以容错性更强的特性代替Cron。
Jenkins--是一个持续集成服务器。mesos-jenkins插件可以根据工作负载在Mesos集群上动态地启动worker。
JobServer--是一个分布式任务调度器和处理器,允许开发者们通过在web界面上点击来构建自定义批处理任
务对列。
数据存储:
Cassandra--是一个高性能且高可用的分布式数据库。线性可扩展性以及在商业硬件或云基础设施中已经证明的
容错性使其成为关键任务数据的最佳平台。
ElasticSearch--是一个分布式搜索引擎。Mesos使其易于运行和扩展。
Hypertable--是一个高性能、可扩展、分布式的存储和处理系统,用于结构化和非结构化数据。