一种跨区域容灾方法和装置与流程

文档序号:15394530发布日期:2018-09-08 01:52阅读:240来源:国知局

本发明涉及互联网技术领域,特别是涉及一种跨区域容灾方法和装置。



背景技术:

目前,互联网核心及重要业务往往多区域部署,并进行业务容灾,例如:核心级别的业务需要异地容灾,重要级别的业务需要同城容灾,在出现故障时,通过dns(domainnamesystem,域名系统)切换完成故障迁移。

典型的互联网业务容灾方案,不但承担业务容灾的任务,很多时候也承担着负载均衡的任务以及优化性能的任务。常见的几种容灾模式有:

1)主备镜像容灾方法。两个数据中心部署完全一样,每次网站发布都要在两个数据中心同时发布,保证运行系统版本一致。两个数据中心有主备之分,数据通过准实时的同步系统从主站不断同步到备站。主站发生灾害性故障导致完全不可用,则将域名解析切换到备站。这种方案纯粹是为了容灾。

2)业务互补、数据同步的容灾方法。如:某网站美国机房和国内机房在业务上互补,美国机房部署买家服务,国内机房部署卖家服务,海外用户(主要是买家)访问美国机房,国内用户(主要是卖家)访问国内机房,主要业务数据互相实时同步。

3)主主镜像容灾方法。部署和发布模式与主备镜像容灾方法一样,但是多个数据中心是同时启用的,根据用户地域的不同,将域名解析到不同的机房,数据实时同步,如新浪微博。

4)一写多读容灾方法。该方法数据写入只发生在一个数据中心,但是为了加快地区用户访问,会将数据同步到其他数据中心供只读访问。

但是,现有技术存在以下技术问题:

1)传统容灾方案多数采用冷备方式,造成建设成本高,投资效益比低下,且在主备之间切换时往往会因为各种问题需要长时间的调测和准备,针对实时故障迁移,会导致业务中断。

2)传统容灾方案在跨区域容灾过程中需要漫长的周期,通过云灾备可以有效缩短时间,但是云上计算、数据库、存储的容灾实现方法目前缺少完善的方案,而且现有云容灾方案仅局限于同城容灾,且往往依托于第三方存储实现整体容灾,对于统一存储方案,如在云中广泛采用的ceph存储方案,则要求基于相同的存储集群实现,这对跨地域容灾和远距离同城容灾很难满足。



技术实现要素:

本发明要解决的技术问题是提供一种跨区域容灾方法和装置,用以解决上述技术问题。

为了解决上述技术问题,本发明是通过以下技术方案来解决的:

本发明提供了一种跨区域容灾方法,包括:在两个分区中,分别部署云网络;其中,两个所述云网络都具有计算资源层、数据库层和存储层;对所述计算资源层、数据库层和存储层分别进行监测和容灾。

其中,对所述计算资源层进行监测和容灾,包括:在两个云网络中的计算资源上分别部署服务业务;当监测到其中一个云网络中的计算资源不可用时,通过预设的计算资源切换方式,将不可用的计算资源上的服务业务切换到另一云网络中的计算资源上。

其中,对所述数据库层进行监测和容灾,包括:通过主从同步技术,对两个云网络中的数据库进行数据同步;当监测到其中一个云网络中的数据库出现故障时,通过预设的数据库切换方式,将故障的所述数据库的读写功能切换到另一云网络中的数据库上。

其中,对所述存储层进行监测和容灾,包括:每隔预设时间段,对两个云网络中的ceph存储集群进行数据同步;当监测到其中一个云网络中的ceph存储集群出现故障,则通过另一云网络中的ceph存储集群存储的数据,恢复故障的所述ceph存储集群中的数据。

其中,每隔预设时间段,对两个云网络中的ceph存储集群进行数据同步,包括:将其中一个云网络中的ceph存储集群设置为主ceph存储集群,将另一云网络中的ceph存储集群设置为备ceph存储集群;每隔预设时间段,通过对主ceph存储集群存储的数据进行快照的方式,将主ceph存储集群中的新增数据同步到备ceph存储集群中。

本发明还提供了一种跨区域容灾装置,包括:部署模块,用于在两个分区中,分别部署云网络;其中,两个所述云网络都具有计算资源层、数据库层和存储层;容灾模块,用于对所述计算资源层、数据库层和存储层分别进行监测和容灾。

其中,所述容灾模块,用于:在两个云网络中的计算资源上分别部署服务业务;当监测到其中一个云网络中的计算资源不可用时,通过预设的计算资源切换方式,将不可用的计算资源上的服务业务切换到另一云网络中的计算资源上。

