通过一个由众多独立服务器自带存储构建的存储资源池,我们实现了存储和计算资源的融合。
这种资源池将硬盘资源整合起来,并利用软件编程来定义和利用这些资源。
软件定义的存储
- 该存储方式具有可编程性和策略驱动的特点。
- 通过存储虚拟化和资源池化的技术,实现了资源的灵活管理和高效利用。
- 该系统支持异构存储资源管理,使得不同类型的存储设备能够协同工作。
- 利用API,系统能力得以以呈现,便于用户的使用和开发。
存储资源层级解析
- 一方面,我们有传统的软硬件一体化存储资源。
- 我们还有基于软件的或标准硬件的存储解决方案,它们都为数据的存储提供了强大支持。
传统与现代存储系统设计的对比
传统的存储系统设计自下而上地构建,而SDS(软件定义存储)系统设计则采用自上而下的方法。
数据副本与存储效率
传统的烟囱式存储方式存在明显的劣势,比如资源利用不均衡和扩展性差等问题。
新架构:云存储与Ceph统一存储
随着云计算的兴起,新的存储架构如Ceph统一存储得到了广泛应用。它允许用户用一台存储设备就提供多种不同的接口和存储池,极大地提高了存储效率。
在Ceph中,一个存储池可以用于对象存储、块存储和文件存储。这些存储池被格式化为Ceph文件系统(CephFS),用于文件的存放。值得注意的是,一个CephFS组件只负责一项任务。
Ceph的数据存储过程
监控角色(mon): Ceph集群中至少需要3个节点来确保稳定性。
对象存储设备(OSD): 每个物理硬盘对应一个OSD,它作为Ceph的逻辑硬盘来存储真实的数据。
通过mon的计算,数据被确定存放在哪个OSD中,最后写入对应的硬盘。MDS(元数据服务器)也可以存放多份数据以保障数据安全。
PG数量规划与Crushmap算法
在Ceph中,PG(Placement Group)的数量规划是一个重要的环节。Crushmap算法被用来决定数据的存放位置。
虽然Hash环用于创建PG的索引,但当数据量非常大时,每次寻址可能会变得缓慢。
通过合理设置PG的数量,我们可以更好地管理数据和OSD的关系。
其他相关技术与应用
Oracle数据库的后端存储可以利用Ceph来实现。Ceph还可以与RGW对象存储进行对接,以提供更强大的存储能力。