主题
打开 TensorBoard
创建或编辑 Job 时填写TensorBoard 日志目录,即可为 Head Task 配置 TensorBoard 代理入口。训练程序还需要把 TensorBoard event 文件写入同一目录。
创建时配置日志目录
- 在任务创建弹窗的公共配置步骤选择 Header 角色。
- 确认 Header 角色的全局匹配记录和 YAML 副本数都为 1;多副本 Head Task 会同时启动多个 Ray Head、运行脚本和 TensorBoard sidecar,不得提交。
- 在TensorBoard 日志目录(可选)中填写 Header 容器内的绝对路径,例如项目约定的输出目录。
- 确认运行脚本确实把 event 文件写入同一路径。
- 如果日志需要跨 Pod 重建保留,把该目录放在已配置的主机目录或对象存储挂载之下。
- 在 YAML 预览中确认只有单副本 Head Task 带有
tensorBoardDir。
当该目录被已有挂载覆盖时,TensorBoard sidecar 会复用同一个卷;如果没有覆盖该目录的挂载,RLark 会为主容器和 sidecar 添加共享的临时卷。临时卷中的日志不会在 Pod 重建后持久保留。
从任务详情打开
- 在任务列表中选择目标任务。
- 在页面顶部找到 Header Worker 的访问入口。
- 等待 TensorBoard 外链图标出现。
- 选择图标,在新标签页中通过 RLark 代理打开 TensorBoard。
代理会把请求转发到 Head Task 的 Pod 端口 6006。Pod 和 Agent 必须可达,TensorBoard sidecar 也必须已经启动。
入口出现不等于服务就绪
配置中包含 tensorBoardDir 后,页面就可能显示 TensorBoard 图标。打开前仍需等待 Pod 和 sidecar 运行,并确认目录中已经生成 event 文件。
入口不可用时
- 没有图标:确认 Job 的 Head Task 中已经保存 TensorBoard 日志目录。
- 页面连接失败:确认 Header Worker Pod 仍存在且可访问,任务未被停止,并检查 Agent 连接。
- 页面打开但没有曲线:确认训练进程写入的是同一个容器路径,并检查目录内是否存在 event 文件。
- 重建后日志消失:确认日志目录位于持久挂载下,而不是自动创建的临时卷。
TensorBoard 用于查看训练输出,不能单独判断 Job 是否完成。StatefulSet Task 不会根据业务结果自动把 Job 更新为成功或失败;请同时检查 Pod 状态、日志、业务指标和持久输出。需要容器终止或重启详情时,请联系平台管理员查询 Pod 的终止时间、重启记录和事件。