嘉宾 | 杨业飞

出品 | CSDN云原生

2022年9月22日,在中国信通院、腾讯云、FinOps产业标准工作组联合发起的《原动力x云原生正发声 降本增效大讲堂》系列直播活动第9讲上,京东云JDOS研发组架构师杨业飞分享了京东的云原生大规模实践。本文整理自杨业飞的分享。

阿基米德调度

京东JDOS技术演进

JDOS是京东的容器管理平台、统一的云原生技术底座,当前京东的内部业务均运行在JDOS平台上。

  • 2014-2016年,JDOS 1.0容器化

针对物理机部署资源利用率低、应用资源无法隔离、应用无隔离等问题,JDOS 1.0阶段通过OpenStack + Docker胖容器部署的技术方案,增加部署密度,将宿主机平均使用率从10%提升到15%并增强隔离性,使应用资源更可控、应用迁移更便利。

  • 2017-2018年,JDOS 2.0阿基米德调度

针对1.0时期服务器资源采购受限、资源利用率有待提升、资源使用不均衡等问题,JDOS 2.0阶段增加Kubernetes与阿基米德调度,实现宿主机平均使用率从15%提升至30%,并大幅减少服务器数量,节省采购成本。

  • 2019至今,JDOS 3.0 Serverless+混部

针对2.0时期应用上下线成本高、在线集群非高峰段资源利用率不高等问题,JDOS 3.0阶段通过跨集群Serverless与混部的结合,降低部署成本,给大数据和业务提供了充足的资源。

阿基米德调度

在京东应用场景下,原生调度器存在资源使用率不均、任务分配不均以及调度速度较慢等问题,于是我们基于阿基米德调度,对诸多功能做了改造与升级。

  • 基于预测的智能调度:依托京东大数据,利用机器学习、深度学习算法,对应用的资源使用情况进行画像统计,并能对应用的未来资源使用情况进行预测,将在线与离线应用合理地进行混合调度部署,保护节点负载。

  • 调度过程可视化及热点分析:调度过程可见,调度历史全程可追溯,热点机器形成原因实时分析,并出具分析报告。

  • 调度器仿真系统及回放功能:通过模拟器 + 线上数据回放,对调度请求进行仿真模拟,形成新的数据建模,并优化调度方案,为智能调度提供更优方案。

  • 应用维度均衡策略:应用密度控制、基于SLA等级调度、基于监控数据的应用反亲和。

  • 应用密度提升:充分利用申请与实际使用差距提升Pod部署密度。

  • 调度速度优化: 调度策略/过程调整/优化 + 调度策略Pod级别可配 + 调度预测/快速失败机制。

跨集群Serverless

业务方面存在跨集群甚至跨机房的容灾模式需求,同时平台管理员也希望能够打破各集群的资源孤岛状态,实现良好的资源调度分配。于是,我们基于以上需求推出了跨集群Serverless方案。

基于资源管理系统提前预测各集群可调度副本数,基于用户策略(集中/分散/跨集群/跨机房)决策各个集群副本数量。

支持定时、实时指标弹性扩缩策略、历史指标弹性扩缩策略,实时扩,延时缩。

通过P2P提升镜像下载速度,基于NPD + 故障探测脚本,解决启动、销毁过程中的阻塞点,启动销毁速度控制在秒级。

基于高性能DPDK支持权重动态调节,就近解析、就近转发。

自动挂载LB、JSF等流量,支持状态预热、IP白名单等前置资源自动处理能力。

可靠的故障探测恢复系统,若本集群一直达不到可用状态,会尝试跨集群重调度。

基于Node评分状态,进行缩容操作,如使用率、特征匹配程度等指标。

  • 全局资源预测

  • 及时弹性策略

  • 实例启停速度优化

  • 跨集群LB

  • 应用流量挂载

  • 故障自动恢复

  • 智能缩容

离在线混部

