一、YuniKorn 简介

YuniKorn 是一种轻量级的通用资源调度程序,适用于容器编排系统。它的创建是为了一方面在大规模,多租户环境中有效地实现各种工作负载的细粒度资源共享,另一方面可以动态地创建云原生环境。

YuniKorn 为混合工作负载提供统一的跨平台调度体验,包括无状态批处理工作负载和状态服务,支持但不限于 YARN 和 Kubernetes。YuniKorn['ju:nikɔ:n] 是一个虚构的词,"Y"代表 YARN,"K"代表 K8s,"Uni"代表统一,其发音与"Unicorn"相同。创建它是为了最初支持这两个系统,但最终目的是创建一个可以支持任何容器协调器系统的统一调度程序。

二、YuniKorn 组件介绍

YuniKorn 目前有 4 个组件,如下所示:

(1)yunikorn-scheduler-interface
(2)yunikorn-core
(3)yunikorn-k8shim
(4)yunikorn-web

三、YuniKorn 组件功能

YuniKorn -scheduler-interface:调度程序接口是资源管理平台(如 YARN / K8s)将通过诸如 GRPC / 编程语言绑定之类的 API 与之交谈的抽象层。

YuniKorn Core:YuniKorn Core 封装了所有调度算法,它从资源管理平台(如 YARN / K8s)下面收集资源,并负责资源分配请求。它决定每个请求的最佳部署位置,然后将响应分配发送到资源管理平台。调度程序核心与下层平台无关,所有通信都通过调度程序接口。

Scheduler Shim Layers:调度程序 Shim 在主机系统内运行(如 YARN / K8s),它负责通过调度程序接口转换主机系统资源和资源请求,并将它们发送到调度程序核心。在做出调度程序决策时,它负责实际的 pod / 容器绑定。

Scheduler UI:调度程序 UI 为已托管的节点,计算资源,应用程序和队列提供简单视图。

四、YuniKorn 诞生背景

很多企业用户在不同的平台上运行工作负载,例如 YARN 和 Kubernetes。他们需要使用不同的资源调度程序,以便规划其工作负载有效地在这些平台上运行。但是,在目前来看,调度程序生态系统是分散的,并且在很多方面不是很理想。例如:
(1)YARN 具有批量工作负载的 Capacity Scheduler 和 Fair Scheduler。
(2)K8s 具有服务的默认调度程序。对于批处理工作负载,社区有 Kube-batch,Poseidon,Rubix(Spark 的 Scheduler 扩展)。

五、YuniKorn 架构设计

YuniKorn 的其中一个设计目标是将调度程序与下面的资源管理系统分离,为此,YuniKorn创建了一个定义通信协议的通用调度程序接口。通过利用它,scheduler-core 和 shim 一起工作来处理调度请求。关于 YuniKorn 架构设计,如下所示:

六、YuniKorn 的调度功能特性

以下是 YuniKorn 目前支持的调度功能列表:

调度功能支持批处理作业和长期运行 / 有状态服务
具有最小 / 最大资源配额的分层池 / 队列
队列,用户和应用程序之间的资源公平性
基于公平性的跨队列抢占
自定义资源类型(如 GPU)调度支持
丰富的编排约束支持
根据策略自动将传入的容器请求映射到队列
对节点使用专用配额 / ACL 管理将大的集群拆分成若干子群集

七、参考

YuniKorn 中文官网:http://www.yunikorn.cn/

YuniKorn 介绍的更多相关文章

  1. CSS3 background-image背景图片相关介绍

    这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...

  2. MySQL高级知识- MySQL的架构介绍

    [TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...

  3. Windows Server 2012 NIC Teaming介绍及注意事项

    Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...

  4. Linux下服务器端开发流程及相关工具介绍(C++)

    去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...

  5. JavaScript var关键字、变量的状态、异常处理、命名规范等介绍

    本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...

  6. HTML DOM 介绍

    本篇主要介绍DOM内容.DOM 节点.节点属性以及获取HTML元素的方法. 目录 1. 介绍 DOM:介绍DOM,以及对DOM分类和功能的说明. 2. DOM 节点:介绍DOM节点分类和节点层次. 3 ...

  7. HTML 事件(一) 事件的介绍

    本篇主要介绍HTML中的事件知识:事件相关术语.DOM事件规范.事件对象. 其他事件文章 1. HTML 事件(一) 事件的介绍 2. HTML 事件(二) 事件的注册与注销 3. HTML 事件(三 ...

  8. HTML5 介绍

    本篇主要介绍HTML5规范的内容和页面上的架构变动. 目录 1. HTML5介绍 1.1 介绍 1.2 内容 1.3 浏览器支持情况 2. 创建HTML5页面 2.1 <!DOCTYPE> ...

  9. ExtJS 4.2 介绍

    本篇介绍ExtJS相关知识,是以ExtJS4.2.1版本为基础进行说明,包括:ExtJS的特点.MVC模式.4.2.1GPL版本资源的下载和说明以及4种主题的演示. 目录 1. 介绍 1.1 说明 1 ...

随机推荐

  1. shell产生随机数

    #!/bin/bash # 每次调用$RANDOM都会返回不同的随机整数. # 一般范围为: - (有符号的16-bit整数). MAXCOUNT= count= echo echo "$M ...

  2. PHP MYSQL 获取记录总数

    $qid = mysql_query(“SELECT count(aid) as total FROM table group by aid “);//你的查询 $res = mysql_fetch_ ...

  3. mysql数据库同步系统otter部署实践(中国与欧洲同步)

    otter的介绍就不说了, 自己去看官网https://github.com/alibaba/otter/wiki 本系统中, 中国的服务器部署在阿里云上, 欧洲服务器部署在亚马逊上, 由于阿里云的网 ...

  4. C#委托和事件 EventHandle和EventArgs

    一.背景由于对于C#委托和事件理解的不够透彻,并且平时工作中对于自己手写委托和事件很少,渐渐的只会增删改查了.特定整理了委托和事件的基本知识.二.案例案例引用了张逸 博客 中的案例,并做了处理. 创建 ...

  5. 事务 ( 进程 ID 60) 与另一个进程被死锁在锁资源上,并且已被选作死锁牺牲品

    Select * FROM [TableName] With(NoLock) .....

  6. 安装使用Cloudera Impala

    安装与使用Cloudera Impala Cloudera Impala提供快速的.交互式的SQL查询方式,直接基于Apache Hadoop存储在HDFS或HBase中的数据进行查询.除了使用与Ap ...

  7. Liferay6.1 配置友好的URL映射

    说明:以下内容和官方文档相差不大,如果您英文较好,建议直接去读官方文档,地址是:https://dev.liferay.com/develop/tutorials/-/knowledge_base/6 ...

  8. Spring Boot2(三):使用Spring Boot2集成Redis缓存

    前言 前面一节总结了SpringBoot实现Mybatis的缓存机制,但是实际项目中很少用到Mybatis的二级缓存机制,反而用到比较多的是第三方缓存Redis. Redis是一个使用ANSI C编写 ...

  9. Kafka —— 基于 ZooKeeper 搭建 Kafka 高可用集群

    一.Zookeeper集群搭建 为保证集群高可用,Zookeeper集群的节点数最好是奇数,最少有三个节点,所以这里搭建一个三个节点的集群. 1.1 下载 & 解压 下载对应版本Zookeep ...

  10. 【设计模式】行为型02模板方法模式(Template Method Patten)

    五一长假,没有出去,不喜欢嘈杂的人群,玩了会游戏发泄了下憋在心底的戾气,手旁大马克杯里是母亲泡的绿茶.点开自己的播放列表,耳机里传来的是理查德克莱德曼的致爱丽丝.自己是个凡人,卑微渺小的活着.不说废话 ...