其中,所述容灾模块,用于:通过主从同步技术,对两个云网络中的数据库进行数据同步;当监测到其中一个云网络中的数据库出现故障时,通过预设的数据库切换方式,将故障的所述数据库的读写功能切换到另一云网络中的数据库上。

其中,所述容灾模块,用于:每隔预设时间段,对两个云网络中的ceph存储集群进行数据同步;当监测到其中一个云网络中的ceph存储集群出现故障,则通过另一云网络中的ceph存储集群存储的数据,恢复故障的所述ceph存储集群中的数据。

其中,所述容灾模块,用于:将其中一个云网络中的ceph存储集群设置为主ceph存储集群,将另一云网络中的ceph存储集群设置为备ceph存储集群;每隔预设时间段,通过对主ceph存储集群存储的数据进行快照的方式,将主ceph存储集群中的新增数据同步到备ceph存储集群中。

本发明有益效果如下:

本发明通过云网络实现层次化管理的跨区域容灾,部署成本低,切换时间短,不会对业务产生消极影响,并且可以缩短跨区域容灾的时间。进一步地,本发明在计算资源、数据库、存储层上分别实现跨区域容灾,从而实现完整的云容灾方案,解决了重要及核心以上级别业务的同城甚至异地容灾。

附图说明

图1是根据本发明一实施例的跨区域容灾方法的流程图;

图2是根据本发明一实施例的存储层备份的示意图;

图3是根据本发明一实施例的跨区域容灾的示意图;

图4是根据本发明一实施例的跨区域容灾装置的结构图。

具体实施方式

本发明提出了一种云网络实现的基于层次化资源管理的跨区域的容灾方法,其核心思想是:通过云灾备方式,实现主主镜像方式容灾和多活方式容灾。

层次化资源管理主要是指:对计算资源、数据库、存储分别进行容灾,并以云组件或者服务的方式提供给租户使用,从而解决了跨区域的云灾备问题,以及公有云、混合云、私有云中的云容灾问题。

以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。

本发明实施例提供一种跨区域容灾方法。图1是根据本发明一实施例的跨区域容灾方法的流程图。

步骤s110,在两个分区中,分别部署云网络;其中,两个所述云网络都具有计算资源层、数据库层和存储层。

该云网络的种类包括:为公有云网络、私有云网络和混合云网络。该云网络以云组件或服务的方式提供给租户使用。

计算资源层即是所属分区的计算资源。例如:云网络中的云主机。

数据库层即是所属分区的数据库。例如:mysql数据库。

存储层即是所属分区的存储集群。存储集群可以是ceph(分布式文件系统)存储集群。ceph存储集群(可简称ceph)可以存储云主机数据。

本实施例的部署方式,可以实现对计算资源层、数据库层和存储层的层次化管理,分别解决各层的容灾。

步骤s120,对所述计算资源层、数据库层和存储层分别进行监测和容灾。

对所述计算资源层进行监测和容灾,包括:在两个云网络中的计算资源上分别部署服务业务;当监测到其中一个云网络中的计算资源不可用时,通过预设的计算资源切换方式,将不可用的计算资源上的服务业务切换到另一云网络中的计算资源上。进一步地,计算资源层容灾:在两个分区设置独立的计算资源集群。可以在两个分区的计算资源上分别部署服务业务。当一个分区内的计算资源不可用时,通过dns切换等手段,将服务业务切换到另外一个分区。

对所述数据库层进行监测和容灾,包括:通过主从同步技术,对两个云网络中的数据库进行数据同步;当监测到其中一个云网络中的数据库出现故障时,通过预设的数据库切换方式,将故障的所述数据库的读写功能切换到另一云网络中的数据库上。进一步地,数据库层容灾:通过数据库的主从同步技术,例如mysql的主从同步技术,在两个分区部署数据库并进行同步。当一个分区的数据读写出现故障时,将该数据库的读写立即切换到另外一个分区。可以通过dns解析或者vip(vitualinterruptpending,虚拟中断等待)配置修改的方式进行切换。

