zoukankan      html  css  js  c++  java
  • 集群资源管理与调度概要

    背景知识:

    很多互联网公司会有各种类型的工作任务,比如对外提供各种服务,内部的挖掘与数据管理系统。

    即使内部数据系统也可能需要多种不同类型的计算系统:适应实时计算的挖掘系统。适合交互查询的系统

    或者典型的批处理任务,面对多种各具特性的计算系统与框架,比较传统的资源管理方式采用的是静态资源划分方法

    静态划分优点:简单,固定的硬件资源给固定的计算框架使用,各个框架各行其是,互补干扰。

        缺点:整体资源利用率不高,经常出现集群计算系统资源不足

    所以需要动态的集群资源管理与调度,这方面的研究呢处于摸索期,发展趋势很不错哟!

    话说掌握资源并分配资源的感觉很不错的,现实生活中我们很难实现的东东,可以在计算机当中去实现哦。

    对比一下动态和静态:

      第一:动态会根据任务即时需要分配资源,不会出现资源闲置且不可用,也不会出现任务忙且不可得资源的尴尬局面。总之

    增加资源利用率,降低硬件成本。

      第二:增加数据共享能力,共用的资源存储一份就行啦,

      第三:说白了就是支持多类型计算框架和多版本计算框架,使用资源管理与调度平台可以实现两者平滑切换,给运营带来便利。

    资源管理抽象模型:

      资源管理与调度系统:YARN、Mesos、Corona、Quincy,从上述系统抽象两个模型:1,资源管理与调度的概念模型。2,通用架构

      目的:通过 一定策略把资源分配给用户提交到系统里的各种任务。

      资源:内存、cpu、网络资源、磁盘I/O

      概念模型聚焦三要素:资源组织模型、调度策略、任务组织模型

        1,资源组织模型:组织起来方便分配,像以前吃大锅饭一样,有一些组织的方式如“all resource->group->pool”三级队列,或者平级多队列或者但队列了等等吧。

        2,调度:熟知的FIFO、公平调度、能力调度、延迟调度等等吧,说白了就是按照什么方式分配资源。以前大跃进期间是按“分儿”分配,劳动多所得“分儿”就多。

        3,任务组织:job分配呀比如全局队列、机架对垒、节点队列等。说白了就是以前大跃进期间如何把活儿给组织起来,放牛的,耕地的,播种的,拔草的等等类似吧

      通用架构:

    解释一下啊:1,每台机器都有节点管理器,负责收集它所在机器的资源使用情况,分配的任务放到不同容器执行,彼此隔离开,避免job彼此干扰。

          相当于大跃进期间的组长。每一个胡同一个组长,由他负责给村长汇报任务,汗!在这里它要给资源收集器汇报任务。这个收集器在把

          相关的信息反应给资源池,资源池列出目前可用的资源

          2,通用调度器构成:资源收集起、资源调度策略,资源池,工作队列

          3,调度策略:FIFO、公平调度、能力调度等,这家伙相当于大跃进期间村委书记,你家的牛羊粮食咋分,如何分,他说了算,汗!

            在这里系统应用者可根据具体情况设定符合业务状况的调度策略,当用户新提交作业时,其进入工作队列,等着分配使其可启动的资源。

    总结:资源管理与调度说白了就是资源管理与分配,在现实生活中就是按需分配,把资源尽可能的分配到需要的job手中,

         无论是人还是计算机,采用何种分配策略,决定了你这个系统的性能问题,生活中我们常说“不患寡而患不均”,在计算机中资源管理与调度是根据具体
       场景而设定的,其实终极目的都是为了使资源分配的更加合理!依此为导向来决定分配策略会更加合理。

  • 相关阅读:
    009-LSTM网络-长短记忆网络
    008---递归神经网络-RNN
    007-卷积神经网络03-前向传播-反向传播
    006-卷积神经网络02-池化层,全连接层
    005-卷积神经网络01-卷积层
    004-神经网络
    003-神经网络基础-最优化,前向传播,反向传播
    002-神经网络基础-得分函数,SVM损失函数,正则化惩罚项,softmax函数,交叉熵损失函数
    001-神经网络基础-K近邻算法
    DBSCAN聚类算法
  • 原文地址:https://www.cnblogs.com/codeblock/p/5554354.html
Copyright © 2011-2022 走看看