- 高可用01:什么是高可用系统?
- 高可用02:高可用系统设计之「架构高可用」
- 高可用03:高可用系统设计之「应用高可用」
- 高可用04:高可用系统设计之「服务高可用」
- 高可用05:高可用系统设计之「存储高可用」
- 高可用06:高可用系统设计之「其他辅助手段」
存储高可用
数据备份
数据备份是保证数据有多个副本,任意副本的丢失都不会导致数据的永久丢失。
- 冷备份 - 定期将数据复制到某种存储介质。
- 热备份
- 异步热备方式 - 异步热备方式是指多份数据副本的写入操作异步完成,应用程序收到数据服务系统的写操作成功响应时,只写成功了一份,存储系统将会异步地写其他副本。
- 同步热备方式 - 同步热备方式是指多份数据副本的写入操作同步完成,即应用程序收到数据服务系统的写成功响应时,多份数据都已经写操作成功。但是当应用程序收到数据写操作失败的响应式,可能有部分副本或者全部副本都已经写入成功了(因为网络或者系统故障,无法返回操作成功的响应)。
失效转移
失效转移是保证任意一个副本不可访问时,可以快速切换访问其他副本,保证系统整体可用。
失效确认
判断服务器宕机的手段有两种:心跳检测和访问失败报告。
对于应用程序的访问失败报告,控制中心还需要再一次发送心跳检测进行确认,以免错误判断服务器宕机。因为一旦进行数据访问的失效转移,意味着数据存储多份副本不一致,需要进行后续一系列的复杂动作。
访问转移
确认某台数据服务器宕机后,就需要将数据读写访问重新路由到其他服务器上。对于完全对等存储的服务器,当其中一台宕机后,应用程序根据配置直接切换到对等服务器上。如果存储不对等,就需要重新计算路由,选择存储服务器。
数据恢复
因为某台服务器宕机,所以数据存储的副本数目会减少,必须将副本的数目恢复到系统设定的值,否则,再有服务器宕机时,就可能出现无法访问转移,数据永久丢失的情况。因此系统需要从健康的服务器复制数据,将数据副本数目恢复到设定值。