diff --git a/decks/xinfra/slides.md b/decks/xinfra/slides.md index a461159..301ea84 100644 --- a/decks/xinfra/slides.md +++ b/decks/xinfra/slides.md @@ -64,7 +64,8 @@ layout: default - Wayne · CloudDM - CacheCloud · Apollo -- Grafana · qpass +- qpass · Grafana +- Superset @@ -89,7 +90,7 @@ graph TB subgraph XINFRA["XINFRA 平台边界"] Portal["统一门户
SSO 跳转入口"] Resource["资源纳管
物理机/虚机/云主机/K8s"] - Service["服务交付入口
跳转 Wayne/CloudDM/Apollo"] + Service["服务交付入口
跳转 Wayne/CloudDM/Apollo/Superset"] BasicSvc["基础服务交付
Ansible 编排部署"] DBReview["数据库审核
SQL 工单审批"] Monitor["监控纳管
对接夜莺展示"] @@ -103,6 +104,7 @@ graph TB CloudDM["CloudDM
SQL 审核"] Apollo["Apollo
配置中心"] Grafana["Grafana
监控可视化"] + Superset["Superset
日志可视化"] Nightingale["夜莺
告警引擎"] CacheCloud["CacheCloud
Redis 管理"] end @@ -145,7 +147,7 @@ graph TB | 统一入口 | 一个入口登录,集中展示各子系统和平台能力 | | 资源台账 | 统一查看物理机、虚机、云主机、K8s 资源 | | 容器纳管 | 管理 K8s 集群、Namespace、配额和业务线归属 | -| 业务交付 | 跳转 Wayne、CloudDM、Apollo 等系统 | +| 业务交付 | 跳转 Wayne、CloudDM、Apollo、Superset 等系统 | | 基础服务交付 | 标准化模板 + Ansible 编排 | | 数据库审核 | SQL 工单、审批、审计 | | 监控纳管 | 对接夜莺,按业务线展示告警 | @@ -159,7 +161,7 @@ graph TB | 范围 | 不做原因 | |------|---------| -| 替代 Wayne、Apollo、CloudDM、夜莺 | 专业系统继续保留 | +| 替代 Wayne、Apollo、CloudDM、CacheCloud、Grafana、Superset 等 | 专业系统继续保留 | | 全量自研监控和告警引擎 | 成本高,非当前重点 | | 复杂 AI 排障 | 由其他项目负责 | | 虚机创建主流程 | 统一走线下流程 | @@ -226,6 +228,10 @@ sequenceDiagram SRE->>XINFRA: 点击 Apollo 卡片 XINFRA->>Apollo: SSO 跳转 + 上下文传递 Apollo-->>SRE: 免登录进入 Apollo + else 日志分析 + SRE->>XINFRA: 点击 Superset 卡片 + XINFRA->>Superset: SSO 跳转 + 上下文传递 + Superset-->>SRE: 免登录进入 Superset end XINFRA->>XINFRA: 记录跳转审计日志 @@ -235,7 +241,7 @@ sequenceDiagram
-> **场景**:业务 SRE 在 XINFRA 中进入"业务交付",选择对应业务线后跳转到 Wayne、CloudDM 或 Apollo 完成实际操作,平台保留入口、上下文和审计。 +> **场景**:业务 SRE 在 XINFRA 中进入"业务交付",选择对应业务线后跳转到 Wayne、CloudDM、Apollo 或 Superset 完成实际操作,平台保留入口、上下文和审计。
@@ -260,7 +266,7 @@ sequenceDiagram Ansible->>Target: 执行标准化部署 Ansible-->>XINFRA: WebSocket 实时日志推送 XINFRA-->>Ops: 任务中心查看执行进度 - Target-->>Reg: 部署完成,自动注册至 CloudDM/CacheCloud + Target-->>Reg: 部署完成,自动注册至 CloudDM / CacheCloud XINFRA-->>Ops: 部署完成通知 ``` @@ -366,13 +372,13 @@ sequenceDiagram ### 决策 -XINFRA 做**入口聚合**,不替代 Wayne、CloudDM、Apollo 等专业系统。 +XINFRA 做**入口聚合**,不替代 Wayne、CloudDM、Apollo、CacheCloud、Grafana、Superset 等专业系统。 ### 背景 | 现状 | 问题 | |------|------| -| 运维需要登录 6+ 个系统 | 入口分散,效率低 | +| 运维需要登录 7+ 个系统 | 入口分散,效率低 | | 各系统独立认证 | 重复登录,体验差 | | 操作记录分散在各系统 | 审计困难,无法追溯 | | 新人不知道该用哪个系统 | 上手门槛高 | @@ -613,6 +619,7 @@ graph TB | Wayne | 容器应用部署 | 业务线 + Namespace | | CloudDM | 数据库管理与 SQL 审核 | 业务线 + 数据库实例 | | Apollo | 配置管理 | 业务线 + 应用 | +| Superset | 日志数据分析 | 业务线 + 数据源 |
@@ -655,12 +662,13 @@ XINFRA 提供统一的子系统入口卡片列表,支持 SSO 免登录跳转 | 子系统 | 功能定位 | XINFRA 集成方式 | |--------|---------|----------------| -| Wayne | 多集群容器管理 | SSO 跳转 + APIKey | -| CloudDM | 数据库管理与 SQL 审核 | SSO 跳转 + 自动注册 | -| CacheCloud | Redis 缓存管理 | SSO 跳转 + 自动注册 | -| Apollo | 配置中心 | SSO 跳转 | -| Grafana | 监控可视化 | SSO 跳转 | -| qpass | 密码管理 | SSO 跳转 | +| Wayne | 业务容器发布、命名空间与配额管理 | SSO 跳转 + APIKey | +| CloudDM | 数据库 SQL 上线统一审核 | SSO 跳转 + 自动注册 | +| CacheCloud | Redis 实例全生命周期管理 | SSO 跳转 + 自动注册 | +| Apollo | 统一配置管理,按机房隔离 | SSO 跳转 | +| qpass | 七牛统一运维平台 | SSO 跳转 | +| Grafana | K8s / 容器 / 业务指标仪表盘 | SSO 跳转 | +| Superset | 日志数据探索与可视化分析 | SSO 跳转 |
@@ -672,9 +680,10 @@ XINFRA 提供统一的子系统入口卡片列表,支持 SSO 免登录跳转 | 子系统 | 授权模型 | 说明 | |--------|---------|------| | Wayne | Namespace 映射 | 业务线 → Wayne Namespace | -| CloudDM | 角色分配 | 业务线 → 数据库访问权限 | +| CloudDM | LDAP 组映射 | LDAP 用户组 → CloudDM 角色 | | Apollo | 环境权限 | 业务线 → 配置环境访问 | | Grafana | 仪表盘权限 | 业务线 → 监控面板 | +| Superset | 数据源权限 | 业务线 → 日志数据访问 | ### 审计记录 @@ -780,20 +789,23 @@ graph LR Portal["XINFRA 主系统"] subgraph 子系统 - Wayne["Wayne
多集群容器管理"] + Wayne["Wayne
容器发布与配额管理"] CloudDM["CloudDM
SQL 审核"] - CacheCloud["CacheCloud
Redis 管理"] + CacheCloud["CacheCloud
Redis 全生命周期"] Apollo["Apollo
配置中心"] - Grafana["Grafana
监控可视化"] - QPass["qpass
密码管理"] + QPass["qpass
七牛运维平台"] + Grafana["Grafana
指标可视化"] + Superset["Superset
日志可视化"] end - Portal -.->|SSO 跳转| Wayne & CloudDM & CacheCloud & Apollo & Grafana & QPass + Portal -.->|SSO 跳转| Wayne & CloudDM & CacheCloud & Apollo & QPass & Grafana & Superset Wayne -->|Client-Go| RKE2["RKE2 集群"] CloudDM -->|SQL 审核| MySQL[("MySQL")] CacheCloud -->|Agent| Redis[("Redis")] Apollo -->|ConfigService| RKE2 + Grafana -->|PromQL| VM["VictoriaMetrics"] + Superset -->|SQL| CH["ClickHouse"] ```
@@ -857,6 +869,7 @@ graph TB CloudDM["CloudDM"] CacheCloud["CacheCloud"] Apollo["Apollo"] + Superset["Superset"] end end @@ -1017,7 +1030,7 @@ layout: center # 四、对接子系统 -
Wayne · CloudDM · CacheCloud · Apollo · Grafana · qpass
+
Wayne · CloudDM · CacheCloud · Apollo · qpass · Grafana · Superset
--- @@ -1027,13 +1040,14 @@ layout: center
### 定位 -多集群 Kubernetes 容器管理平台,统一管理 7 机房 RKE2 集群。 +多集群 Kubernetes 容器管理平台,负责**业务容器发布**和**命名空间与配额管理**,复用 Wayne 原生多租户能力。 ### 核心能力 -- **多集群纳管** — 通过 Client-Go 对接各机房 RKE2 集群 API -- **应用部署** — 支持 Deployment、StatefulSet 等 K8s 工作负载管理 +- **业务容器发布** — Deployment、StatefulSet 等工作负载的部署与回滚 +- **命名空间管理** — 按业务线创建 Namespace,隔离资源边界 +- **配额管理** — 为每个 Namespace 设置 ResourceQuota,控制 CPU / 内存上限 +- **多租户隔离** — 复用 Wayne 原生租户模型,业务线 ↔ Namespace 自动映射 - **CI/CD 集成** — 对外提供 APIKey,GitLab CI 自动触发部署 -- **一键回滚** — 应用发布异常时快速回滚至历史版本
@@ -1042,34 +1056,35 @@ layout: center ```mermaid graph LR - CI["GitLab CI"] -->|APIKey 认证| Wayne["Wayne"] - Wayne -->|Client-Go| RKE2["RKE2 集群"] + BL["业务线"] -->|租户映射| Wayne["Wayne"] + Wayne -->|Namespace + Quota| RKE2["RKE2 集群"] + CI["GitLab CI"] -->|APIKey| Wayne Main["XINFRA 主系统"] -.->|SSO| Wayne ``` ### 说明 - 独立 WebUI + API 服务 -- APIKey 遵循最小权限原则 -- 主系统通过 SSO 跳转,各自维护操作审计 +- XINFRA 负责"哪个业务线用哪些资源",Wayne 负责"怎么发布和管理容器" +- APIKey 遵循最小权限原则,主系统通过 SSO 跳转
--- -# 子系统 — CloudDM(数据库管理与 SQL 审核) +# 子系统 — CloudDM(数据库 SQL 审核)
### 定位 -SQL 审核与变更平台,统一管控数据库上线流程。 +数据库 SQL 上线**统一审核平台**,所有数据库变更必须经过 CloudDM 审批才能执行。 ### 核心能力 -- **SQL 审核** — 上线前自动检查 SQL 语句合规性与风险 -- **多库支持** — 原生支持 MySQL,后续扩展 PostgreSQL 等 -- **变更执行** — 审核通过后通过 Sidecar SQL 代理执行变更 -- **操作审计** — 所有 SQL 操作全程记录,可追溯 +- **SQL 审核** — 上线前自动检查 SQL 语句的合规性、语法风险和性能影响 +- **LDAP 角色映射** — 支持 LDAP 用户组到 CloudDM 角色的自动映射,无需手动配权限 +- **变更执行** — 审核通过后通过 Sidecar SQL 代理安全执行变更 +- **操作审计** — 所有 SQL 操作全程记录,可追溯谁在什么时候改了什么
@@ -1078,7 +1093,8 @@ SQL 审核与变更平台,统一管控数据库上线流程。 ```mermaid graph LR - User["DBA / 开发"] --> CloudDM["CloudDM"] + LDAP["企业 LDAP"] -->|用户组映射| CloudDM["CloudDM"] + User["DBA / 开发"] --> CloudDM CloudDM -->|Sidecar 代理| MySQL[("MySQL")] Deploy["服务部署完成"] -.->|自动注册| CloudDM Main["XINFRA 主系统"] -.->|SSO| CloudDM @@ -1086,26 +1102,27 @@ graph LR ### 说明 - 基础服务交付流程中,MySQL 部署完成后自动注册至 CloudDM -- 白名单机制防止规则误判拦截合法 SQL +- LDAP 用户组映射:运维组 → DBA 角色,开发组 → 只读角色,入职即有权限
--- -# 子系统 — CacheCloud(Redis 缓存管理) +# 子系统 — CacheCloud(Redis 全生命周期管理)
### 定位 -Redis 实例生命周期管理平台,覆盖创建、监控、运维全流程。 +Redis 实例**全生命周期管理平台**,从创建到下线一站式管理,登录与监控运维统一入口。 ### 核心能力 -- **实例管理** — Redis 实例的创建、扩缩容、下线 +- **全生命周期** — 实例创建、扩缩容、版本升级、下线销毁全覆盖 +- **统一入口** — 登录、监控、运维操作统一在 CacheCloud 内完成 - **Agent 模式** — 通过 Agent 远程管理各机房 Redis 实例 -- **诊断工具** — 大 Key / 热 Key 检测,慢查询分析 -- **监控集成** — 实例指标上报至 VictoriaMetrics +- **诊断工具** — 大 Key / 热 Key 检测,慢查询分析,内存碎片率监控 +- **监控集成** — 实例指标上报至 VictoriaMetrics,Grafana 仪表盘展示
@@ -1116,32 +1133,33 @@ Redis 实例生命周期管理平台,覆盖创建、监控、运维全流程 graph LR User["运维人员"] --> CacheCloud["CacheCloud"] CacheCloud -->|Agent| Redis[("Redis")] + CacheCloud -->|指标上报| VM["VictoriaMetrics"] Deploy["服务部署完成"] -.->|自动注册| CacheCloud Main["XINFRA 主系统"] -.->|SSO| CacheCloud ``` ### 说明 - 基础服务交付流程中,Redis 部署完成后自动注册至 CacheCloud -- 配合应用侧治理解决大 Key / 热 Key 性能问题 +- 运维人员无需 SSH 到机器上操作,所有运维操作在 Web 界面完成
--- -# 子系统 — Apollo(配置中心) +# 子系统 — Apollo(统一配置中心)
### 定位 -携程开源的分布式配置中心,统一管理各业务线应用配置。 +携程开源的分布式配置中心,**统一管理各业务线应用配置**,按机房 Cluster 隔离部署。 ### 核心能力 -- **多机房部署** — 支持 Cluster 模式,7 机房独立部署 -- **配置灰度** — 配置变更可灰度发布,降低变更风险 -- **版本回滚** — 配置历史版本管理,异常时一键回滚 -- **操作审计** — 配置变更全程记录,可追溯 +- **按机房隔离** — 每个机房独立 Cluster,配置就近读取,降低跨机房延迟 +- **灰度发布** — 配置变更可先推送给部分实例验证,确认无误后再全量发布 +- **版本回滚** — 每次配置变更自动保存历史版本,出问题可一键回滚 +- **变更审计** — 谁改了什么配置、什么时候改的、改之前是什么值,全程可追溯
@@ -1151,32 +1169,33 @@ graph LR ```mermaid graph LR App["业务应用"] -->|ConfigService| Apollo["Apollo"] - Apollo -->|配置下发| RKE2["RKE2 集群"] + Apollo -->|按机房 Cluster 隔离| IDC1["机房 A"] + Apollo -->|按机房 Cluster 隔离| IDC2["机房 B"] Main["XINFRA 主系统"] -.->|SSO| Apollo ``` ### 说明 -- 本地缓存降级保障多机房配置一致性 -- 灰度发布验证避免配置下发错误 +- 本地缓存降级:Apollo 服务不可用时,应用使用本地缓存的配置继续运行 +- 灰度发布流程:先推 1 台 → 观察指标 → 确认无异常 → 全量推送
--- -# 子系统 — Grafana(监控可视化) +# 子系统 — Grafana(指标可视化平台)
### 定位 -统一监控可视化平台,对接 VictoriaMetrics 等数据源。 +**K8s / 容器 / 业务指标统一仪表盘**,对接 VictoriaMetrics 数据源,提供多维度监控可视化。 ### 核心能力 -- **仪表盘** — 集群、节点、应用多维度监控面板 -- **PromQL 查询** — 直接查询 VictoriaMetrics 中的指标数据 -- **告警可视化** — 告警规则与历史趋势展示 -- **多数据源** — 支持 VictoriaMetrics、Zabbix 等多种数据源 +- **统一仪表盘** — K8s 集群、容器、业务指标集中展示,一个页面看全局 +- **VictoriaMetrics 对接** — 作为主数据源,PromQL 直接查询指标数据 +- **多维度监控** — 节点资源、Pod 状态、应用 QPS / 延迟 / 错误率 +- **告警可视化** — 告警规则配置与历史趋势展示
@@ -1185,31 +1204,66 @@ graph LR ```mermaid graph LR - VM["VictoriaMetrics"] -->|PromQL| Grafana["Grafana"] - Zabbix["Zabbix"] -->|数据源| Grafana + VM["VictoriaMetrics
指标存储"] -->|PromQL| Grafana["Grafana"] + K8s["RKE2 集群"] -->|Metrics| VM Main["XINFRA 主系统"] -.->|SSO| Grafana ``` ### 说明 - 直接复用现有 Grafana 仪表盘,无需主系统重建监控视图 -- 主系统资源状态看板侧重告警聚合,Grafana 侧重指标可视化 +- 主系统资源状态看板侧重告警聚合,Grafana 侧重指标深度可视化
--- -# 子系统 — qpass(密码管理平台) +# 子系统 — Superset(日志数据可视化)
### 定位 -企业级密码管理平台,统一管理各业务线和基础设施的账号密码。 +**日志数据探索与可视化分析平台**,支持多数据源接入和丰富的图表展示。 ### 核心能力 -- **密码托管** — 集中存储和管理各类账号密码、密钥、证书 -- **权限控制** — 基于 RBAC 的密码访问权限,按业务线隔离 +- **日志数据探索** — 交互式查询日志数据,支持筛选、聚合、下钻 +- **多数据源接入** — 支持 ClickHouse、Elasticsearch、MySQL 等多种数据源 +- **丰富图表** — 折线图、柱状图、饼图、热力图、表格等 40+ 图表类型 +- **仪表盘** — 拖拽式组合图表,构建业务专属的日志分析大盘 + +
+
+ +### 关键对接 + +```mermaid +graph LR + Log["日志数据
ClickHouse / ES"] --> Superset["Superset"] + User["运维 / 开发"] --> Superset + Main["XINFRA 主系统"] -.->|SSO| Superset +``` + +### 说明 +- 与 Grafana 互补:Grafana 侧重实时指标监控,Superset 侧重日志数据的探索分析 +- 支持 SQL 自定义查询,适合复杂日志场景的灵活分析 + +
+
+ +--- + +# 子系统 — qpass(七牛统一运维平台) + +
+
+ +### 定位 +七牛云内部的**统一运维平台**,提供基础设施运维、密码管理等基础能力。 + +### 核心能力 +- **密码管理** — 集中存储和管理各类账号密码、密钥、证书 +- **权限控制** — 基于 RBAC 的访问权限,按业务线隔离 - **审计追溯** — 密码访问、修改、共享全程记录 - **自动轮换** — 支持定期密码轮换策略,降低泄露风险 @@ -1220,14 +1274,14 @@ graph LR ```mermaid graph LR - QPass["qpass"] -->|密码分发| RKE2["RKE2 集群"] + QPass["qpass
七牛运维平台"] -->|密码分发| RKE2["RKE2 集群"] QPass -->|密码注入| DB["MySQL / Redis"] Main["XINFRA 主系统"] -.->|SSO| QPass ``` ### 说明 +- 七牛内部系统,XINFRA 通过 SSO 跳转对接 - 基础设施部署完成后,密码由 qpass 统一管理并注入 -- 配合 Ansible 实现自动化密码分发与轮换