基于三方架构的网络容灾备份和恢复系统构建

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
简介:

基于备份服务器,客户端和存储设备端三方架构的网络备份系统,三方架构使得备份服务器不用参与数据备份与恢复的数据传输过程,平衡了系统的负载并提高了系统的并发度。并说明网络备份系统的总体架构,备份服务器、备份代理和存储服务器子系统功能,以及通信接口,基于三方架构的网络备份系统可以很好的完成异地冷备份与恢复工作。

本文介绍了基于备份服务器,客户端和存储设备端三方架构的网络备份系统,三方架构使得备份服务器不用参与数据备份与恢复的数据传输过程,平衡了系统的负载并提高了系统的并发度。并说明网络备份系统的总体架构,备份服务器、备份代理和存储服务器子系统功能,以及通信接口,基于三方架构的网络备份系统可以很好的完成异地冷备份与恢复工作。

数据备份容灾领域现状
随着社会信息化的不断深入,社会对计算机系统的依赖越来越大,但传统的计算机信息系统在诸如火灾、水灾、地震、战争或人为破坏等灾难面前非常脆弱,计算机系统的硬件、数据、系统和服务都会受到不同程度的破坏。如果灾难发生在通信、金融或军事系统,如果不能够及时应付灾难,恢复系统功能,将造成不可估计的损失。
研究显示,在灾害之后,如果无法在14天内恢复信息作业,有75%的公司业务会完全停顿,43%的公司再也无法重新开业,有20%的企业在两年之内被迫宣告破产。从大量的数据上不难看到,信息安全与国家安全、民族兴衰和战争胜负息息相关。面对经济、信息全球化的趋势,我们既要看到它带给我们的发展机遇,也要正视它给我们的严峻挑战。
数据备份作为提高数据可用性与可靠性的基本方法,其目的是为了系统数据崩溃时能够快速的进行恢复。大多数企业或组织都具有自己的本地备份系统,但其恢复能力非常有限,因为传统的备份主要是采用与应用系统地理位置相同的存储设备对数据进行本地备份,进行数据备份的同时也统一在机房中管理,一旦整个机房出现了灾难,如火灾、盗窃和地震等灾难时,这些备份数据也随之销毁,本地存储设备上所存储的备份数据起不到任何容灾功能,在战争中这种问题尤为严重。专门的容灾系统也就因此应运而生。
Disaster Recovery简称DR,也称为灾难恢复系统,就是通过特定的容灾机制,能够在各种灾难损害发生后,仍然能够最大限度地保障提供正常应用服务的计算机信息系统。

数据容灾备份技术介绍
容灾备份是通过在异地建立和维护一个备份存储系统,利用地理上的分离来保证系统和数据对灾难性事件的抵御能力。根据容灾系统对灾难的抵抗程度,可分为数据容灾和应用容灾。数据容灾是指建立一个异地的数据系,该系统是对本地系统关键应用数据的复制。当出现灾难时,可将数据从异地系统迅速拷贝至本地系统从而保证业务数据的完整性与一致性。应用容灾比数据容灾层次更高,即在异地建立一套完整的、与本地数据系统相当的备份应用系统(可以同本地应用系统互为备份,也可与本地应用系统共同工作)。
在灾难出现后,远程应用系统迅速接管或承担本地应用系统的业务运行。设计一个健壮的容灾备份系统,需要考虑多方面的因素,如备份/恢复数据量大小、应用数据中心和备援数据中心之间的距离和数据传输方式、灾难发生时所要求的恢复速度、备援中心的管理及投入资金等。衡量容灾备份的程度有两个技术指标,它们是RPO(Recovery Point Objective)和RTO(Recovery Time Objective) 。
RPO即数据恢复点目标,主要指的是业务系统所能容忍的数据丢失量。RTO即恢复时间目标,主要指的是所能容忍的业务停止服务的最长时间,也就是从灾难发生到业务系统恢复服务功能所需要的最短时间周期。
网络备份系统两方架构和三方架构简介
网络备份系统的两方架构
 



网络备份系统的三方架构



系统总体框架



备份代理
备份代理作为后台守护进程运行在需要数据备份和恢复服务的客户机上,它监听来自备份服务器的连接请求、认证备份服务器并执行通过身份认证的备份服务器发送过来的命令。备份代理的软件模块结构分为四个部分:
1.模块初始化
2.备份服务器请求监听模块
3.作业处理模块
4.网络通信模块。
 



