跳到主要内容

v7.26+ 附件单桶模式(仅限初装)

适用版本

本文适用于 ONES v7.26.0 及以上版本。

功能说明

附件单桶模式用于减少 ONES 附件存储所需的物理桶数量。

启用后:

  • public、private、temporary 三类业务附件共用一个业务附件桶。
  • 使用 ONES 内置附件备份时,public、private 两类附件备份共用一个附件备份桶。
  • 使用 ONES 内置附件备份时,业务附件桶与附件备份桶仍须相互独立。
  • ONES 会自动完成不同类型附件的目录隔离,用户不需要配置存储前缀。

这里的“单桶”不是所有数据只使用一个桶,而是业务附件只使用一个桶。如果使用 ONES 内置附件备份,还需要准备一个独立的附件备份桶。MySQL、ClickHouse 等其他数据仍使用各自的备份桶。

使用限制

重要限制
  • 单桶模式只能在完成初装引导页部署后、正式安装 ONES 服务前启用。
  • 已运行的多桶环境不能在升级后直接切换为单桶模式。
  • 单桶环境投入使用后不能直接切换为多桶模式。
  • 安装程序不会自动迁移、合并或拆分已有附件数据。
  • 单桶与多桶之间不支持直接转换;如确有迁移需求,需另行评估,不属于本文说明范围。

正常升级 ONES 版本时,应保持原有存储模式不变:

  • 多桶环境升级后继续使用多桶配置。
  • 单桶环境升级后继续保留单桶配置。

前置条件

启用单桶模式前,需要满足以下条件:

  1. 使用 ONES v7.26.0 或以上版本安装包。
  2. 已完成初装引导页部署,但尚未正式安装 ONES 服务。
  3. 环境中不存在历史附件数据。
  4. 准备一个私有读写的业务附件桶。
  5. 确认附件备份方式:
    • 使用外置 S3 时,应优先由客户通过对象存储服务商提供的能力自行备份。
    • 客户无法自行备份、需要使用 ONES 内置附件备份时,再准备一个独立的私有读写备份桶。
  6. 已按照对象存储服务商要求完成业务附件桶的基础连接和访问权限配置。

使用 ONES 内置附件备份时,业务附件桶与附件备份桶不能使用同一个物理桶。

客户自行负责附件备份时,无需准备 ONES 附件备份桶,也无需增加 ONES 附件备份配置。

配置方法

完成安装器(初装引导页)部署后,先不要正式安装 ONES 服务。

进入 ONES 操作容器并编辑初装配置:

ones-ai-k8s.sh
vi config/private.yaml

增加或修改以下单桶配置:

# 开启附件单桶模式
attachmentS3SingleBucketEnable: true

# 三项必须填写同一个业务附件桶
dataS3PublicBucket: "customer-data"
dataS3PrivateBucket: "customer-data"
dataS3TmpBucket: "customer-data"

# 单桶模式必须关闭附件 CNAME 访问
dataCNameS3Enabled: false

其中:

  • customer-data 是业务附件桶示例。
  • 示例桶必须替换为实际使用的业务附件桶名。
  • 其他对象存储配置沿用现有配置,本页不重复说明。

单桶模式继续复用原有桶配置项,不需要增加单桶专用桶名或存储前缀配置。

客户自行备份

使用外置 S3 时,应优先由客户使用对象存储服务商提供的备份能力自行备份。

客户自行负责附件备份和恢复时,ONES 不再负责附件备份。此时无需准备 ONES 附件备份桶,也无需增加任何 ONES 附件备份配置。

使用 ONES 内置附件备份

只有客户无法自行备份、需要由 ONES 执行附件备份时,才增加以下配置:

# 开启 ONES 附件对象存储备份
backupEnabledForObjectStorage: true

# 两项必须填写同一个附件备份桶
backupS3PublicBucket: "customer-backup"
backupS3PrivateBucket: "customer-backup"

customer-backup 是附件备份桶示例,必须替换为实际使用的附件备份桶名。业务附件桶与附件备份桶必须相互独立。

配置完成后,继续原初装流程,正式安装 ONES 服务。

注意

不要在已经运行的环境中修改上述配置并重新部署,以此尝试切换存储模式。

备份与恢复

使用外置 S3 时,应优先由客户使用对象存储服务商提供的备份能力自行备份。客户自行备份时,附件备份和恢复由客户负责,无需配置或使用 ONES 附件备份功能。

只有客户无法自行备份时,才使用 ONES 内置附件备份。该方式沿用现有附件备份与恢复操作,不增加新的操作入口。

使用 ONES 内置附件备份时需要注意:

  • public 和 private 附件会备份到同一个附件备份桶,并由 ONES 自动隔离。
  • temporary 临时附件不参与备份。
  • 插件数据继续由附件备份流程处理。
  • MySQL、ClickHouse 的备份方式和备份桶不受影响。

具体操作请参考:

常见配置错误

以下配置不符合单桶模式要求:

  • 三个 dataS3*Bucket 配置成不同的桶。
  • dataCNameS3Enabled 设置为 true
  • 使用 ONES 内置附件备份时,两个 backupS3*Bucket 配置成不同的桶。
  • 使用 ONES 内置附件备份时,业务附件桶与附件备份桶使用同一个物理桶。
  • 使用 ONES 内置附件备份但未开启附件对象存储备份。
  • 在已有附件数据的环境中开启单桶模式。
  • 单桶模式投入使用后直接关闭开关。