关于存储簇
存储簇通过纠删码、集成的 SSD 缓存、自动负载均衡和 RDMA/InfiniBand 支持,可最有效地利用硬件。群集空间可用于:
- iSCSI 块存储(热数据和虚拟机)
- S3 对象存储(受 Acronis Notary 区块链和数据中心之间的地理复制保护)
- 文件存储 (NFS)
此外,Acronis Cyber Infrastructure 与 Acronis Cyber Protection 解决方案相集成,可将备份存储在簇中,将备份发送到云服务(例如 Google Cloud、Microsoft Azure 和 AWS S3),或通过 NFS 协议将其存储在 NAS 上。地理复制可用于在不同存储后端(本地存储群集、NFS 共享或公共云)上设置的备份网关。
可以自定义数据存储策略以满足各种用例:每个数据卷可以具有特定的冗余模式、存储层和故障域。此外,可以使用 AES-256 标准对数据进行加密。
存储簇体系结构
Acronis Cyber Infrastructure 的基本组件是存储簇,即一组由网络互联的物理服务器。核心存储包括服务器磁盘,为其指派了一个或多个角色。通常,簇中的每个服务器运行对应于以下磁盘角色的核心存储服务:
-
元数据
元数据角色运行元数据服务 (MDS)、存储簇元数据,以及控制如何将用户文件拆分到区块以及区块所在的位置。元数据节点还确保区块有所需的副本量。最后,它们记录在簇中发生的所有重要的事件。为了提供系统可靠性,Acronis Cyber Infrastructure 使用 Paxos 一致性算法。如果大多数运行元数据服务的节点都运行正常,它可保证容错。
为了确保生产环境中元数据的高可用性,元数据服务必须运行在至少三个簇节点上。在此情况下,如果一个元数据服务失败,则剩余的两个仍在控制簇。但是,建议至少有五个元数据服务,以确保在两个节点同时发生故障时,集群可以正常运行并且无数据丢失。
主元数据节点是元数据配额中的主节点。如果主 MDS 失败,另一个可用 MDS 将选定为主 MDS。
-
存储
存储节点运行区块服务 (CS)、以固定大小区块的形式存储所有数据,以及提供对这些区块的访问。将复制所有数据区块,并且副本保留在不同的存储节点上,以实现数据的高可用性。如果其中一个存储节点失败,则剩余的正常运行的存储节点继续提供故障节点上存储的数据区块。存储角色仅可指派给具有特定容量磁盘的服务器。
存储节点还可以受益于数据缓存和校验和:
- 数据缓存通过在 SSD 上放置经常访问的数据而改进群集性能。
-
在每次修改簇中的某些数据时,数据校验和生成校验和。当读取此数据时,将计算新的校验和并与旧的校验和相比较。如果这二者不一致,将再次执行读操作,这样可提供更好的数据可靠性和完整性。
如果节点有 SSD,它将自动配置为在将节点添加到簇时保留检验和。这是建议的设置。但是,如果节点没有 SSD 驱动器,则在默认情况下,检验和将存储在转动的磁盘上。这意味着此磁盘将不得不处理双倍 I/O,因为那里的每个数据读/写操作都将是相应的校验和读/写操作。出于此原因,您可能想要在没有 SSD 的节点上禁用校验和,以获得以检验和为代价的性能。这对于热数据存储尤其有用。
- 补充角色:
-
SSD 日志和缓存
通过在选定的固态驱动器 (SSD) 上创建写缓存,可增强区块的读/写性能。还建议将此类 SSD 用于元数据。写日志的使用可能使簇中的写速度加快两倍多。
-
系统
为操作系统保留的每节点一个磁盘,并且不可用于数据存储。
请注意以下事项:
- 无法从磁盘取消指派“系统”角色。
- 如果物理服务器的系统磁盘拥有大于 100GB 的容量,则可以为该磁盘额外分配元数据或存储角色。
- 建议将系统+元数据角色指派给 SSD。将这两个角色分配给 HDD 将导致仅适用于冷数据(例如存档)的普通性能。
- 系统角色不能与缓存和元数据+缓存角色相结合。原因是由操作系统和应用程序生成的 I/O 将争夺由日志生成的 I/O,从而消除了其性能优势。
与核心存储服务一起,服务器运行存储访问点,这些点允许顶层虚拟化和存储服务访问存储簇。
此外,加入存储簇的服务器既不可以运行元数据也不可以运行区块服务。在这种情况下,节点将仅运行存储访问点,并用作存储簇客户端。