如何有效保证存储层双活和数据一致性,以及发生故障时如何保证前端业务的正常运行?

1、存储双活双活依赖的的必要条件有哪些,如发生发生故障故障或中断时的应急方案。2、故障发生时如何保证业务业务连续性和数据数据的一致性显示全部

1、存储双活双活依赖的的必要条件有哪些,如发生发生故障故障或中断时的应急方案。
2、故障发生时如何保证业务业务连续性和数据数据的一致性

收起
参与10

查看其它 1 个回答chenmingfu的回答

chenmingfuchenmingfu课题专家组基础架构组长西部某城商银行

1.针对存储的双活,两台存储中的不同的LUN构成双活LUN,提供给上层的主机使用,数据是从主机侧同时写入两个存储的LUN内,双活平台没有故障的时候,两端的数据始终是一致的。
2.如果存储的双活出现的故障,此时,双活平台内部有仲裁机制,从两端中会重新选举一端的存储平台作为主存储给前端的主机继续提供服务,待存储的双活修复好了后,双活两端的存储内部会自行比对,将存在的差异、增量的数据进行同步,待两端的数据一致后,继续双活对外提供服务。
3.对于双活架构下,会包含很多的层面,比如应用层,数据库层,服务器层,存储层等等,要实现真正的业务双活,必须做到每个层面都是活的,而每个层面都会有各自的技术来实现,数据的一致性也是通过这些层面采用的技术来保证的,比如数据层面采用oracle RAC,那么RAC需要解决的关键问题就是多节点进行数据访问时如何保证数据的一致性,Oracle是通过各节点间的私有连接进行内存融合(cache fusion)来保证各节点数据访问的一致性。对于存储层面,如果采用了svc来搭建双活架构,那么其数据一致性是通过svc节点之间的缓存数据同步来完成;当双活架构发生故障的时候,最主要的是避免集群的脑裂,避免脑裂的方式是一定要部署第三站点的仲裁机制,仲裁站点可以采用存储仲裁或者ip仲裁等不同的方式,避免集群发生脑裂,从而导致业务数据的不一致性发生。

银行 · 2020-11-19
浏览1523

回答者

chenmingfu
基础架构组长西部某城商银行
擅长领域: 存储灾备服务器

chenmingfu 最近回答过的问题

回答状态

  • 发布时间:2020-11-19
  • 关注会员:3 人
  • 回答浏览:1523
  • X社区推广