跳转到正文

集群与节点 ​

创建任务前,先用集群和节点信息确认各角色会运行在哪里。集群代表已接入 RLark 的数据平面,Node 资源则记录其中每个计算节点的状态、标签和资源。

确认集群可以承载任务 ​

创建任务弹窗中的集群字段会筛选该集群的候选节点、设备和存储配置。提交前还应确认:

  • Agent 最近仍能与 RLark 通信;
  • 集群中有符合角色和标签要求的节点;
  • 目标节点的可分配资源足以满足每个 Worker 的请求;
  • 任务所需的镜像、StorageClass 和网络路径都能在该集群使用。

集群出现在列表中,只说明 RLark 中仍有该集群的登记或最近上报信息,不保证新任务一定能调度成功。

集群字段只用于筛选候选项

Job 的 Task 模板没有独立的 cluster 字段。RLark 会根据 Task 的 nodeSelector 匹配 Node,并在匹配结果所在的命名空间中创建 Task。因此,提交前必须确认选择器在全部 Node 中只命中预期集群。

查看节点状态和资源 ​

Node 详情可用于核对以下信息:

  • 接入形态:Kubernetes、Docker 或 Raw;
  • 节点类别:cloud、edge 或 robot;
  • 阶段:Online 或 Offline;
  • 可调度性:由 unschedulable 单独记录;
  • 资源:Capacity、Allocatable 和 Used;
  • 系统信息:架构、内核、操作系统和 Agent 版本;
  • 地址和原因:节点地址,以及离线等状态的说明。

其中:

  • Capacity 是节点报告的总资源容量;
  • Allocatable 是扣除系统和 Agent 预留后,可供工作负载调度的资源;
  • Used 是 RLark 最近收到的使用量,可能与目标集群的实时状态存在短暂延迟。

理解节点类别 ​

RLark 根据 rlark.io/node-category 标签,把 Node 显示为云算力、端算力、端真机或其他。这个分类用于筛选节点,并决定控制台优先显示 GPU 还是设备资源摘要。

这里分类的是接入 RLark 的计算节点,例如 GPU 服务器、现场工作站、NUC 或机器人随行计算机。GPU、摄像头和机械臂等硬件通常作为 Node 上的资源或设备使用。

下表通过常见机器和设备组合说明每种类别的用途。

控制台类别典型机器和用途使用前还要确认
云算力(cloud)数据中心中的多 GPU 服务器,例如配有 8 张 GPU、集中运行训练、Rollout 或评测的服务器GPU 型号和数量、节点状态,以及镜像和存储是否可用
端算力(edge)实验室或现场的 GPU 工作站、工控机或 NUC,例如同时提供 1 张 GPU 和现场设备或网络资源的设备接入机硬件和设备连接、网络条件以及任务所需资源
端真机(robot)与具体机器人绑定的 NUC 或工控机,例如没有 GPU、但连接一台 Franka 机械臂的 NUC实际设备、独占安排、安全审批和操作权限
其他尚未纳入前三类、按当前环境定义用途的专用计算机节点的实际用途、资源和任务需要使用的标签

节点类别与 RLark 的部署方式无关。自行部署 RLark 时,由本组织的平台管理员为实际 Node 设置和维护分类;使用由组织或服务提供方部署并维护的 RLark 环境时,由该环境的管理员维护。两种环境使用相同的分类含义,只是实际资源范围和维护方不同。

表中的 GPU 和设备数量只是示例。分类取决于机器在当前环境中承担的用途,而不是硬件型号或资源数量。相同的 NUC 或 GPU 工作站,用于摄像头数据处理时可以归为端算力;与一台真实机器人绑定并提供其运行环境时,可以归为端真机。云算力也可以来自公有云、私有云或本地数据中心,具体资源范围以当前环境的说明为准。

按类别找到候选 Node 后,再结合接入形态、在线状态、可调度性和资源信息选择运行位置,并确认 GPU、设备、标签和存储满足任务要求。

区分在线状态和可调度状态 ​

  • Online 表示节点最近与 RLark 保持连接;
  • Offline 表示节点不可用或没有正常上报,可结合 reason 排查;
  • unschedulable: true 表示节点不接收新的工作负载,即使它仍为 Online。

遇到“节点在线但任务不启动”时,还要检查可调度标志、节点标签、资源请求、镜像、存储和网络依赖。

理解节点选择对任务的影响 ​

节点选择决定每组 Worker 实际运行在哪些机器上。一个角色匹配到几个 Node,RLark 就会尝试为这个角色创建几个 Worker。因此,节点选择会同时影响 Worker 数量、GPU 和设备是否可用、主机目录能否访问,以及 RLinf 的 cluster.num_nodes 和节点编号能否对齐。

在创建任务页面中:

  1. 先选择当前环境为任务提供的目标集群。
  2. 使用平台提供的节点标签表达硬件或用途要求,例如 GPU 型号、节点组或设备类型。
  3. 查看已选节点数,确认它等于这个角色需要的 Worker 数量。
  4. 对 Header 角色,确认已选节点数为 1。
  5. 多个角色可能选择同一批 Node 时,分别累计各角色的 Worker 和资源需求。

创建页面中的集群字段只用于筛选候选项;实际 Worker 会根据节点标签选择运行位置。页面显示的匹配数只包含当前所选集群,不能说明相同标签是否也出现在其他集群。

普通用户不需要自行查询所有 Node 或命名空间。当前环境没有提供明确的节点标签,或者无法确认标签只会匹配目标集群时,请向平台管理员说明每组 Worker 的数量、GPU、设备和存储需求,并取得可以直接填写的标签。管理员侧的检查方法见为训练任务确认运行条件。

为什么不直接填写物理节点名称

RLark 使用节点标签选择一组符合条件的机器,而不是要求用户逐个填写物理节点名称。这样可以在同类节点之间调度 Worker;具体会落到哪一台机器,还取决于节点当前是否在线、是否允许调度,以及资源是否足够。