0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

数据中心到数据中心的复制流程

哲想软件 来源:哲想软件 2023-06-16 11:01 次阅读

每家公司都需要为所有重要系统制定灾难恢复计划。从像在某个容器中运行的单个进程这样的小单元到最大的分布式架构都是如此。特别是对于数据库,这通常涉及容错、冗余、定期备份和应急计划的混合。数据存储越大,制定好的策略就越困难。

因此,希望能够在一个数据中心运行分布式数据库,并以某种方式将所有事务复制到另一个数据中心。通常,事务日志通过网络传送,以便在另一个数据中心的另一个相同系统中复制所有内容。一些分布式数据存储具有对多数据中心感知的内置支持,并且可以以全自动方式在数据中心之间复制。

ArangoDB3.3通过引入多数据中心支持向前迈出了进化的一步,即数据中心到数据中心的复制。我们的解决方案是异步的,并且可以扩展到任意集群大小,前提是您的数据中心之间的网络链接有足够的带宽。它是容错的,没有单点故障,并且包含许多用于在生产场景中监控的指标。

它能做什么

此功能允许您在两个不同的数据中心A和B中运行两个ArangoDB集群,并设置从A到B的异步复制。这意味着数据中心A中的集群A可以照常用于读取和写入操作,所有更改为数据通过网络复制到数据中心B中的另一个集群B。复制是异步的,也就是说,更改会在短暂的延迟后出现在另一端,通常在几秒钟内。

在数据中心A发生灾难(例如网络连接完全中断)的情况下,可以快速停止复制并开始使用数据中心B中的集群B作为集群A的替代品。稍后,当灾难结束时,可以要么使用集群A作为集群B的异步副本,要么切换回A并继续复制到集群A。

挑战

在本节中,我们不想让您厌烦技术细节,我们将在适当的时候发布一份白皮书。相反,我们想强调这种方法的挑战,并概述我们为克服这些挑战而采取的措施。

单个ArangoDB集群是一个具有良好水平可扩展性的分布式系统。数据容量和查询性能(读取和写入)都与使用的服务器数量呈线性关系。自动分片导致数据的实际更改同时发生在所有服务器的各处。特别是,这意味着——按照设计——没有一个地方可以建立所有变化的总顺序。也就是说,我们正在处理大量数据同时发生更新的分布式混乱。变化率可能会有很大差异,我们将不得不处理大量的写入突发。

同时,ArangoDB集群是容错的。例如,如果数据中心中的单个服务器发生故障,ArangoDB集群可以轻松容忍这种损失,并且假设用户已将复制因子设置为至少2,既不会丢失任何数据,也不会损失可用性. 系统只需切换到使用另一台服务器,重新分配数据并继续前进,而不会影响查询性能。因此,任何适当的复制解决方案都必须满足集群A中的这些透明故障转移。

另一方面,安全问题和防火墙维护意味着我们不能轻易地让许多不同的进程与另一个数据中心中的许多不同进程通信,但同样,我们也不能轻易地通过两个进程之间的单个网络连接的瓶颈移动所有更新在不同的数据中心。

显然,整个复制系统是分布式系统的分布式系统,因此必须具有可扩展性和容错性,没有单点故障。

所有这些挑战都决定并影响了我们解决方案的设计。

怎么运行的

在数据中心A中,ArangoDB集群A照常运行,无需修改其代码库和API,并提供其通常的负载。同样,在数据中心B中,第二个ArangoDB集群B已部署,但最初处于空闲状态。

在这两个数据中心中,我们部署了一个Kafka消息代理,这是一个标准的高性能和容错队列系统,能够在其消息队列中缓冲大量数据。单个队列在Kafka中称为“主题”。这些主题可能会从其他数据中心消费。Kafka有一定的保证,因此在出现网络问题、个别中断等情况时,不会丢失任何消息,并且远程数据中心将始终保持一致的状态。

此外,在每个数据中心,都有几个名为“ArangoDBSyncMaster”的程序实例。在每个数据中心,SyncMasters选举一个领导者,该领导者与另一个数据中心的SyncMaster对话以组织复制。“组织”在这里意味着它计划必须在两个数据中心中执行的单个任务以进行复制。本质上,必须复制元信息,例如存在哪些数据库、集合和用户,以及分片集合中的实际数据。

da6ac0de-05e9-11ee-962d-dac502259ad0.png

在每个数据中心,领先的SyncMaster指挥一小群SyncWorker,它们执行实际的复制任务。例如,对于一个集合的每个分片,在数据中心A中有一个“发送分片”任务,在数据中心B有一个“接收分片”任务,所有这些分片都由SyncMaster分配给某个SyncWorker。

这些任务负责初始增量同步阶段(运行我们在ArangoDB中已有的现有分片同步协议),以及后期更新阶段,其中对分片的所有更新都复制到另一个数据中心(使用WALtailing in数据中心A)。

数据流如下:它从ArangoDB集群的某个DBserver开始,到达数据中心A中的一个SyncWorker,然后进入数据中心A中的Kafka。从那里它将被写入它的数据中心B的SyncWorker使用进入数据中心B中的协调器。显然,有一些控制消息以相反的方向流动。这些控制消息将由数据中心A从数据中心B的Kafka服务器中获取。

这对管理员来说意味着,在初始部署后,只需告诉数据中心B中的SyncMaster它应该开始跟随数据中心A中的集群A,就可以使用一个命令设置异步复制。从那时起,一切都是全自动的,所有数据库、集合、用户和权限都会自动复制到另一个数据中心。显然,有监控和配置工具,但本质上就是这样。

