当前位置: 首页 > news >正文

华为云计算之双活容灾

  • 双活(HyperMetro)

  • 本地双活:距离≤10km

  • 同城双活:距离>10km

  • 没有主备之分,只有本端数据中心和远端数据中心。当一个数据中心的设备故障或数据中心故障,业务会自动切换到另一个数据中心继续运行,不需要人工干预

  • 双活成本较高,需要买远端设备、双活的license,如果两个数据中心距离>10km,还需要买长距离license,超过25km还需要买波分设备

写I/O流程

  • 主机下发写I/O请求到双活管理模块(HM)

  • HM将写I/O请求记录到LOG中

  • HM执行双写操作,向本段和远端的Cache中写I/O

  • 本端和远端的Cache完成写I/O后,向HM返回写I/O的结果

  • 两端Cache都返回结构后,才向主机返回写I/O得结果

  • 如果两端Cache都写成功,则向主机返回写成功,并清理LOG

  • 如果有任意一端写失败,HM则会将LOG转换为DCL(差异位图),记录本端LUN与远端LUN的差异数据

  • 当设备修复后,再根据DCL,将存在差异的数据进行同步,同步完成后,清除DCL,恢复双活

仲裁机制

  • 当双写失败,就会申请仲裁,前提是仲裁服务器没有故障

  • 仲裁过程需要60s

  • 静态优先级模式

  • 适用于在没有第三站点仲裁服务器的场景

  • 当存储系统间链路故障时,优先站点的LUN继续提供服务,非有限站点的LUN暂停提供服务

  • 当优先站点故障时,非优先站点不能自动接管业务,需要人工手动启动非优先站点为主机提供服务

  • 非优先站点故障时,不影响优先站点的业务

  • 仲裁服务器模式

  • 适用于在有第三站点仲裁服务器的场景

  • 当仲裁服务器发生故障,不会影响业务,双活Pair关系也正常,但是仲裁模式会自动变成静态优先级模式

  • 当仲裁服务器与A站点之间的链路故障,不影响业务,双活Pair关系也正常,如果将来A站点和B站点之间的链路发生故障,因为仲裁服务器无法与A站点通信,所以会将业务运行在B站点上

  • A站点发生故障,双活Pair关系断开,双写失败,进行仲裁。B站点继续提供业务,访问A站点的请求会被转移到B站点上

  • A站点与B站点之间的链路出现故障,双写失败,双活Pair关系断开。经过仲裁服务器仲裁后,A站点继续提供业务,B站点会被关闭,所有的数据增长都在A站点

  • 仲裁服务器和A站点都发生故障,双写失败,进行仲裁,但是仲裁服务器发生故障,B站点无法得到仲裁服务器的投票,所以也会关闭自身的服务,业务发生故障,需要人为启动B站点的LUN,提供业务访问

  • 当仲裁服务器与A站点之间的链路故障,A站点与B站点之间的链路故障,双写失败,进行仲裁,A站点关闭自身的业务,B站点将继续运行业务

  • 当A站点故障,仲裁服务器与B站点之间的链路故障,双写失败,进行仲裁,B站点收不到仲裁服务器的投票,关闭自身业务,需要人为启动B站点的LUN,提供业务访问

  • 当仲裁服务器发生故障,AB站点之间的链路发生故障

  • 故障之间的时间间隔在60s以内,静态优先级仲裁模式还没来得及切换,双写失败,进行仲裁,无法得到仲裁服务器的投票,则AB站点都会关闭自身的业务,需要人工启动A站点的LUN,提供业务访问

  • 故障之间的时间间隔在60s以上吗,切换为静态优先级模式,双写失败,进行仲裁,A站内点继续提供业务访问,B站点关闭自身的业务


以上内容均属原创,如有不详或错误,敬请指出。

本文作者: 坏坏

本文链接:http://t.csdn.cn/xdJdc

版权声明: 本博客所有文章转载请联系作者注明出处并附带本文链接!

http://www.lryc.cn/news/15171.html

相关文章:

  • ASEMI高压MOS管ASE20N65SE体积,ASE20N65SE大小
  • resp连接redis服务器
  • 七天实现一个分布式缓存
  • 电子招标采购系统源码功能清单
  • mysql数据库基础知识
  • CAN总线通信
  • MATLAB/Simulink 通信原理及仿真学习(二)
  • CentOS7 防火墙(firewall)的操作命令
  • 文献工具汇总:论文查找、文献管理、文献翻译
  • SQL零基础入门学习(三)
  • 苹果手机如何快速的直接从相册里面的图片提取文字?
  • 【go】函数调用
  • Linux系统之Uboot、Kernel、Busybox思考之四
  • 为什么要经常阅读和分析计算机SCI期刊论文? - 易智编译EaseEditing
  • Shiro框架详解
  • redhawk:GSC file与STA file
  • 【Python学习笔记】46.Python3 math 模块和requests 模块
  • 页面导航-yang
  • Mac配置homebrew
  • 如何无报错运行代码YOLOv6,实现目标识别?
  • SQL91 返回购买价格为 10 美元或以上产品的顾客列表
  • Goreplay使用教程0221
  • 9、GPT-1-2-3
  • Python-四分位数计算
  • 一个简单的步骤让你的 Python 代码更干净
  • linux集群技术(二)--keepalived(高可用集群)(一)
  • C++中的类型转换
  • 如何使用raw socket发送UDP报文
  • 【C++】文件IO流
  • JavaScript高级程序设计读书分享之4章——4.2执行上下文与作用域