This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: Ayatori 控制面边界
|
||||
last_reviewed: 2026-09-24
|
||||
last_reviewed: 2026-09-25
|
||||
---
|
||||
|
||||
# Ayatori 控制面边界
|
||||
@@ -53,6 +53,19 @@ Database 资源模型于 2026-09-24 明确采用官方 PV/PVC 的资源/申请
|
||||
和[总体架构](https://git.ddupan.top/panxiao81/ayatori/src/branch/main/docs/architecture/overview.md)为准。
|
||||
本页记录跨 homelab 的稳定边界,不表示 Ayatori 已部署或达到生产可用状态。
|
||||
|
||||
## Controller 公共基础设施边界
|
||||
|
||||
2026-09-25 维护者确认:OpenBao 认证、客户端及 Kubernetes 读写访问是整个 controller 的
|
||||
infra 能力,不属于第一个使用它们的 Database 领域。启动入口统一装配和注入;公共层不反向
|
||||
依赖产品领域,也不为复用而增加全局注册中心或统一包装所有后端的 reader/writer。
|
||||
优先使用官方 SDK 和 manager 已提供的接口;不同身份与权限范围仍须显式隔离。
|
||||
|
||||
领域按用例需要定义 repository,adapter 保留对象映射、凭据格式、路径、冲突与恢复语义。
|
||||
例如 Database 七键凭据及 UID 路径不是通用 KV 规则。此次修订纠正原实现把 Bao 认证放在
|
||||
Database adapter 的归属,认证方式与部署位置约定不变。源码拆分由
|
||||
[PR #13](https://git.ddupan.top/panxiao81/ayatori/pulls/13) 跟踪,尚未合并;实现与详细约定见
|
||||
[65c60cc 的总体架构](https://git.ddupan.top/panxiao81/ayatori/src/commit/65c60cca4528bc8bf14783fb7b59922283059c02/docs/architecture/overview.md#进程内依赖边界)。
|
||||
|
||||
## CI 验证约定
|
||||
|
||||
2026-09-24 维护者决定:全量验证自动在 PR 执行,main push 不再重复运行;保留手动入口。
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
| 约束 | 原因与边界 | 来源 |
|
||||
|---|---|---|
|
||||
| Ayatori 公共 infra 与领域 repository 分离 | 连接、认证和官方读写客户端统一装配;领域保留对象映射和业务语义,不引入万能仓储 | [Controller 公共基础设施边界](ayatori-control-plane.md#controller-公共基础设施边界) |
|
||||
| 新增监控配置优先使用 ServiceMonitor、PodMonitor、PrometheusRule | VictoriaMetrics Operator 负责转换,避免同一目标/规则维护两套声明;历史 VM 配置按需另行迁移 | 维护者 2026-09-25 明确要求;[基础监控运维](../guides/monitoring-foundation.md) |
|
||||
| Ayatori 复用 Kubernetes API machinery,不复用其容器编排产品边界 | kube-apiserver/etcd 提供 API、watch、RBAC 与状态协调;领域调度、生命周期、恢复和 GC 属于 Ayatori controllers;Kubernetes workload 只是可替换 backend | [Ayatori 控制面边界](ayatori-control-plane.md) |
|
||||
| Kubernetes 内置资源不绑定上游实现组件 | 可由 Ayatori Agent/controller 实现和消费 Node、Lease 等 API;使用 Node 不推导必须部署 kubelet、Pod 或 kube-scheduler | [Ayatori 控制面边界](ayatori-control-plane.md) |
|
||||
|
||||
@@ -180,6 +180,9 @@ manager 已增加显式 HTTPS/CA、auth role、目标 SA/audience 配置、Runna
|
||||
默认停用;controller 不自动创建身份或授予权限。真实受限 kubeconfig 启动 manager 的测试
|
||||
验证 TokenRequest、续期、跨 namespace/其他 SA 拒绝、RBAC 撤回恢复与 Bao audience 校验,
|
||||
三轮 race、本地全量测试和两种 lint 通过。生产 auth 配置与 Database 供应尚未接入,不代表已部署。
|
||||
认证客户端与生命周期按维护者确认的
|
||||
[公共 infra 边界](../architecture/ayatori-control-plane.md#controller-公共基础设施边界)整理,
|
||||
Database 保留凭据 repository/adapter 语义;重构继续由同一 PR 跟踪,不表示供应链路已完成。
|
||||
具体使用边界见该提交的
|
||||
[认证会话说明](https://git.ddupan.top/panxiao81/ayatori/src/commit/f0aa86f67673fbfb5f182f3ce35679c614be968d/docs/database/README.md#openbao-kubernetes-认证会话)。
|
||||
|
||||
|
||||
@@ -119,6 +119,14 @@ controller、目标固定、finalizer 保留与生成 RBAC,真实 API server
|
||||
源码文档与 wiki 已同步边界和正式链接。认证尚未合并,不把本地验证等同于新 head 的远端 CI;
|
||||
未部署生产 auth/RBAC,也未接入 Database 供应或 ESO 交付。
|
||||
|
||||
同一 PR 的公共 infra 拆分已提交为
|
||||
[65c60cc](https://git.ddupan.top/panxiao81/ayatori/commit/65c60cca4528bc8bf14783fb7b59922283059c02)。
|
||||
Bao client/TLS 与认证不再归 Database;Secret 凭据适配器注入 manager 的直连 reader,
|
||||
领域继续维护凭据格式和写入结果语义。分层约定已同步
|
||||
[控制面边界](architecture/ayatori-control-plane.md#controller-公共基础设施边界)及源码文档。
|
||||
全量单元/API 测试、真实 PostgreSQL/OpenBao 集成、公共 infra race 与两种 lint 本地通过;
|
||||
新 head 的远端 CI 仍由 PR 跟踪,不把本地验证或本次文档同步当成合并、部署完成。
|
||||
|
||||
## 2026-09-25 sandbox 存储故障复盘的来源边界
|
||||
|
||||
维护者报告 VyOS 到 sandbox 的 LB 故障并授权恢复。现场确认 LB 配置未在故障当天更改,
|
||||
|
||||
Reference in New Issue
Block a user