对所述存储层进行监测和容灾,包括:每隔预设时间段,对两个云网络中的ceph存储集群进行数据同步;当监测到其中一个云网络中的ceph存储集群出现故障,则通过另一云网络中的ceph存储集群存储的数据,恢复故障的所述ceph存储集群中的数据。其中,每隔预设时间段,对两个云网络中的ceph存储集群进行数据同步,包括:将其中一个云网络中的ceph存储集群设置为主ceph存储集群,将另一云网络中的ceph存储集群设置为备ceph存储集群;每隔预设时间段,通过对主ceph存储集群存储的数据进行快照的方式,将主ceph存储集群中的新增数据同步到备ceph存储集群中。进一步地,存储各层容灾:两个分区都使用ceph存储集群进行存储,包括镜像存储、块存储和对象存储,不论怎样存储,数据都在ceph存储集群中,因此存储层的容灾只需要对ceph存储集群进行容灾即可。

例如:如图2所示,在两个分区分别部署vpc(virtualprivatecloud,虚拟私有网络);预设备份控制器,负责两个分区的数据备份功能。预设时间段为一天。第一天,备份控制器将设置在vpc1的ceph存储集群的所有数据,包括镜像数据、块存储数据和对象存储数据,全量复制到vpc2中的ceph存储集群中,并对vpc1中的ceph存储集群做一次快照(快照1);第二天,备份控制器将vpc1中的ceph存储集群再次做快照(快照2),并将快照2和快照1之间的增量数据同步到vpc2中的ceph存储集群;第三天,备份控制器将vpc1中的ceph存储集群再次做快照(快照3),并将快照3和快照2之间的增量数据同步到vpc2中的ceph存储集群,以此类推;从而,vpc1中的ceph存储集群中的数据,包括镜像数据、块存储数据和对象存储数据同步到vpc2中的ceph存储集群中,形成互相备份。

通过本发明实施例,可以实现故障的自动切换及迁移,承担容灾的任务的同时还可以完成同城负载均衡,达到业务优化性能的目的。

如图3所示,为根据本发明一实施例的跨区域容灾的示意图。

1)如果vpc1的云主机(计算资源)出现故障,则通过域名系统和负载均衡,可以将vpc1中的服务业务自动切换到vpc2的云主机中。

2)如果vpc1中的数据库(主数据库,即云db主库)出现问题,则通过域名系统或者vip,将vpc1中主数据库的读写切换到vpc2中的备数据库(云db备库)上。其中,主数据库和备数据库之间数据同步。

3)如果vpc1中的ceph(主ceph)存储出现问题,则通过vpc2中的ceph(备ceph)存储恢复vpc1中的ceph数据。其中,vpc1中的ceph存储和vpc2中的ceph存储同步。

4)如果vpc2的云主机出现故障,则通过域名系统和负载均衡,可以将vpc2中的服务业务自动切换到vpc1的云主机中。

5)如果vpc2中的数据库(备数据库)出现问题,则通过域名系统或者vip,将vpc2中备数据库的读写切换到vpc1中的备数据库上。

6)如果vpc2中的ceph存储出现问题,则通过vpc1中的ceph存储恢复vpc2中的ceph数据。

本实施例还提供了一种跨区域容灾装置。如图4所示,为根据本发明一实施例的跨区域容灾装置的结构图。

该跨区域容灾装置,包括:

部署模块410,用于在两个分区中,分别部署云网络;其中,两个所述云网络都具有计算资源层、数据库层和存储层。

容灾模块420,用于对所述计算资源层、数据库层和存储层分别进行监测和容灾。

可选地,所述容灾模块420,用于:在两个云网络中的计算资源上分别部署服务业务;当监测到其中一个云网络中的计算资源不可用时,通过预设的计算资源切换方式,将不可用的计算资源上的服务业务切换到另一云网络中的计算资源上。

可选地,所述容灾模块420,用于:通过主从同步技术,对两个云网络中的数据库进行数据同步;当监测到其中一个云网络中的数据库出现故障时,通过预设的数据库切换方式,将故障的所述数据库的读写功能切换到另一云网络中的数据库上。

可选地,所述容灾模块420,用于:每隔预设时间段,对两个云网络中的ceph存储集群进行数据同步;当监测到其中一个云网络中的ceph存储集群出现故障,则通过另一云网络中的ceph存储集群存储的数据,恢复故障的所述ceph存储集群中的数据。

可选地,所述容灾模块420,用于:将其中一个云网络中的ceph存储集群设置为主ceph存储集群,将另一云网络中的ceph存储集群设置为备ceph存储集群;每隔预设时间段,通过对主ceph存储集群存储的数据进行快照的方式,将主ceph存储集群中的新增数据同步到备ceph存储集群中。

本实施例所述的装置的功能已经在图1-图3所示的方法实施例中进行了描述,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。

尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1