eviden-logo

Evidian > SafeKit:全合一 SANless 高可用性与应用程序集群软件 > 同步与异步复制:数据丢失与故障转移指南

同步与异步复制:数据丢失与故障转移指南

Evidian SafeKit

同步或异步复制:应用程序故障转移时是否会丢失数据?

同步复制与异步复制之间存在显著差异。根据所选方式的不同,在应用程序故障转移(Failover)过程中,您可能会面临数据丢失的风险。

  • SafeKit 软件实现的同步复制对于事务型应用程序的故障转移至关重要。通过同步复制,主服务器磁盘上所有已提交(Committed)的数据也同样存在于备用服务器的磁盘上。
  • 异步复制存在风险,即如果发生故障,主服务器磁盘上已提交的数据可能会丢失,因为它尚未被复制到备用服务器。
  • 半同步复制是一种替代方案,其中已提交的数据会到达备用服务器,但不一定已写入其磁盘。

为了帮助您在同步复制与异步复制之间做出正确决策,我们将在下文详细说明其技术机制以及对应用程序故障转移的影响。

同步与异步复制对比图:展示故障转移期间的数据丢失风险

异步复制的工作原理

异步复制中,主服务器会立即确认写入操作,并在此后通过计划批处理的方式延迟更新副本。这种解耦机制克服了长距离复制中的延迟问题,使其成为跨远程站点进行备份和灾难恢复的首选策略。

然而,这种效率也带来了一致性方面的挑战,即备用服务器可能会保存过时的信息。由于备用节点的更新发生在主节点写入完成后,主服务器的任何故障都将导致传输中数据(in-flight data)的丢失。

同步复制的工作原理

在 SafeKit 实现的同步复制中,当应用程序或主服务器的文件系统缓存执行磁盘 I/O 操作时,系统通过“双重确认”流程确保数据的一致性。

SafeKit 会在向应用程序或文件系统缓存发送最终确认之前,等待来自本地磁盘和备用服务器I/O 确认(Acknowledgment)。这种同步机制对于事务型应用程序的故障转移至关重要,它确保了事务在被视为“已提交”之前,已在两个节点上完全安全地存储。

半同步复制的工作原理

半同步复制是保证数据完整性的一种混合方法。与同步复制类似,SafeKit 在向应用程序或文件系统缓存确认 I/O 操作之前,会等待来自主服务器和备用服务器的共同确认。

其关键区别在于备用服务器的响应时机。在半同步模式下,备用服务器在内存中接收到数据后立即向主服务器发送确认,随后再将其写入磁盘。相比之下,同步复制要求备用服务器必须先将 I/O 写入物理磁盘,然后才发送确认。

最终结论:高可用性的最佳复制选择

同步复制与异步复制之间进行选择,实际上是在绝对数据完整性与网络性能之间做出的权衡。对于任务关键型基础设施,这一决策直接决定了您的恢复点目标(RPO)

复制方式对比总结

  • 异步复制备份的黄金标准,但不适用于高可用性(HA)。虽然它支持长距离连接,但由于备用节点的数据滞后于主节点数据,本质上存在数据丢失的风险。
  • 同步复制高可用性(HA)的黄金标准,但不适用于备份。它确保备用节点文件是主节点的实时克隆,从而保证零数据丢失的故障转移
  • 半同步复制:为高可用性(HA)提供了一个高性能的中间方案。通过在磁盘写入前进行内存级别的确认,它在保持优于异步方式的数据保护水平的同时,最大限度地减少了延迟。

⭐ SafeKit 建议: 对于关键业务应用,请始终优先考虑同步或半同步复制,以确保业务连续性、最大化性能并消除与不一致故障转移相关的风险。

对比表:同步 vs 异步 vs 半同步

