EMR on VKE产品中提供Ray在火山容器服务(VKE)下的部署方式。使用 KubeRay Operator在VKE部署Ray。该 Operator 提供了一种 Kubernetes 原生的方式来管理 Ray 集群,KubeRay 支持异构计算节点(包括 GPU),以及在同一 VKE 集群中运行多个 Ray 集群。可以参考官网Ray on Kubernetes。
同时EMR管控端提供了集群管理、作业管理等能力,保证用户更好的使用和运维。其中作业管理和Ray HistoryServer功能处于开发中。
通过 KubeRay,用户可以利用 Kubernetes 的强大功能来扩展和管理 Ray 应用程序,使得在云环境或者大规模集群中运行 Ray 应用变得更加简单和高效。主要特点:
总之:KubeRay 通过结合 Ray 的强大分布式计算能力和 Kubernetes 的灵活管理特性,为开发者提供了一个高效、可扩展的平台,用于部署和管理各种复杂的分布式应用。
参考集群创建章节,创建Ray服务,这时集群中便存在了KubeRay Operator。 接下来就可以创建RayCluster和RayJob。
创建Ray服务时,可以对KubeRayOperator资源进行配置,默认是1GB的内存和1个CPU,理论上该资源可以支撑近五千个POD。KubeRay Operator的内存规格和所支撑的POD数量是成正比的,当Ray集群中POD总数量增加时,也需要调大KubeRay的内存。也可以参考KubeRay memory and scalability benchmark查阅两者关系。
RayCluster使用时需要创建RayCluster集群,参考RayCluster的使用。
采用yaml文件方式进行,参考RayJob使用章节。RayCluster章节中封装了用例,也可以按照RayJob的Yaml模版格式进行封装后进行执行。