文档目录

集中式存储

集中式存储是指将数据存储在一台或多台服务器组成的中心节点上。集中式存储所有业务均集中部署在中心节点,中心节点统一管理各分部节点数据,数据访问仅需经过一个控制器即可实现。集中式存储分为DAS、NAS、SAN三类,用户可根据不同数据存储需求选择不同存储类型。

集中式存储功能优势:
  • 高性能与高可靠性:集中式存储将数据存储在一台或多台服务器组成的中心节点上,有效避免数据分散风险,提高存储系统的性能与可靠性。
  • 可扩展性:集中式存储可通过网络扩展来存储更多数据,存储系统可适应业务规模增长而扩展。
  • 安全性:集中式存储可通过访问控制和数据加密等安全措施保障数据的安全性和完整性。

关于集中式存储架构的说明。在集中式存储架构中,机头是最核心部件。通常机头包含两个控制器,互为备用, 避免硬件故障导致整个存储系统不可用。此外,机头包含前端端口和后端端口,前端端口用于为服务器提供存储服务,后端端口用于扩充存储系统容量。通过后端端口,机头可连接更多存储设备,从而形成一个庞大的存储资源池。

如图 1所示:
图 1. 集中式存储架构


SAN存储

ZSphere支持对接多种集中式存储。这里主要介绍SAN存储。该方式可将用户在SAN存储上划分的LUN设备直接作为存储池,再提供给业务虚拟机使用。与基于文件系统的数据存储不同,SAN存储具备便捷部署、灵活扩展、性能优异等优势。据实测数据显示,SAN存储可完全发挥物理磁盘的性能。目前SAN存储支持iSCSI、FC、NVMe-oF共享访问协议。

SAN存储工作原理:
  • 块级访问:SAN存储可将数据分成块,每个块都有唯一标识符。服务器通过这些标识符来读取或写入特定的数据块。
  • 并行访问:多个节点可同时访问SAN存储中的不同块,从而实现并行读写操作。
  • 共享性:SAN存储可被多个节点共享,使得它们可以同时访问相同的数据块。这对于分布式系统中需要共享数据的场景非常重要。
  • 容错性:SAN存储通常会提供数据冗余和故障恢复机制,以确保数据的安全性和可靠性。
  • 扩展性:SAN存储可通过添加更多存储节点来扩展容量和性能。
  • 性能优化:SAN存储通常会采取各种技术来优化性能,例如缓存、负载均衡等。

关于SAN存储架构的说明。在集中式存储上映射一个卷到主机上,根据存储控制器的连接方式,在主机上多路径服务会自动把多个具有相同WWID的SCSI设备聚合成多路径设备。ZSphere会去检测集群内所有主机上拥有相同WWID的多路径设备,然后针对用户选定的卷创建出集群内的共享卷组(VG)。ZSphere基于卷组创建逻辑卷(LV),逻辑卷实际上对应了ZSphere中的硬盘、快照等资源。同时为维护存储集群的一致性,ZSphere也提供共享存储锁管理机制(Sanlock),用于维护存储心跳、节点管理、元数据管理等功能。

如图 2所示:
图 2. SAN存储架构


Sanlock + Lvmlockd

Sanlock(Shared storage lock manager),共享存储锁管理机制。实际上,它是基于Lamport的几个算法:Delta Paxos、Disk Paxos,而形成的一套租约管理机制,并且在这几个租约管理机制上实现了集群成员管理、心跳维护、仲裁和信息传递,下一步则是将这里的租约机制转换为能让LVM使用的锁:Lvmlockd。

引入Sanlock + Lvmlockd后,服务器执行的大部分LVM命令,均会先将请求送到Lvmlockd。Lvmlockd会将LVM的操作翻译为Sanlock所能识别的锁操作。

针对不同资源的操作需获取不同的锁权限,只有在获取锁权限后,才能对相应资源执行操作,从而确保元数据和数据的安全性。此外,整个过程无需任何中间节点协调或集中操作,是一个全分布式架构。

如图 3所示:
图 3. Sanlock + Lvmlockd