您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[GOPS 2024]:GOPS2024全球运维大会深圳站暨XOps技术创新峰会 - 发现报告

GOPS2024全球运维大会深圳站暨XOps技术创新峰会

2024-04-26-GOPS 2024王***
AI智能总结
查看更多
GOPS2024全球运维大会深圳站暨XOps技术创新峰会

云舰全场景混部技术实践 周光资深架构师 周光 京东科技资深架构师 负责京东容器平台研发,通过技术不断的提升资源利用率,降本增效。在大规模容器集群构建和保障、集群联邦、异构资源统一调度、离在线混部等方面有丰富的经验,多次支持618大促和春晚红包项目的资源调度与稳定性保障。 01春 晚 红 包 挑 战 02京 东 混 部 架 构 03混 部 核 心 技 术 点 04混 部 技 术 落 地 经 验 PART 01 春晚红包挑战 2024春晚红包挑战 超1000万核算力资源超高弹性伸缩 春晚红包资源调度 •将所有可供调配资源,聚合在统一资源池内,对x86和国产化计算资源进行管理和统一调度•不增加服务器,高效腾挪资源,超1000万核算力资源,应对春晚红包活动流量洪峰•通过规模化混部技术,将容器化资源部署密度提升3倍,CPU整体利用率在60%~70%•云舰自研调度类算法,将干扰率由5%降低到1%,更迅速抢占资源,确保高优先级红包业务的用户体验 京东混部架构 什么是混部 •什么是混部 •将高优先级业务和低优先级业务混合部署在一个节点上 •混部目标 •不断提升数据中心资源使用率•根据统计目前全球数据中心资源利用率仅为10%~20% •混部效果评价: •资源使用率提升明显•混部场景下在线业务TP99、QPS受干扰小 没有明显波峰波谷整体利用率常态运行在较高水平 混部 p整机使用率在70%的情况下,离线对在线QPS和TP99影响在1%以内。p资源归一化策略,node按性能打分,保证任务性能统一。p快速实现故障识别与处理,减少利旧故障影响。 p混部利用率常态化维持在70%左右,可极大节约机器成本。 p集群管理,快速上下线集群、添加/删除节点,机器&资源流转效率高。 效率 性能 成本 p故障处理平台,减轻运维负担,节约人力成本。 产品架构 技术架构 •Master •ArchimedesScheduler:提供gang调度、负载平衡等调度增强•Colocation Webhook:在annotation标记colocation资源•Reservecontroller:控制资源保留•Descheduler:提供灵活可扩展的重调度能力 •Node •离线资源上报•在离线pod管控•干扰检测 •CNI:网络限速、IP保留 •OS:内核级隔离能力增强 混部核心技术 混部功能特点 架构特点 •资源隔离&性能多维度资源隔离能力增强,增强业务抗干扰能力,提升业务性能•故障检测与故障处理:基于NDX系统,实现故障自动检测、自动处理与恢复•资源调度&资源画像:archimedes-scheduler提升调度质量与调度速度,增强型调度策略应对更多场景•兼容性:兼容原生CSI、CNI、NPD等组件•集群管理:白屏化多集群管理能力,创建/纳管集群,添加/删除节点•可观测性:支持100+监控指标可视化,除了CPU、磁盘、内存、网络等常规指标外,还支持底层指标CPI、PSI、CPU L3、CPU饱和度、业务干扰、节点干扰、页缓存等,支持集群、节点、namespace、工作负载、pod、container等多种维度,支持etcd、apiserver、调度器等控制面指标可视化,支持多维度日志查询(node、pod、时间、关键字等)•Openapi& CRD:提供openapi和CRD的方式,供各方平台与混部集群对接 业务分类和分级 在线类型(延时敏感,中高优先级) 大数据类型(延时不敏感,低优先级) l零售核心交易系统如库存、商品等l中间件如redis,kafka等l数据库mysql,es等l搜索、推荐、广告等lAI推理 l实时计算,比如:flink,sparkstreaming等l离线大数据,比如hive,spark等lAI训练 应用QoS分级 •整体分级•延迟敏感型的在线服务 •资源消耗型的离线任务•在线分类 •exclusive,reserved和share三种类型 •分类作用 •影响Pod在单机的运行质量,主要表现为使用的隔离程 度不同,单机资源紧张时会优先满足高等级pod的资源需求 多维度调度策略 离线可用资源计算 •离线可用资源计算•通过计算在线实际使用量来 •可用离线资源=调度水位线*(整机资源量-exclusive资源)-reserved实际使用资源-shared实际使用资源 # node infoAnnotations:jdos.jd.com/node-water-cpu: "0.7"jdos.jd.com/node-water-mem: "0.7”Capacity:jdos.jd.com/colocation-cpu: 28jdos.jd.com/colocation-memory:96GiAllocatable:jdos.jd.com/colocation-cpu: 28jdos.jd.com/colocation-memory:96Gi •离线可用资源影响•通过调整调度水位线 •离线任务调度到该节点•调度水位线不变,在线业务使用率发生变化 负载均衡调度 •利用率均衡影响离在线混部质量 •机器热点,导致离在线任务冲突严重•利用率不均衡导致资源无法充分利用 •如何做到均衡调度 •基于实时使用率,避免调度到热点机器•基于资源预测,把控集群整体使用率•支持按照CPU/内存维度平衡 规格(request)优化推荐 •场景 •用户高估或低估pod资源规格导致资源浪费或系统稳定性风险•应用数量多,评估成本高 资源隔离:CPU QoS •CPU Burst 支持按容器设置Burst量,测试长尾延时可减少18% •离线压制在线动态预测,调整离线的CPU带宽总量,保障整 机水位线 •SMT超线程避让 当在线任务占用同一个物理核的某个超线程(HT)时、离线任务无法使用另一个HT,减小离线任务对在线任务的干扰 资源隔离:内存QoS •OOM优先级 •GroupOOM保障同一个容器内的进程一并杀掉,减少无效占用 优先杀掉离线任务,支持离线任务间设置优先级 •异步内存回收容器内存用量超过水位线,启动异步回收,减少内 •内存水位线保护优先回收离线,保护在线内存不被回收 存分配延时 资源隔离:网络QoS •网络限速支持容器级别单方向(Ingress、Egress)、双方向 (Ingress+Egress)的限速 •优先级支持设置容器优先级,设置IP报文DSCP,结合底 层网络实现全局QOS控制 资源隔离:磁盘QoS •离在线分盘管理可通过配置文件设置离线、在线的物理盘, 减少互相干扰 •磁盘限速通过注解设置容器的(r/w)BPS、IOPS,支持BufferIO和 Direct IO限速 •磁盘IO优先级调整优先级,尽量优先保障在线IO 可观测性 磁盘IOPS(R/W)、BPS(R/W)、队列长度 工作负载 调度时延、饱和度、L3缓存命中率、使用率、CPI、限流次数 网络BPS、PPS、重传数、丢包数 内存 计算节点 页缓存命中率、饱和度、带宽监控、使用率 APIServerQPS、成功率、时延、webhook QPS、机器负载 调度器队列长度、QPS、时延、机器负载 集群 Namespace ETCDQPS、请求数、时延、EventQPS、机器负载 日志调度、压制、销毁 PART 04 混部技术落地经验 如何推动业务混部 定目标:降本增效目标 限配额:资源申请卡点 •公司层面确定资源利用率提升目标•提升目标包括业务和机器二个层面•核心指标以cpu利用率为主,磁盘利用率,内存利用率等为辅 资源使用率不达标的应用新申请资源,提供混部资源 强协作:多部门配合 促改进:资源利用率通晒 对非混部应用的资源利用率不达标进行通晒 基础平台部门、运维效能部门、在线业务部门、大数据部门和财务部共同参与 实施落地阶段 阶段一:潮汐混部1 阶段二:实时计算和在线混部2 •非延迟敏感实时计算flink按离线模式常态化混部•较高的压制水位线•中低优先级在线应用 •在线业务低峰时段进行混部•较低的压制水位•低优先级在线应用 阶段三:离线大数据和在线混部3 阶段四:全场景混部4 •常态化混部•较高的压制水位•大部分在线应用 •在线业务和中间件•离线大数据和中间件 应急预案 系统故障预案 干扰预案 压制预案 大数据预案 针对混部系统具有全局影响的故障启动预案 在大促、红包等情况下启动对离线的压制预案 当发现有在线业务被干扰时启动处理 因为压制离线任务延迟处理预案 收益和未来规划 混部收益 •混部节点资源使用率平均提升一倍以上•混部节点规模数万,每年节省成本数千万•支持春晚红包、618、11.11等大促资源需求 未来规划 •异构架构混部•AI混部•更精细化资源隔离•更多国产OS支持 高效运维社区DevOps时代 荣誉出品 感谢大家观看