《宋顾杨-Ray-os2atc2023-v3.pdf》由会员分享,可在线阅读,更多相关《宋顾杨-Ray-os2atc2023-v3.pdf(33页珍藏版)》请在三个皮匠报告上搜索。
1、2023年3月OS2ATC宋顾杨 蚂蚁集团通用分布式计算引擎RAY云原生环境下如何快速构建分布式系统2020-今Ray开源社区Committer C+分布式框架 作者 Runtime Environments 维护者2017-今蚂蚁集团-新计算引擎团队 参与和推动了Ray在蚂蚁集团从0到1再到万台服务器规模的落地2015-2016蚂蚁集团-应用网络团队 7层网关,支付宝钱包网络自研协议About me目录分布式系统复杂性1Ray简介2利用Ray快速构建分布式系统3Ray开源现状401分布式系统复杂性一个AutoML的caseclienttrainerworkerworkerworkerKube
2、rnetesproxyAutoMLservice1.Requestdatamodels2.Deploy trainer3.start training4.Deploy workers5.training6.Monitorresults7.Delete trainer8.Query result云原生多角色高弹性动态化有状态频通信技术栈技术栈分析clienttrainerworkerworkerworkerKubernetesproxyAutoMLserviceasyncio编程语言分析通信协议应用服务原生运维原生部署实现了在线支付业务、离线计算等的强隔离容器定制分布式系统通用能力02Ray简介
3、 由加州大学伯克利分校RISELab发起并开源 通用分布式计算引擎 新一代计算基础设施Ray是什么KeyKey ideaidea:不绑定计算模式,:不绑定计算模式,把单机编程中的基本概念分布式化把单机编程中的基本概念分布式化通用分布式编程APIFunctionFunctionClassClass-Task Task-Actor Actor单机(Function)分布式(task)把普通 function 变成remote task异步调用,远程执行获取结果通用分布式编程API:无状态计算单元Task Object storeRaylet2.Save objectObject storeRayl
4、et4.fetch object3.Notify5.Fetch object6.Get objectObjectRef 多节点之间Object传输 同节点内shared memory 自动垃圾回收 Object spilling分布式object storeheavy_compute.remote(i)heavy_compute()1.Task requestNode 1Node 2通用分布式编程API:分布式object 单机(Class)分布式(Actor)把普通Class变成Actor Class创建远程Actor对象,返回Actor Handle远程调用Actor方法通用分布式编程AP
5、I:有状态计算单元Actor 03利用Ray快速构建分布式系统AutoML Service部署Ray集群自定义部署$ray start-head$ray start address$HRAD_ADDRESS部署head节点:部署worker节点:一键云上部署$ray up-y config.yamlclienttrainerworkerworkerworkerKubernetesproxyAutoMLserviceAutoML ServiceRay ActorRay ActorRay TaskRay TaskRay TaskRayRay ClientAutoML Serviceworker(R
6、ay Task)AutoML ServiceTrainer(Ray Actor)动态创建分布式taskAutoML ServiceProxy(Ray Actor)动态创建分布式 actor部署并设置 nameAutoML ServiceClient服务发现异步获取结果服务访问AutoML Service定制资源设置资源支持的资源类型:CPUGPUMemory自定义高级功能资源组亲和性&反亲和性AutoML Service运行时环境定制python环境 通过代码灵活配置Job/Actor/Task的环境依赖支持的依赖类型Pip(venv)/Conda/Container/自定义插件Contain
7、erL4CondaL3VenvL2ProcessL1隔离性用户体验重轻强弱AutoML Service运维与监控 Ray Dashboard Nodes、Actors Logs、events profiling State Client Metrics/TracingWorker NodeObject Store(Shared Memory)DriverWorkerRayletagentHead NodeGCSBackend StorageDashboardWorker NodeObject Store(Shared Memory)DriverWorkerRayletagentRay的架构小结分布式AutoML Service基于Ray的集群和Actor实现了部署基于Ray的named actor实现了服务发现基于Ray的Task实现了组件通信基于Ray的调度实现了定制资源基于Ray的Runtime Env解决了环境依赖问题完整Demo地址 https:/ userhttps:/ 17年开源至今活跃度 2.0Ray AIRhttps:/ on Ray试用:pip install U rayRay中文社区联系我欢迎试用&合作