
下面用“一张图 + 一张表 + 一段白话”帮你把 OSS 四个模块一次性梳理清楚。
用户 ──> SLB ──> Tengine ──> OssServer ──> UMM/RAM 鉴权 ──> KvEngine
│ │
│ └──> Pangu
│ (真正存数据)
│
└──> MiniRDS(存 bucket 元数据)
OCM(独立):实例级生命周期管理(创建/删除整个 OSS 实例)
模块 | 子组件 | 角色定位 | 关键点说明 |
|---|---|---|---|
oss-server | Tengine | 反向代理,承接 SLB 流量 | 只做转发,无业务逻辑 |
OssServer | 分析请求 → 鉴权 → 把“控制指令”发给 KvEngine | 不碰实际数据 | |
kvengine | KvMaster | 管理所有 KvServer,做请求分发、负载均衡 | 类似“调度器” |
KvServer | 真正执行上传/下载/删除动作 | 操作的是“逻辑对象” | |
pangu | PanguMaster | 管理所有 ChunkServer,决定数据块放哪 | 类似“分布式存储大脑” |
PanguChunkServer | 把数据块落到磁盘,提供读写/删除 | 真正占磁盘空间 | |
ocm | — | 实例级操作:创建、删除、升降配整个 OSS 服务 | 面向运维/控制台 |
minirds | — | 只存“bucket 元数据”(名字、权限、生命周期等) | 不存文件内容 |