特性 同步复制 半同步复制 异步复制
RPO (潜在数据丢失) 非零(数据丢失:取决于最后一次异步副本的时间)
远程 I/O 确认 远程磁盘写入后确认 远程内存 (RAM) 写入后确认 不等待确认
性能影响 需要低延迟网络 - 取决于往返时间 (通常 RTT < 2ms) 需要低延迟网络 - 取决于往返时间 (通常 RTT < 2ms) 支持高延迟网络
距离限制 本地 / 跨网段 VLAN (Stretched VLAN) 本地 / 跨网段 VLAN (Stretched VLAN) 广域网 (WAN)
适用场景 高可用性 (自动故障转移) 高可用性 (自动故障转移) 备份解决方案 (手动故障转移)

配置同步实时复制与高可用性

FAQ:高可用性集群中的复制策略

复制技术与机制

每次文件被修改时,SafeKit 都会通过网络发送整个文件吗?

不。 SafeKit 采用字节级复制。它会截获文件内部特定的 I/O 修改,并仅复制已更改的字节,从而最大限度地减少网络流量。

每当应用程序写入其文件时,都会触发复制吗?

不。 只有当应用程序请求向本地磁盘进行 I/O 提交 (I/O commit) 时,才会发生复制。SafeKit 会确保在完成写入之前,该数据已得到备用服务器的确认。

同步复制会减慢我的应用程序速度吗?

延迟取决于网络往返时间 (RTT)。在局域网(LAN)上,其影响微乎其微(类似于 NAS/SAN 存储)。在高延迟的广域网(WAN)上,通常首选异步模式以避免性能瓶颈。


部署策略:高可用性 vs 备份

什么时候必须选择同步复制或异步复制?

选择同步复制用于高可用性(自动故障转移、零数据丢失)。选择异步复制用于备份或灾难恢复(DR),此时距离限制了实时同步,且不需要自动故障转移。

SafeKit 是否支持异步复制?

不支持。 SafeKit 是一款旨在通过自动故障转移实现零数据丢失的高可用性解决方案。对于纯粹的异步需求,建议寻找专门的备份解决方案。

高可用性可以取代备份解决方案吗?

不可以,高可用性并不能取代全面的备份解决方案。

虽然像 SafeKit 这样的实时复制解决方案能够提供持续的业务连续性,但它们的目的与备份不同。实时复制旨在防止硬件故障和服务器停机,但无法防范勒索软件同时加密两个节点等网络威胁。只有具备保留策略的备份解决方案才能解决此类问题。

如何结合使用同步复制和异步复制?

您可以采用三节点混合架构:由同步复制构成的双节点本地集群用于高可用性(HA),并通过备份解决方案将第三个副本异步传输至远程位置,用于灾难恢复(DR)。

了解更多信息: SafeKit 高可用性与灾难恢复 (HADR)

🔍 SafeKit 高可用性导航中心

探索 SafeKit:功能特性、技术视频、文档资料及免费试用
资源类型 描述 直接链接
关键特性 为什么选择 SafeKit 实现简单且经济高效的高可用性? 查看为何选择 SafeKit 实现高可用性
部署模式 全合一 SANless HA:无共享软件集群 查看 SafeKit 全合一 SANless HA
合作伙伴 SafeKit:合作伙伴高可用性方案的标杆 查看为何 SafeKit 是合作伙伴的 HA 标杆
HA 策略 SafeKit:基础设施(VM)级 vs. 应用程序级高可用性 查看 SafeKit HA 与冗余:VM 级 vs. 应用级
技术规格 SafeKit 集群的技术限制 查看 SafeKit 高可用性限制条件
概念验证 SafeKit:高可用性配置与故障转移演示 查看 SafeKit 故障转移教程
架构 SafeKit 镜像集群(Mirror Cluster)工作原理(实时复制与故障转移) 查看 SafeKit 镜像集群:实时复制与故障转移
架构 SafeKit 场集群(Farm Cluster)工作原理(网络负载均衡与故障转移) 查看 SafeKit 场集群:网络负载均衡与故障转移
竞争优势 对比:SafeKit vs. 传统高可用性(HA)集群 查看 SafeKit vs. 传统 HA 集群对比
技术资源 SafeKit 高可用性:文档、下载与试用 查看 SafeKit HA 免费试用与技术文档
预配置解决方案 SafeKit 应用模块库:开箱即用的 HA 解决方案 查看 SafeKit 高可用性应用模块