离在线混部的核心在于调度与隔离,调度从全局维度保证资源的合理分配,隔离则能有效减少业务之间的相互干扰。

  • 离线资源识别

    • 离线资源通过识别空闲资源而获得,不抢占在线可用资源Quota;

    • 空闲资源 = 未申请资源 + 申请未使用资源 + 系统预留资源 - (节点资源 * 全局预留水位);

    • 未使用资源识别:通过过去7天数据预测未来五分钟95分位数获得。

  • 资源隔离

    • CPU:超线程压制、LLC隔离、尽量NUMA绑定;

    • 内存:在节点内存紧张时,优先OOM离线任务再OOM在线任务,离在线分别按优先级进行OOM;

    • 磁盘:支持磁盘Direct IO/Buffer IO限速,支持按照权重、绝对值对磁盘吞吐/IOPS进行限制;

    • 网络:网络带宽支持权重、绝对值限制,避免宿主机、交换机带宽打满,影响在线业务;

    • 离线大框:离线资源统一大框管理,离线作业充分利用空闲资源,整体把控性强。

  • 水位线压制

    • cpuUsageSafeRatio:全局资源使用的安全水位线,整机使用资源不可超过该水位线,若超过该水位线,优先对离线任务进行压制;

    • offlineTaskTotalQuota:离线任务总Quota,用来限制单机所有离线任务可以使用的CPU资源总量;

    • offlineTaskMinQuota:离线任务最低资源保障,offlineTaskTotalQuota不会低于该值,用来保障离线任务的正常运行。

  • 驱逐

复杂的应用场景难以规避业务之间干扰的存在,当干扰出现时,可采用驱逐的手段保障机器正常作业以及任务正常运行。

任务干扰、机器热点、资源均衡场景下的驱逐,多基于任务优先级、任务计算进度等指标进行,在驱逐后进行调度冷却处理。

  • 监控

仅对常规指标进行收集监控已无法满足应用场景的高复杂性,还需挖掘更深层次的监控维度。

  • 常规指标:CPU、内存、磁盘、网络等。

  • 干扰指标:压制频率/程度、CPI、PSI等。

  • 相关性:相关性学习、分析指标等。

  • 健康度分析:对节点进行健康度检查与分析,对于不正常的节点,出具健康度诊断报告。

京东云原生技术体系

综上所述,在提升集群资源利用率方面,京东云原生技术体系围绕四个方面展开:

  • 阿基米德调度

    通过全局与全时段的资源预测分配策略,全局把控服务质量。

  • 跨集群Serverless

    降低用户使用成本,实现在线资源二次均衡,弥补一次调度时产生的偏差。

  • 离在线混部

    通过多维度资源隔离、有效实时压制以及策略驱逐,保证离在线任务的同步部署,提高集群资源使用率。

  • 统一资源管理系统

    资源预测,节点分类/打分/健康度分析。

【原动力×云原生正发声降本增效大讲堂】第一期聚焦在优秀实践方法论、资源与弹性、架构设计;第二期聚焦全场景在离线混部、K8s GPU资源效率提升、K8s资源拓扑感知调度主题;第三期邀请4家业界知名企业分享各企业云原生降本增效技术实践,为开发者带来更多样化场景业务下的技术干货。点击『此处』进入活动专题页,带你体验云原生降本增效实践案例、了解如何解决企业用云痛点、掌握降本增效关键技能……