存储服务器
存储服务器负责备份数据的存储以及恢复数据。它在后方管理着大量的存储设备(物理存储域),存储域上可以标识各种存储卷,作业的文件记录
按照一定的格式存储在存储卷中。文件记录的索引由备份服务器的目录数据库提供,根据文件索引,存储服务器会很快找到文件记录。存储服务器
的软件模块结构分为五个部分,分别是:
1.模块初始化
2.网络连接监控模块
3.作业ticket模块
4.作业处理模块
5.网络通信模块
 



备份服务器
备份服务器负责接收用户的输入,进行作业调度,向备份代理与存储服务器发送作业命令指挥其运行作业,接收作业运行的消息反馈并依照用户要求输出给Web界面。备份服务器还要负责管理系统中所定制的与备份与恢复相关的资源,存储了作业运行信息和资源元数据也由备份服务器进行管理。
备份服务器的软件架构由系统初始化,配置资源管理,用户命令交互, 作业运行管理,系统运行监控这五个主要模块组成:
 



三方模块整体通信流程
三方子系统之间的通信,无论是命令传输还是数据传输都是基于TCP/IP的,因此在整个系统可以利用现有的局域网或者广域网完成备份与恢复任务,子系统间的整体通信流程如图为:
 



参考
开源网站http://www.bacula.org/en/

 












本文转自百度技术51CTO博客,原文链接:http://blog.51cto.com/baidutech/748584 ,如需转载请自行联系原作者
相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
22天前
|
Ubuntu Windows
【Ubuntu/Arm】Ubuntu 系统如何链接有线网络(非虚拟机)?
【Ubuntu/Arm】Ubuntu 系统如何链接有线网络(非虚拟机)?
|
1月前
|
机器学习/深度学习 数据采集 人工智能
m基于深度学习网络的手势识别系统matlab仿真,包含GUI界面
m基于深度学习网络的手势识别系统matlab仿真,包含GUI界面
41 0
|
1月前
|
存储 Shell Linux
【Shell 命令集合 网络通讯 】Linux 显示Unix-to-Unix Copy (UUCP) 系统的状态信息 uustat命令 使用指南
【Shell 命令集合 网络通讯 】Linux 显示Unix-to-Unix Copy (UUCP) 系统的状态信息 uustat命令 使用指南
26 0
|
1月前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
29 0
|
13天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
37 6
|
1月前
|
人工智能 运维 监控
构建高性能微服务架构:现代后端开发的挑战与策略构建高效自动化运维系统的关键策略
【2月更文挑战第30天】 随着企业应用的复杂性增加,传统的单体应用架构已经难以满足快速迭代和高可用性的需求。微服务架构作为解决方案,以其服务的细粒度、独立性和弹性而受到青睐。本文将深入探讨如何构建一个高性能的微服务系统,包括关键的设计原则、常用的技术栈选择以及性能优化的最佳实践。我们将分析微服务在处理分布式事务、数据一致性以及服务发现等方面的挑战,并提出相应的解决策略。通过实例分析和案例研究,我们的目标是为后端开发人员提供一套实用的指南,帮助他们构建出既能快速响应市场变化,又能保持高效率和稳定性的微服务系统。 【2月更文挑战第30天】随着信息技术的飞速发展,企业对于信息系统的稳定性和效率要求
|
2天前
|
网络架构
经典神经网络架构参考 v1.0(2)
经典神经网络架构参考 v1.0
10 0
|
14天前
|
JavaScript Java 测试技术
基于Java的网络类课程思政学习系统的设计与实现(源码+lw+部署文档+讲解等)
基于Java的网络类课程思政学习系统的设计与实现(源码+lw+部署文档+讲解等)
30 0
基于Java的网络类课程思政学习系统的设计与实现(源码+lw+部署文档+讲解等)
|
17天前
|
机器学习/深度学习 人工智能 运维
构建未来:AI驱动的自适应网络安全防御系统
【4月更文挑战第7天】 在数字时代的浪潮中,网络安全已成为维系信息完整性、保障用户隐私和确保商业连续性的关键。传统的安全防御策略,受限于其静态性质和对新型威胁的响应迟缓,已难以满足日益增长的安全需求。本文将探讨如何利用人工智能(AI)技术打造一个自适应的网络安全防御系统,该系统能够实时分析网络流量,自动识别并响应未知威胁,从而提供更为强大和灵活的保护机制。通过深入剖析AI算法的核心原理及其在网络安全中的应用,我们将展望一个由AI赋能的、更加智能和安全的网络环境。
28 0
|
29天前
|
存储 Unix Linux
深入理解 Linux 系统下的关键网络接口和函数,gethostent,getaddrinfo,getnameinfo
深入理解 Linux 系统下的关键网络接口和函数,gethostent,getaddrinfo,getnameinfo
15 0