跳转到主要内容

兼容性

SILO 能否直接替换 MinIO?按用户影响分为 12 类兼容或改进、4 类轻微差异、8 类需要按条件检查的变化。

普通 S3 应用通常可以不改代码,用 SILO 替换 MinIO。 常用 S3 API、SigV4、SDK 接入方式和对象磁盘布局延续上游;部署、权限及复制状态需要按下列条件检查。因此,SILO 是有条件的 drop-in replacement。

当前发布基线为 20261026。 本页汇总分叉以来的源码与配套组件变化,标明各项修复首次发布的版本。当前组件组合与旧版缺失的修复见组件版本矩阵。

20261026 正式版变化

Server 20261026合入了 LDAP 长 DN 登录、内置策略 Reset、实时桶清单、版本桶生命周期过期、分片复制及多池删除修复。读仲裁与自愈策略保持不变;租约失效、部分元数据更新与存量不一致对象的边界详见组件版本矩阵。

20261018 正式发布

Server 20261026保留 20261018 已交付的修复。升级检查包括 Object Lock、IAM 管理凭据授权、普通 LIST 恢复、strict 分片列表退役及 OIDC/JWK 密钥限制,见服务端兼容性。下方列出的 strict 前提仅适用于 Server 20260916 的可选模式。

🟢 兼容或改进:12 类

这些能力在正常用法下无需迁移适配;依赖旧错误行为、混合版本或历史异常状态的情况另列于橙色项。

类别与一句话变化 触发条件 影响范围与操作 详情索引
G01 · 完整 Web 管理控制台
恢复桶、对象、用户、策略和系统的完整 Web 管理。
通过浏览器管理部署。 管理界面增强;普通 S3 应用无需改动。 Console 功能
G02 · 中文界面与文本预览
增加中英双语和有界、安全的文本预览。
切换界面语言或预览文本对象。 影响 Console 使用体验,不改变对象内容。 双语界面、文本预览
G03 · 桶级 CORS
原有 CORS 接口开始实际保存和执行逐桶跨域规则。
浏览器跨域访问,并配置了桶级 CORS。 该桶规则覆盖全局 CORS;对象访问仍需授权。 CORS 行为
G04 · 原生健康检查
新增 silo healthcheck 命令,便于容器和运维探测。
主动采用新探针命令。 原有 HTTP 健康端点继续可用。 命令与范围
G05 · 客户端校验和审计
新增 mcli checksum verify,读取对象并核验校验和。
主动运行完整性审计。 只读检查和报告,不修改或修复对象。 审计命令
G06 · 上传与复制校验和修复
合法上传、分片完成和复制更准确地计算、保存及返回校验和。
使用相关上传或复制路径。 改善 SDK 互操作;非法请求的变化见 O04。 分片上传、S3 修复
G07 · 加密与压缩处理修复
修正 SSE-C、KMS、压缩与复制组合中的数据及逻辑大小处理。
使用这些加密、压缩或复制组合。 修正新请求,不修改存量对象。 SSE-C 与历史对象、联邦复制
G08 · 桶配置并发更新修复
桶配置共用元数据锁,防止并发更新互相覆盖。
同时修改策略、生命周期、加密等桶配置。 管理操作更可靠,现有调用方式不变。 共享配置锁
G09 · 标签与对象锁复制修复
复制更准确地保留并排序标签、保留期与锁状态。
使用标签、Object Lock 的复制或修复。 减少状态丢失与旧事件覆盖;混合版本见 O07。 标签排序、对象锁排序
G10 · 池迁移与数据修复改进
再平衡、退役及修复更准确地处理标签、版本和删除标记。
迁移存储池、执行 heal 或恢复复制。 改善元数据保留与重试;历史异常仍需检查。 多池一致性、复制恢复
G11 · 通知与流式推送修复
修正 NATS/AMQP 配置识别,以及通知、Select 等流式响应刷新。
使用相应通知目标或流式接口。 配置与事件输出更准确;旧数据库配置见 O03。 通知配置、流式响应
G12 · 运行稳定性与资源回收
修复并发采集、缓冲区所有权和连接回收等问题。
并发读写、指标采集或取消请求。 消除相关崩溃与资源泄漏。 读缓冲修复、运行与观测

🔵 轻微差异:4 类

普通应用通常无需调整;硬编码产品文案、指标含义或响应字段的工具仍应检查。

类别与一句话变化 触发条件 影响范围与操作 详情索引
B01 · 产品名称与展示标识
横幅、日志、HTTP 产品身份及界面展示改为 SILO。
阅读输出,或按产品名称匹配规则。 展示变化;硬编码名称的脚本需调整,安装变化见 O01。 身份变化、客户端输出
B02 · 控制台列表改为分页
对象列表按游标加载,排序、筛选和选择作用于当前页。
在 Console 浏览、筛选或批量选择对象。 操作习惯有变化,应用直接调用 S3 的方式不变。 分页边界
B03 · 监控与诊断信息更完整
新增诊断指标,并修正配额、复制等计数或状态含义。
使用对应指标、仪表盘或告警。 原指标命名空间保留;核对相关展示和告警规则。 指标变化、Console 指标
B04 · API 返回字段更丰富
部分复制、分片和 Console 响应增加校验和或会话字段。
读取这些 API 的返回结果。 标准客户端通常可处理;拒绝未知字段的解析器见 O05。 分片响应、复制响应、Console API

