1. 本际云推荐 - 专业推荐VPS、服务器,IDC点评首页
  2. 云主机运维
  3. VPS运维

TIDB灾难恢复演练三部曲(上)

介绍:

作为本际云服务器推荐网的小编,数据库是每个企业的重中之重。一旦出现永久性损坏,对公司的打击会是灾难性的。分布式数据库虽然采用数据多副本备份机制来保证数据的可靠性,但同样也会面临多副本丢失的风险。灾难出现如何快速恢复也是DBA需要面对的问题。本文通过对TiDB对多副本丢失的问题的处理进行理解与操作介绍。

TIDB灾难恢复演练三部曲(上)

TiDB整体架构

TiDB集群主要包括三个核心组件:TiDBServer,PDServer和TiKVServer。

TiDBServer负责接收SQL请求处理SQL相关的逻辑,并通过PD找到存储计算所需数据的TiKV地址,与TiKV交互获取数据,最终返回结果。PD负责存储集群的元信息、对TiKV集群进行调度和负载均衡、分配全局唯一且递增的事务ID。TiKVServer负责存储数据,从外部看TiKV是一个分布式的提供事务的Key-Value存储引擎。

灾难恢复相关背景

TiDB默认配置为3副本,每一个Region都会在集群中保存3份,它们之间通过Raft协议来选举Leader并同步数据。这个时候,最重要的是快速地最大程度地恢复数据并恢复TiDB集群正常服务。

演练灾难恢复的部署架构

本次演练采用较新的数据库软件版本v4.0.0-rc,主要关注Tikv中region的处理,此架构设计时将PD、TIDB、监控部署在一台机器之上,并未做冗余处理,Tikv选择5台机器,采用Tiup进行部署。在测试环境中模拟两副本以及三副本丢失的灾难场景,并进行对应的数据灾难恢复。

灾难场景:副本丢失处理

副本数据恢复包含两个部分:故障Region处理和丢失数据处理。故障Region处理,针对Region数据丢失的严重情况,可分为两种:1、Region至少还有1个副本,恢复思路是在Region的剩余副本上移除掉所有位于故障节点上的副本,这样可以用这些剩余副本来重新选举和补充副本来恢复,但这些剩余副本中可能不包含最新的RaftLog更新,这个时候就会丢失部分数据。2、Region的所有副本都丢失了,这个Region的数据就丢失了。

丢失数据处理,可通过创建1个空Region来解决Region不可用的问题。在恢复Region故障的过程中,要详细记录下所处理Region的

原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/5814.html