架构
目录
技术架构

上图展示了三种支持的存储类型的示例应用:
- 块存储由蓝色应用表示,该应用挂载了一个 ReadWriteOnce (RWO) 卷。应用可以对该 RWO 卷进行读写操作,而 Ceph 负责管理 IO。
- 共享文件系统由两个紫色应用表示,它们共享一个 ReadWriteMany (RWX) 卷。两个应用可以同时主动读写该卷。Ceph 通过 MDS 守护进程确保数据在多个写入者之间安全保护。
- 对象存储由一个橙色应用表示,该应用可以使用标准的 S3 客户端对桶进行读写操作。
在上图虚线以下,组件分为三类:
块存储
在上图中,创建带有 RWO 卷的应用的流程为:
- (蓝色)应用创建 PVC 以请求存储。
- PVC 定义 Ceph RBD 存储类(sc)以供应存储。
- K8s 调用 Ceph-CSI RBD provisioner 创建 Ceph RBD 镜像。
- kubelet 调用 CSI RBD 卷插件将卷挂载到应用中。
- 卷现在可用于读写。
- ReadWriteOnce 卷一次只能挂载在一个节点上。
共享文件系统
在上图中,创建带有 RWX 卷的应用的流程为:
- (紫色)应用创建 PVC 以请求存储。
- PVC 定义 CephFS 存储类(sc)以供应存储。
- K8s 调用 Ceph-CSI CephFS provisioner 创建 CephFS 子卷。
- kubelet 调用 CSI CephFS 卷插件将卷挂载到应用中。
- 卷现在可用于读写。
- ReadWriteMany 卷可以挂载在多个节点上供应用使用。
对象存储 S3
在上图中,创建具有访问 S3 桶权限的应用的流程为:
- (橙色)应用创建 BucketClaim 以请求桶。
- Ceph COSI Driver 创建 Ceph RGW 桶。
- Ceph COSI Driver 创建包含访问桶凭据的 secret。
- 应用从 secret 中获取凭据。
- 应用现在可以使用 S3 客户端对桶进行读写。