🟠 按条件检查:8 类

命中条件,就检查对应项。

类别与一句话变化 触发条件 影响范围与操作 详情索引
O01 · 安装与启动配置
交付物改名为 silo / mcli,需核对服务、镜像、目录和权限。
从 MinIO 软件包、容器、systemd 或 Helm 迁移。 管理员执行一次部署迁移检查,通常不改业务代码。 容器迁移、软件包与账号、客户端配置
O02 · 自定义权限策略
改密、永久删除版本及部分桶操作采用修正后的授权规则。
自定义 Allow/Deny、对象 ARN 授权桶操作,或使用来源 IP 条件。 谁能做什么可能变化;验证有效权限和代理信任配置。 密码权限、版本删除、桶授权、代理信任
O03 · 旧认证及通知配置
旧式认证、数据库通知及部分 TLS、环境文件用法需调整或验证。
OIDC HMAC token、旧数据库分散参数、老代理/TLS 或特殊环境文件写法。 可能影响登录、通知或启动;按对应配置迁移。 OIDC 算法、通知连接串、TLS、环境文件
O04 · 依赖旧错误行为的程序
校验、条件、错误码、退出码和列表上限不再沿用部分旧行为。
依赖错误请求成功、忽略 If-Match,或启用 Server 20260916 strict 模式后仍假设分片列表一次超过 1,000 条。 检查错误处理、重试、分页与批处理的最终退出码。 校验错误、条件删除、分片列表、CLI 退出码
O05 · 自制客户端与管理工具
私有接口、签名覆盖、Console 自动化及 Go 包路径存在变化。
使用 ReadMultiple、手写签名、严格响应解析、Go 嵌入或定制 Console。 定制集成和编译需单独验证;普通 S3 SDK 不使用私有存储接口。 私有接口、签名、Console API、Go 模块
O06 · 多池操作与 strict 分片模式退役
多池写删核实元数据;20260916 的可选 strict 列表模式已退役。
多池条件写/删除,或升级曾启用 strict 列表的部署。 故障时可能返回 503,即使 GET 仍成功;Server 20261018 与 20261026 忽略 strict 开关并警告,不提供持久列表与严格取消。 多池条件、当前分片契约
O07 · 跨站复制、混跑和回滚
IAM 撤销与桶配置删除状态要求协调升级和恢复。
多站点、共享 IAM、不同版本混跑或降级恢复。 保留完整恢复点并在回滚时同步恢复所有参与端。 IAM 升级、配置收敛、回滚边界
O08 · 自更新及上游在线服务
原地自更新、SUBNET 与上游托管支持集成被停用。
使用 admin update、mcli update 或 MinIO 在线支持流程。 改用软件包、镜像或编排器升级;常规 S3 访问不受此项影响。 服务端更新、客户端更新、SUBNET

比较范围与版本边界

服务端对照的是分叉时的上游源码 27742d469462(2025-12-03,位于 2025-10-15 上游最后正式发行版标签之后)。Console、mcli 的各自基线见控制台说明与客户端说明。本页覆盖 API、功能、可见行为与运维变化,同一修复可涉及多个场景。

SILO 对上游 MinIO/MC 保持尽最大努力兼容;正式支持和发布验收的组合为 SILO + SILO Console + mcli + silo-pkg。保留协议、环境变量和磁盘布局,不构成任意上游版本混跑或双向降级的承诺。服务端详细审计保留历史基线和逐项说明,组件版本矩阵列出全栈已发布组件版本。

曾加入后撤回的访问频率池间分层不属于上述 24 类:它不在分叉时的上游功能中,也从未进入任何公开 Server 版本:20260903 早于该特性,20260916 发布前已将其移除。普通生命周期过期、远程分层、再平衡和池退役仍然保留。

准备迁移时,从 O01–O08 筛选与你有关的条件,再按迁移指南执行。

组件版本

SILO 各组件的正式版本、独立发布的 silo-pkg 3.16.0 源码库与升级边界。

密码权限迁移

ChangeMyPassword 与 CreateUser 拆分的适用版本、策略迁移与回滚限制。

访问频率分层移除

可选的 GET 频率池分层特性为何被移除,以及包含该特性的中间构建如何迁移。

Silo 与 MinIO 服务端兼容性

经过源码验证的 Silo 服务端分叉兼容性审计:二进制、配置、S3 与管理行为、存储内部协议、软件包、容器与 Helm。

从 MinIO 迁移到 Silo

单节点迁移案例、一致性备份、容器切换、数据验证与恢复边界。

MCLI 客户端兼容性注记

pgsty/mc 的兼容性、行为变化、安装方式与当前版本

原生软件包迁移

silo RPM/DEB 软件包相对 minio 软件包的变化:文件布局、服务账号、接管语义与注意事项。

Console 兼容性注记

SILO Console 与上游 MinIO Console 的差异

特性设计

Silo 在上游 MinIO 之外新增能力的设计笔记——先落笔,再落地。

表格阅读