【腾讯云原生降本增效大讲堂】京东云原生大规模实践之路相关推荐

  1. 【腾讯云原生降本增效大讲堂】云原生混部技术标准解读

    嘉宾 | 魏博锴 出品 | CSDN云原生 2022年7月28日,中国信通院.腾讯云.FinOps产业标准工作组联合发起的<原动力x云原生正发声 降本增效大讲堂>系列直播活动第4讲如期举行 ...

  2. 【腾讯云原生降本增效大讲堂】云原生产业发展态势分析

    CNCF云原生计算基金会2021年<FinOps Kubernetes Report>显示,迁移至 Kubernetes 平台后,68%的受访者表示所在企业计算资源成本有所增加,36%的受 ...

  3. 【腾讯云原生降本增效大讲堂】云原生降本增效优秀实践案例分享

    ​嘉宾 | 孟凡杰 出品 | CSDN云原生 CNCF云原生计算基金会2021年<FinOps Kubernetes Report>显示,迁移至 Kubernetes 平台后,68%的受访 ...

  4. 【腾讯云原生降本增效大讲堂】Kubernetes云上资源的分析与优化

    嘉宾 | 胡启明 出品 | CSDN云原生 2022年6月30日,中国信通院.腾讯云.FinOps产业标准工作组联合发起的<原动力x云原生正发声 降本增效大讲堂>系列直播活动第2讲如期举行 ...

  5. 【腾讯云原生降本增效大讲堂】Kubernetes集群利用率提升实践

    嘉宾 | 宋翔 出品 | CSDN云原生 2022年7月7日,国内首次由信通院.腾讯云.FinOps 产业标准工作组联合策划的<原动力 x 云原生正发声 降本增效大讲堂>第三期直播上,腾讯 ...

  6. 【腾讯云原生降本增效大讲堂】作业帮云原生降本增效实践之路

    ​嘉宾 | 董晓聪 出品 | CSDN云原生 2022年9月1日,在中国信通院.腾讯云.FinOps产业标准工作组联合发起的<原动力x云原生正发声 降本增效大讲堂>系列直播活动第7讲上,作 ...

  7. 【腾讯云原生降本增效大讲堂】Caelus全场景在离线混部

    嘉宾 | 陈东东 出品 | CSDN云原生 2022年7月28日,中国信通院.腾讯云.FinOps产业标准工作组联合发起的<原动力x云原生正发声 降本增效大讲堂>系列直播活动第4讲如期举行 ...

  8. 原动力×云原生正发声 降本增效大讲堂

    原动力×云原生正发声 降本增效大讲堂课程活动链接:原动力×云原生正发声 降本增效大讲堂 提升IT资源利用率,实现降本增效,已经成为企业关注重点.2021 年 CNCF<FinOps Kubern ...

  9. 码上“云“ - 《云原生.降本增效》电子书读后感

    经过朋友推荐参加了<原动力.云原生.降本增效>的活动,云原生是一种新兴的软件开发和部署方法论,旨在利用云计算技术的优势,实现更高效.更灵活.更可靠的应用程序开发和部署. 一.阅读电子书的收 ...

最新文章

  1. iis多进程下的全局变量_Linux下c程序的内存映像
  2. 提高工作效率-shell操作快捷键
  3. MERGE批量增删查改数据
  4. QRadioButton Toggled() 使用方法
  5. QT的QFutureIterator类的使用
  6. MySQL为其他用户创建数据库_MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限...
  7. 硬件加速会使电脑黑屏吗?
  8. ruby与python_Ruby对比Python的优势和劣势
  9. [蓝桥杯][算法提高VIP]夺宝奇兵-dp
  10. 简单的Spring配置文件
  11. php常量的声明和使用
  12. BloomFilter, Count-Min Sketch算法
  13. can 升级软件 上位机 C# 源码 支持STM32升级 提供源码 提供CAN协议
  14. AVR单片机LED单灯闪烁
  15. python中用来抛出异常的关键字是( )_python如何抛出异常
  16. 【机器学习-斯坦福】学习笔记1 - 机器学习的动机与应用
  17. c#发送邮件(带抄送,密送,群发,附件)
  18. 英语学习APP开发解决方案
  19. 【以太网硬件四】以太网信道编码方式有哪些?
  20. POI Excel行高设置

热门文章

  1. 关于深度学习模型泛化问题的一些思考
  2. 发卡行机构代码表大全
  3. Android 判断手机是否安装QQ或者微信
  4. Windows 是最安全的操作系统
  5. 云计算行业,十年发展经历了哪些阶段?
  6. 操作系统课程设计——进程调度模拟程序(JAVA语言实现)
  7. win7计算机静态ip,win7电脑动态IP和静态IP有什么差别?如何区分动态IP和静态IP
  8. matlab实现疲劳驾驶监测
  9. mysql的密码设置要求_MySQL的密码设置
  10. 885. 求组合数 I (组合数 取模