alibaba / alibaba/ROCK

[Feature] add remote operator

Open
#1,075 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
485
Forks
81
Avg merge
16h 12m
Merged PRs (30d)
8

Description

**Feature Category**
- [x] Sandbox
- [ ] Actions
- [ ] Deployments
- [ ] SDK & API
- [ ] Envhub
- [ ] CLI
- [ ] Performance & Optimization
- [ ] Documentation & Examples

**Problem Statement**
(1)目前admin只能同时支持一种operator,要么ray,要么k8s,希望能够同时支持多种operator,并自动根据请求路由。
(2)希望增加一种基于远端api的remote operator。
**Proposed Solution**
引入多 operator 架构:OperatorRegistry + Routing Layer + RemoteOperator + Addressing Layer,支持 Ray/K8s/Remote 并存,按 image 等维度声明式路由,既有路径零变更。
**Detailed Feature Description**
OperatorRegistry:配置驱动加载,yaml 出现哪个顶层块就加载哪个 operator
Routing Layer:submit 时按 image_prefix/image_pattern 等规则匹配目标 operator,结果固化到 sandbox meta
RemoteOperator:对接外部REST API,完整实现 submit/get_status/stop/delete
Addressing Layer:远端 sandbox 通过 header-based routing 寻址 client-proxy;本地 sandbox 走原有 host_ip/port,零变更
兼容性:老 yaml 不改照常工作;老 meta 缺字段走 default 兜底;SDK 零变更

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by mapping the proposed OperatorRegistry, Routing Layer, RemoteOperator, and Addressing Layer against the existing Python sandbox implementation. Review the current YAML configuration, submit/status/stop/delete flows, and SDK compatibility requirements. Done means Ray, K8s, and a remote REST-backed operator coexist, requests route by image rules, remote addressing works, and legacy YAML/meta behavior remains unchanged.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, backend, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.