docs: clarify Instance identity and deletion semantics
E2E Tests / Run on Ubuntu (pull_request) Failing after 38s
Tests / Run on Ubuntu (pull_request) Successful in 6m52s
Lint / Run on Ubuntu (pull_request) Successful in 8m23s

This commit is contained in:
2026-09-13 15:20:26 +00:00
parent a0afbf992c
commit bb87316773
4 changed files with 48 additions and 15 deletions
+12
View File
@@ -99,6 +99,18 @@ PostgreSQL 管理 role。应用或 GitOps 流程在获得 namespace RBAC 后管
实例 Ready 不代表 PostgreSQL 数据有备份或高可用,只表示 controller 当前可以安全
建立管理连接、读取 server metadata、访问 controller registry 并使用所需管理能力。
Instance 身份和 endpoint 以管理员声明为准。修改 endpoint 不验证是否仍是原物理
服务器或原 registry,不增加服务器/安装身份绑定检查;但旧配置观察失效,必须按
新配置重新检查连接和管理能力。新 CR 按新 Instance 处理,不自动接管旧 UID 的租户
资源。controller 不迁移旧服务器上的数据,也不清理旧目标,影响由管理员负责评估。
Instance 开始受管时即添加 finalizer,成功保存后才参与供应,不等发现 Tenant 后
再补加。删除期间停止新供应;仍有引用它的 Tenant(包括正在删除的 Tenant)时保留
finalizer,无引用后才移除。不级联删除 Tenant 或任何外部数据库、角色、凭据。
引用检查失败不得当作无引用。首版不引入跨对象锁或准入控制:finalizer 不禁止同时
创建 Tenant CR,新 Tenant 遇到正在删除或已不存在的 Instance 时不得开始供应。
这不保证列表检查、CR 创建和在途外部操作之间的原子性;不是严格的跨对象事务。
### 5.2 PostgreSQLTenant
`PostgreSQLTenant` 是 namespaced 资源。v1alpha1 中,一个 Tenant 精确对应: