主题
创建和管理存储类
在控制台的存储页面,可以把已有的对象存储 Bucket 连接到一个或多个集群。连接创建后,控制台会显示一个 StorageClass;训练任务可以通过它挂载 Bucket,文件浏览器也可以通过它访问对象。
共享或托管环境通常由负责存储配置的人员统一维护这些连接;项目专用环境也可以允许团队自行创建。请按当前环境采用的方式选择下一步:
- 已经有可用的 StorageClass:直接阅读在训练任务中使用存储,不需要再次填写对象存储凭据。
- 需要连接新的 Bucket,并且已经取得连接信息和目标集群:按照本页创建存储类。
- 当前环境统一管理对象存储:把 Bucket、用途、目标集群和读写要求提供给负责人员,由其完成配置;不要在任务环境变量或运行脚本中填写对象存储凭据。
先保护凭据和已有数据
创建、编辑和删除存储类会改变关联集群中的 Secret 和 StorageClass。请使用为 RLark 单独准备、权限满足任务需要且范围尽量小的凭据。Access Key ID 和 Access Key Secret 只填写在存储类表单中,不要放入 Job、日志、截图或工单。
编辑或删除存储类可能让已有任务无法继续挂载数据。删除存储类不会删除 Bucket 中的对象。
创建存储类
Step 1 准备连接信息
开始前准备以下内容。字段含义不清楚时,请从对象存储服务的控制台或当前环境的存储说明中取得准确值。
| 表单字段 | 填写内容 |
|---|---|
| 名称 | 当前环境中唯一、便于识别用途的 StorageClass 名称;创建后不能通过编辑改名 |
| 命名空间 | 关联集群中保存访问 Secret 的命名空间;没有单独约定时使用环境提供的默认值 |
| 提供商 | Bucket 所属服务,例如 AWS S3、Aliyun OSS、MinIO 或其他 S3 兼容服务 |
| 关联集群 | 需要浏览或挂载该 Bucket 的集群;只选择已经确认网络和 CSI 条件的集群 |
| Endpoint | 对象存储服务地址,不是控制台地址,也不是 Bucket 内的目录 |
| 区域 | Bucket 所在 Region;使用 S3 兼容服务时按服务提供方的要求填写 |
| Bucket | 已经存在的 Bucket 名称 |
| Path Style | 对象存储服务要求 path-style URL 时启用;不确定时查阅服务提供方说明 |
| Access Key ID / Secret | 用于访问该 Bucket 的专用凭据;权限应与任务需要的读取或写入范围一致 |
| 描述 | 记录用途、所属项目和适用范围,不写入凭据或其他敏感信息 |
创建存储类不会创建 Bucket,也不会自动上传数据。需要新建 Bucket、设置版本控制、生命周期、配额或访问策略时,请先在对象存储服务中完成。
Step 2 填写并提交
- 在左侧导航选择存储,进入存储管理页面。
- 选择创建存储类。
- 填写基本信息、关联集群和连接信息。
- 再次核对名称、Endpoint、Bucket、Region 和全部关联集群。
关联多个集群时逐个记录结果
RLark 会按顺序在各个关联集群创建配置。某个集群失败时,已经成功的集群不会自动回滚。提交前请记录目标集群;出现错误后,不要直接重复提交整个表单,应先确认哪些集群已经完成、哪些集群仍需处理。
确认上述信息后,选择创建存储类。
Step 3 检查创建结果
- 打开新建存储类的详情,核对 Provider、Bucket、Endpoint、连接方式和关联集群。
- 使用文件浏览器在指定的测试前缀中上传一个不含敏感信息、名称唯一的小文件,再下载并核对大小;工具可用时也可以核对哈希。
- 文件浏览器只通过页面显示的首个关联集群访问存储。配置关联了其他集群时,请在那些集群分别确认 Secret 和 StorageClass 已创建,并通过该集群上的小型测试任务完成一次写入和重新读取。
- 验证通过后,再把该 StorageClass 用于正式训练任务。具体挂载和容器路径设置见在训练任务中使用存储。
如果某个集群失败,请记录成功和失败的集群,并检查该集群到 Endpoint 的 DNS、网络和 TLS、凭据权限、Bucket、Region、CSI 组件及 Path Style 设置。不要通过扩大为全局权限来绕过错误。
编辑存储类
- 记录当前配置、全部关联集群,以及正在使用该存储类的任务。
- 明确哪些集群要保留、新增或移除,并记录每个集群预期的 StorageClass 和 Secret 状态。
- 在存储页面找到目标项,选择编辑存储类并修改配置。
提交后分别检查已有任务和新任务
更新会先处理不再关联的集群,再按顺序应用目标配置;任一集群失败后,已经完成的变更不会自动回滚。正在运行的 Worker 也可能继续使用此前创建的运行时资源。
提交前请准备恢复原配置所需的信息。提交后逐集群确认实际状态,并分别检查已有任务和新建测试任务的挂载与读写结果。
核对修改内容后提交。出现部分成功时,停止其他存储变更,保存成功与失败集群清单,再按修改前的记录逐集群恢复或完成目标状态。
删除存储类
删除前保存关联集群和恢复信息
删除会从关联集群移除相应的 StorageClass 和 Secret,依赖它的新任务将无法挂载存储。多集群删除也不会自动回滚已经完成的集群;聚合列表还可能跳过当前不可达的集群。
执行前必须保存原关联集群、配置用途和恢复方法,并确认没有任务继续依赖它。缺少这些信息时,不要删除。
- 停止让新任务引用该存储类,并找出仍在使用它的任务。
- 确认需要保留的数据已有独立备份,或仍可从对象存储服务访问。
- 在列表中再次核对名称、Bucket 和全部关联集群。
- 选择删除并确认,记录请求结果。
- 在每个原关联集群分别确认 StorageClass 和 Secret 均已删除。
- 检查相关任务和文件入口已经按预期停止使用该配置。
只要有一个集群无法独立检查,就把删除视为未完成,停止后续清理,并按删除前记录逐集群处理。不要直接重复整次删除。
下一步
- 将已有数据提供给任务:在训练任务中使用存储
- 浏览新连接中的对象:浏览文件和目录
- 上传训练输入或下载结果:上传和下载文件
- 处理连接、PVC 或挂载问题:存储问题排查