限制

这是迈向多数据中心意识的第一步,因此自然会受到限制。首先,复制是异步的,所以它总是落后于DatacenterA中的实际事件。通常情况下,连接性好,写入速率小于跨数据中心链路的容量,这个延迟非常小. 然而,应该注意,在复制突然停止并手动切换到集群B的情况下,一些最近写入的更新可能会丢失。

整个设置是手动配置的,并在两个数据中心之间工作。此阶段不允许写入副本集群。然而,一个副本集群可以同时是另一个数据中心的源,一个源集群可以有多个副本。也就是说,您可以形成数据中心树。

最后,关闭复制并开始使用副本到目前为止是一项手动操作,需要管理员做出决定和采取行动。
责任编辑:彭菁

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    8116

    浏览量

    82509
  • 数据中心
    +关注

    关注

    15

    文章

    4187

    浏览量

    70007
  • 网络连接
    +关注

    关注

    0

    文章

    76

    浏览量

    10622

原文标题:ArangoDB Enterprise:数据中心到数据中心的复制

文章出处:【微信号:哲想软件,微信公众号:哲想软件】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    #mpo极性 #数据中心mpo

    数据中心MPO
    jf_51241005
    发布于 :2024年04月07日 10:05:13

    数据中心子系统的组成

    本帖最后由 bestups365 于 2011-11-11 10:21 编辑 数据中心的主要组成部分共有如下11个。(1)物理结构数据中心的物理结构就是能够安装数据中心并保护其免受环境条件
    发表于 11-11 10:16

    走向绿色数据中心的7种手段

      云计算数据中心涉及资源空间,电力,不间断电源等等因素。毫无疑问,数据中心对当地的生态系统造成巨大的压力。将数据中心变成环保的数据中心不是一个简单的任务,就像许多
    发表于 08-16 15:35

    数据中心的建设也看重风水

    相比中国传统的风水理论,数据中心所看重的风水则更加贴合实际。以整体架构来划分,目前的主流的数据中心已经进入第三代,并开始向第四代演进。第一代和第二代数据中心分别诞生于20世纪40和70年代,当时
    发表于 08-07 06:22

    数据中心光互联解决方案

      数据中心光互联解决方案  随着数据中心在全球的大规模部署,数据中心对于100Gbps模块的需求时代已经到了,而对于10G/40Gbps模块的需求依然强劲。  SMC针对数据中心光模
    发表于 07-03 10:36

    未来数据中心与光模块发展假设

    国内数据中心的发展经历了由运营商主导的以通信机楼为主的分散、小规模化发展阶段,逐步向市场驱动的规模化、标准化、高密度、绿色节能方向发展。随着我们步入未来,数据中心的任务和概念还将继续发展。而光模块占
    发表于 08-07 10:27

    数据中心布线之有源光缆

    本帖最后由 易飞扬 于 2020-8-22 15:05 编辑 根据通信产业研究机构(CIR)的报告,2020年用于数据中心的有源光缆AOC市场将达42亿美元(约合人民币266.8亿元)。有源
    发表于 08-22 15:04

    数据和物联网是如何影响数据中心的?

    数据和物联网是如何影响数据中心的?
    发表于 05-21 06:24

    数据中心太耗电怎么办

    ​​​​​​摘要:其实对于节能,传统技术也是做了“十二分”的努力。但是在技术不断演进的情况下,传统节能技术还是存在问题,如何破?本文分享自华为云社区《数据中心节能?来试试华为NAIE数据中心节能技术
    发表于 06-30 06:27

    数据中心是什么

    数据中心是什么:数据中心是全球协作的特定设备网络,用来在因特网络基础设施上传递、加速、展示、计算、存储数据信息。数据中心大部分电子元件都是由低直流电源驱动运行的。
    发表于 07-12 07:10

    PUE指标能准确衡量数据中心能效吗?

    PUE指标能准确衡量数据中心能效吗?孙长青,注册暖通工程师,高级工程师,规划设计部总工程师,IDC单位设计总监等,有多年从事数据中心规划设计、咨询顾问、甲方自建设计部等全过程的实战经验,对数据中心
    发表于 07-12 08:06

    模块化数据中心的主要组成部分

    原标题:模块化数据中心的主要组成部分一、主要组成部分及参数模块化数据中心主要由机柜、密闭通道、供配电系统、制冷系统、智能监控系统、综合布线和消防系统组成。机柜数量可根据客户需求成对减少。模块化
    发表于 09-08 07:17

    如何去提高数据中心的运营效率呢

    现如今,尽管IT业界的各种新兴技术可能正发生着各种突飞猛进的快速变化,但每家数据中心仍然需要依赖电力资源的消耗来维持其运行能力。故而,数据中心运营商们仍然需要通过更新电源使用、冷却和电气设计方案,来
    发表于 09-09 06:14

    什么是数据中心

    数据中心是企业用来容纳其关键业务应用程序和信息的物理设施。随着它们的发展,重要的是要长期考虑如何保持它们的可靠性和安全性。什么是数据中心数据中心通常被称为单个事物,但实际上它们由许多技...
    发表于 09-15 06:46

    数据中心机房的建设流程是怎样的?

    数据中心机房的特点是什么?数据中心机房的建设流程是怎样的?
    发表于 11-15 06:13