CN107291575B - 一种数据中心故障时的处理方法和设备 - Google Patents
一种数据中心故障时的处理方法和设备 Download PDFInfo
- Publication number
- CN107291575B CN107291575B CN201610201678.5A CN201610201678A CN107291575B CN 107291575 B CN107291575 B CN 107291575B CN 201610201678 A CN201610201678 A CN 201610201678A CN 107291575 B CN107291575 B CN 107291575B
- Authority
- CN
- China
- Prior art keywords
- data center
- data
- target user
- idc
- original
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims description 8
- 238000011084 recovery Methods 0.000 claims abstract description 115
- 238000000034 method Methods 0.000 claims abstract description 74
- 238000012545 processing Methods 0.000 claims abstract description 15
- 230000001360 synchronised effect Effects 0.000 claims description 27
- 230000008859 change Effects 0.000 claims description 6
- 230000004048 modification Effects 0.000 abstract description 7
- 238000012986 modification Methods 0.000 abstract description 7
- 238000004891 communication Methods 0.000 abstract description 2
- 238000012360 testing method Methods 0.000 description 11
- 238000013500 data storage Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
Abstract
本公开内容涉及网络通信技术领域,特别涉及一种数据中心故障时的处理方法和设备,用以解决在数据中心出现故障时,不考虑数据的一致性,对归属于故障数据中心的用户影响较大的问题。在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务;控制所述灾备数据中心禁止所述目标用户变更在第一时间点之前所述目标用户在所述原数据中心生成的用户数据,并允许所述目标用户在所述灾备数据中心中写入数据,以及对所述写入的数据进行更新操作。由于本公开内容实施例保证目标用户的用户数据在原数据中心和灾备数据中心的一致性,不会产生目标用户修改错误的发生,减小对目标用户的影响。
Description
技术领域
本公开内容涉及网络通信技术领域,特别涉及一种数据中心故障时的处理方法和设备。
背景技术
随着互联网技术的发展,互联网的用户越来越多,分布也越来越广泛。尤其大互联网公司,其用户大都分布在广泛的地理区域,而且越来越多的大型互联网公司将业务向全球发展,这使得其提供的网络服务面临着分布全球的海量用户。
随着互联网公司用户的增多,以及用户分布越来越广泛,互联网公司为了更好地满足用户需要,需要提供多个数据中心,多个数据中心同时对外提供网络服务,每个数据中心服务一部分用户,所有的数据中心服务的用户加起来是全局所有的用户。在互联网公司的多数据中心架构中,包括一个重要的部分就是数据中心与归属与数据中心的用户的绑定关系,即每一个数据中心都有其提供服务的固定用户。在互联网公司的多数据中心架构中,经常遇到的一个问题就是多数据中心架构中某一个数据中心故障时,该故障数据中心无法为归属于该数据中心的用户提供服务。
目前,在数据中心故障时,将归属于故障数据中心的用户迁移至灾备数据中心中,使归属于故障数据中心的用户通过灾备数据中心访问网络。由于现有技术中在将用户迁移至灾备数据中心之后,不考虑数据的一致性,如果用户修改一个过期的数据,会出现修改错误的情况发生。
综上所述,在数据中心出现故障时,通过灾备数据中心为归属于故障数据中心的用户提供的网络服务,不考虑数据的一致性,对归属于故障数据中心的用户影响较大。
发明内容
本公开内容提供一种数据中心故障时的处理方法和设备,用以解决目前在数据中心出现故障时,通过灾备数据中心为归属于故障数据中心的用户提供的网络服务,不考虑数据的一致性,对归属于故障数据中心的用户影响较大的问题。
基于上述问题,本公开内容实施例提供一种数据中心故障时的处理方法,包括:
在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务;
控制所述灾备数据中心禁止所述目标用户变更在第一时间点之前所述目标用户在所述原数据中心生成的用户数据,并允许所述目标用户在所述灾备数据中心中写入数据,以及对所述写入的数据进行更新操作;
其中,所述第一时间点为所述原数据中心出现故障的时间点。
由于本公开内容实施例在原数据中心出现故障后,控制原数据中心对应的灾备数据中心为目标用户提供网络服务。在目标用户通过灾备数据中心访问网络时,对目标用户的数据操作进行限制,允许目标用户在灾备数据中心中写入数据,以及对写入的数据及进行更新操作,禁止目标用户变更第一时间点之前目标用户在原数据中心生成的用户数据,从而保证目标用户的用户数据在原数据中心和灾备数据中心的一致性,不会产生目标用户修改错误的发生,减 小对目标用户的影响。
可选的,该方法还包括:
在确定所述原数据中心恢复后,控制所述原数据中心为所述目标用户提供网络服务;
控制所述原数据中心禁止所述目标用户变更在第二时间点之前所述目标用户在所述灾备数据中心生成的用户数据,并允许所述目标用户在所述原数据中心中写入数据,以及对所述写入的数据进行更新操作;
其中,所述第二时间点为所述原数据中心恢复的时间点。
由于本公开内容实施例在原数据中心恢复后,控制恢复后原数据中心继续为用户提供网络服务。在目标用户通过原数据中心访问网络时,对目标用户的数据操作进行限制,允许目标用户在原数据中心中写入数据,以及对写入的数据及进行更新操作,禁止目标用户变更第二时间点之前目标用户生成的用户数据,从而保证目标用户的用户数据在原数据中心和灾备数据中心的一致性。
可选的,所述在确定所述原数据中心恢复之后,还包括:
将所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据向所述原数据中心进行同步。
由于本公开内容实施例将目标用户在原数据中心故障后,在灾备数据中心生成的全部用户数据同步至原数据中心,从而保证目标用户的用户数据在原数据中心和灾备数据中心的一致性。
可选的,根据下列方式判断所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据是否同步完成:
获取所述灾备数据中心和所述原数据中心之间的所有数据同步程序的位点;
判断所述所有数据同步程序的位点是否全部晚于所述第二时间点;
如果是,则确定所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的所述全部用户数据同步完成;
否则,返回获取所述灾备数据中心和所述原数据中心之间所有数据同步程序的位点的步骤。
由于本公开内容实施例提供了准确判断第一时间点之后所述目标用户在所述灾备数据中心中生成的全部用户数据是否同步至所述原数据中心的方法,从而保证第一时间点之后目标用户在灾备数据中心生成的全部用户数据同步至原数据中心。
另一方面,本公开内容实施例还提供一种数据中心故障时的处理设备,包括:
处理模块,用于在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务;
控制模块,用于控制所述灾备数据中心禁止所述目标用户变更在第一时间点之前所述目标用户在所述原数据中心生成的用户数据,并允许所述目标用户在所述灾备数据中心中写入数据,以及对所述写入的数据进行更新操作;其中,所述第一时间点为所述原数据中心出现故障的时间点。
可选的,所述控制模块,还用于:
在确定所述原数据中心恢复后,控制所述原数据中心为所述目标用户提供网络服务;控制所述原数据中心禁止所述目标用户变更在第二时间点之前所述目标用户在所述灾备数据中心生成的用户数据,并允许所述目标用户在所述原数据中心中写入数据,以及对所述写入的数据进行更新操作;其中,所述第二时间点为所述原数据中心恢复的时间点。
可选的,所述控制模块,还用于:
将所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据向所述原数据中心进行同步。
可选的,所述控制模块,还用于:
根据下列方式判断所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据是否同步完成:
获取所述灾备数据中心和所述原数据中心之间的所有数据同步程序的位点;判断所述所有数据同步程序的位点是否全部晚于所述第二时间点;如果是,则确定所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的所述全部用户数据同步完成;否则,返回获取所述灾备数据中心和所述原数据中心之间所有数据同步程序的位点的步骤。
可选的,所述控制模块,还用于:
确定所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据同步完成后,控制所述原数据中心允许所述目标用户变更在第二时间点之前所述目标用户在所述灾备数据中心生成的用户数据。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开内容实施例一种IDC故障时的处理方法的流程图;
图2为本公开内容实施例表示IDC工作状态的数据表的结构示意图一;
图3A为本公开内容实施例表示IDC工作状态的数据表的结构示意图二;
图3B为本公开内容实施例表示IDC工作状态的数据表的结构示意图三;
图4A为本公开内容实施例表示IDC工作状态的数据表的结构示意图四;
图4B为本公开内容实施例表示IDC工作状态的数据表的结构示意图五;
图5为本公开内容实施例判断第一时间点之后目标用户在灾备IDC中生成的全部用户数据是否同步至原IDC的方法流程图;
图6为本公开内容实施例一种数据中心故障时的处理的流程图;
图7为本公开内容实施例一种数据中心故障时的处理方法的整体流程图;
图8为本公开内容实施例一种数据中心故障时的处理的设备的结构示意图。
具体实施方式
本公开内容实施例在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务;控制所述灾备数据中心禁止所述目标用户变更在第一时间点之前所述目标用户在所述原数据中心生成的用户数据,并允许所述目标用户在所述灾备数据中心中写入数据,以及对所述写入的数据进行更新操作;其中,所述第一时间点为所述原数据中心出现故障的时间点。
由于本公开内容实施例在原数据中心出现故障后,控制原数据中心对应的灾备数据中心为目标用户提供网络服务。在目标用户通过灾备数据中心访问网络时,对目标用户的数据操作进行限制,允许目标用户在灾备数据中心中写入数据,以及对写入的数据及进行更新操作,禁止目标用户变更第一时间点之前目标用户在原数据中心生成的用户数据,从而保证目标用户的用户数据在原数据中心和灾备数据中心的一致性,不会产生目标用户修改错误的发生,减 小对目标用户的影响。
为使本公开内容实施例的目的、技术方案和优点更加清楚,下面将结合本公开内容实施例中的附图,对本公开内容实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开内容一部分实施例,而不是全部的实施例。基于本公开内容中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开内容保护的范围。
下面结合说明书附图对本公开内容实施例作进一步详细描述。
如图1所示,本公开内容实施例一种数据中心故障时的处理方法,包括:
步骤101、在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务;
步骤102、控制所述灾备数据中心禁止所述目标用户变更在第一时间点之前所述目标用户在所述原数据中心生成的用户数据,并允许所述目标用户在所述灾备数据中心中写入数据,以及对所述写入的数据进行更新操作;其中,所述第一时间点为所述原数据中心出现故障的时间点。
本公开内容实施例数据中心故障时的处理方法分为两个过程。
其中,第一个过程为在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务;
第二个过程为在确定所述原数据中心恢复后,控制所述原数据中心为所述目标用户提供网络服务。
下面针对本公开内容实施例的两个过程分别进行说明。
过程一、在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务。
本公开内容实施例在原数据中心出现故障后,将所述原数据中心的工作状态更改为故障,并通知DNS(Domain Name System,域名系统)从备选数据中心表中删除所述原数据中心,以使所述DNS在目标用户访问网络时根据删除后的备选数据中心表,将所述目标用户的访问网络请求解析至所述目标用户对应的数据中心,其中所述目标用户为归属于所述原数据中心的用户;若所述目标用户对应的数据中心不是所述原数据中心对应的灾备数据中心,则通知所述目标用户对应的数据中心拒绝所述目标用户的访问网络请求,并将所述目标用户的所述访问网络请求转发至所述灾备数据中心,控制所述灾备数据中心为所述目标用户提供网络服务。
由于本公开内容实施例在原数据中心出现故障后,将原数据中心的工作状态更改为故障,并控制DNS将备选数据中心表中的原数据中心删除。在归属于原数据中心的目标用户访问网络时,DNS根据目标用户的IP地址和备选数据中心表,将目标用户的网络请求解析至目标用户对应的数据中心,并判断目标用户对应的数据中心与原数据中心对应的灾备数据中心是否为同一个,在不是同一个时,将目标用户的访问网络请求转发至灾备数据中心,控制灾备数据中心为所述目标用户提供网络服务。使得归属于原数据中心的用户可以通过灾备数据中心访问互联网网站,从而在原数据中心出现故障时,对用户的影响很小。
本公开内容实施例可以应用在有多个数据中心为用户提供服务的场景。在该场景中,经常遇到的一个问题就是多数据中心架构中某个数据中心出现故障时,在该数据中心出现故障期间,该数据中心无法提供对外服务。
本公开内容实施例的执行主体为控制中心,并且该控制中心可以位于主数据中心中,或者控制中心还可以位于一个用于控制全局数据中心的特定服务器中。
其中,主数据中心可以是从全局所有数据中心中,任意选取一个数据中心作为主数据中心;还可以根据数据中心存储数据的能力,将存储数据能力较强的数据中心作为主数据中心;或者根据数据中心分布的地理位置,选用地理位置居中的数据中心作为主数据中心。
如果本公开内容实施例的控制中心位于主数据中心,并且在主数据中心出现故障时,将控制中心转移至备份数据中心,由备份数据中心接替主数据中心的控制工作。其中,备份数据中心可以是从全局所有数据中心中,任意选取一个数据中心作为备份数据中心;还可以根据数据中心存储数据的能力,将存储数据能力较强的数据中心作为备份数据中心;或者根据数据中心分布的地理位置,选用地理位置居中的数据中心作为备份数据中心。
本公开内容实施例的数据中心可以为IDC(Internet Data Center,互联网数据中心),还可以是其它用于存放数据的中心。为了方便介绍,下面以数据中心是IDC为例进行说明。需要说明的是,数据中心是其他用于存放数据的中心的处理方法与数据中心是IDC的处理方法相同,在此不再赘述。
本公开内容实施例的IDC具体为互联网数据中心,在该互联网数据中心中存放了一定数量的网络服务器,并在网络服务器上部署特定的互联网软件,对互联网的用户提供网络服务。
本公开内容实施例IDC的工作状态包括正常和故障。在IDC的工作状态为正常时,该IDC可以为归属于该IDC的用户提供网络服务;在IDC的工作状态为故障时,该IDC不能继续为归属于该IDC的用户提供网络服务,需要该IDC对应的灾备IDC接替该IDC,为归属于该IDC的用户提供网络服务。
其中,本公开内容实施例将工作状态为故障的IDC称为原IDC,并且目标用户为归属于原IDC的用户;目标用户对应的IDC为根据用户的IP地址, DNS确定的距离用户最近的IDC。
本公开内容实施例在确定原IDC的工作状态为故障时,具体可以采用下列方式进行确定。
其中,本公开内容实施例以执行主体为控制中心为例进行说明。
方式一、人工确定。
本公开内容实施例可以通过人工确定的方式确定原IDC的工作状态为故障。
具体的,在原IDC故障时发出故障报警信号,在技术人员通过原IDC发出的故障报警信号后,确定原IDC故障,并触发控制中心执行原IDC故障对应的控制操作。
方式二、原IDC上报故障信息。
本公开内容实施例可以采用原IDC自动向控制中心上报故障信息的方式,确定原IDC的工作状态为故障。
具体的,在原IDC故障时,向控制中心发送故障信号,将自身的故障信息上报给控制中心,以使控制中心在接收到原IDC上报的故障信息后,执行原IDC故障对应的控制操作。
方式三、控制中心向原IDC发送测试信号,判断原IDC是否故障。
本公开内容实施例的控制中心周期性的向全局所有IDC发送测试信号,在IDC接收到控制中心发送的测试信号后,针对工作状态为正常的IDC,在接收到控制中心发送的测试信号后,将返回特定信号给控制中心。针对工作状态为故障的原IDC,由于原IDC故障无法接收控制中心的测试信号,因此原IDC在控制中心发送测试信号后,不会返回给控制中心特定信号。
在控制中心发送给全局所有IDC测试信号后,若在设定时长内接收到 IDC返回的特定信号,则确定该IDC的工作状态为正常;若在设定时长内没有接收到IDC返回的特定信号,则确定该IDC为故障。
其中,特定信号可以为表示IDC正常工作的信号,或者是表示接收到控制中心测试信号的任何约定信号。
例如,针对一个互联网公司,全局共包括五个IDC,分别IDC1、IDC2、 IDC3、IDC4和IDC5。控制中心每间隔10min向全局五个IDC发送测试信号,并且约定IDC在接收到测试信号后返回的特定信号为表示IDC正常工作的心跳信号,并且设定时长为2min。则在控制中心在10:00:00向全局五个IDC发送测试信号后,IDC1于10:00:20向控制中心返回心跳信号,IDC2于10:00:50 向控制中心返回心跳信号,IDC4于10:01:15向控制中心返回心跳信号,IDC5于10:01:30向控制中心返回心跳信号,在10:02:00后,先控制中心仍没有收到 IDC3返回的信号,则确定IDC1、IDC2、IDC4和IDC5的工作状态为正常, IDC3的工作状态为故障。
需要说明的是,上述给出的确定原IDC故障的方法,只是对本公开内容实施例确定原IDC故障的方法的举例说明,本公开内容实施例欲保护的确定原IDC故障的方法并不限于上述举例说明,任何能够确定原IDC故障的方法均适用于本公开内容。
本公开内容实施例中的灾备IDC为接替出现故障的原IDC为用户提供网络服务的IDC。
每一个IDC均有其对应的灾备IDC,并且在原IDC不同时,其对应的灾备IDC可以相同,也可以不同。
其中,每一个IDC对应的灾备IDC为预先确定的,在为每一个IDC确定灾备IDC时,可以根据下列方式进行确定。
方式一、根据地理位置确定。
针对一个IDC,在确定该IDC对应的灾备IDC时,根据该IDC的地理位置,以及全局其它IDC的地理位置,确定与该IDC地理位置最接近的IDC,将距离该IDC最近的IDC作为该IDC对应的灾备IDC。
例如,针对一个互联网公司,全局共包括五个IDC,分别IDC1、IDC2、 IDC3、IDC4和IDC5。在确定IDC1对应的灾备IDC时,根据IDC2、IDC3、 IDC4和IDC5的地理位置,确定出与IDC1距离最近的IDC,假设IDC3距离 IDC1距离最近,则将IDC3作为IDC1对应的灾备IDC。
方式二、根据存储数据能力。
在确定IDC对应的灾备IDC时,首先确定全局所有IDC存储数据的能力,具体IDC存储数据的能力可以体现为该IDC能够承载的用户数据流量。将存储数据的能力较强的一部分IDC作为可选的灾备IDC。
针对一个IDC,在确定该IDC对应的灾备IDC时,从可选的灾备IDC中随机选取一个IDC作为该IDC对应的灾备IDC。
例如,针对一个互联网公司,全局共包括五个IDC,分别IDC1、IDC2、 IDC3、IDC4和IDC5。根据IDC1、IDC2、IDC3、IDC4和IDC5存储数据的能力,确定出DC1、IDC2、IDC3、IDC4和IDC5中存储数据能力较强的一部分 IDC作为可选的灾备IDC,假设确定出可选的灾备IDC为IDC2、IDC3和 IDC4。在确定DC1对应的灾备IDC时,从IDC2、IDC3和IDC4中随机选取一个IDC作为IDC1对应的灾备IDC。
方式三、采用随机分配的方式。
针对一个IDC,在确定该IDC对应的灾备IDC时,从除该IDC之外的其它IDC中随机选择一个IDC,作为该IDC的灾备IDC。
例如,针对一个互联网公司,全局共包括五个IDC,分别IDC1、IDC2、 IDC3、IDC4和IDC5。在确定IDC2对应的灾备IDC时,从IDC1、IDC3、 IDC4和IDC5中随机选取一个IDC,假设随机选取的IDC为IDC3,则将IDC3 作为IDC2对应的灾备IDC。
需要说明的是,上述给出的确定每一个IDC对应的灾备IDC的方法,只是对本公开内容实施例确定每一个IDC对应的灾备IDC方法的举例说明,本公开内容实施例欲保护的确定每一个IDC对应的灾备IDC方法并不限于上述举例说明,任何能够确定每一个IDC对应的灾备IDC的方法均适用于本公开内容。
本公开内容实施例在原IDC出现故障后,需要根据IDC和归属IDC用户的绑定关系确定该故障IDC对应的所有用户。
其中,本公开内容实施例采用路由表存储IDC和归属于IDC用户的绑定关系,并且,路由表中还存储有全局每一个IDC的工作状态。
具体的,本公开内容实施例IDC的工作状态包括正常和故障,在路由表中存储IDC的工作状态时,可以采用“1”表示IDC的工作状态为正常,采用“0”表示IDC的工作状态为故障。
例如,针对一个互联网公司,全局共包括五个IDC,分别IDC1、IDC2、 IDC3、IDC4和IDC5。并确定IDC1、IDC3、IDC4和IDC5的工作状态为正常,IDC2的工作状态为故障,在路由表中存储IDC的工作状态时,可以采用如图2所示的数据表进行存储:
<IDC1,1>,<IDC2,0>,<IDC3,1>,<IDC4,1>,<IDC5,1>。
本公开内容实施例在原IDC出现故障后,将路由表中原IDC对应的工作状态由正常更改为故障。
例如,针对一个互联网公司,全局共包括五个IDC,分别IDC1、IDC2、 IDC3、IDC4和IDC5。在全局所有IDC的工作状态为正常时,路由表中存储的工作状态如图3A所示,为:<IDC1,1>,<IDC2,1>,<IDC3,1>, <IDC4,1>,<IDC5,1>。在确定IDC3的工作状态为故障后,将路由表中 IDC3对应的工作状态修改为故障,即将路由表中IDC3对应的工作状态修改为“0”,即修改后的路由表中存储的工作状态如图3B所示,为:<IDC1, 1>,<IDC2,1>,<IDC3,0>,<IDC4,1>,<IDC5,1>。
针对一个正常工作的IDC,在归属于该IDC的用户访问网络时,控制该 IDC为用户提供网络服务。
下面详细介绍用户通过IDC访问网络的步骤。
1、针对一个用户,在该用户请求访问网络时,获取该用户使用的终端对应的IP地址;
2、采用DNS技术,将用户的网络请求解析至用户对应的IDC;
3、根据路由表中IDC与归属IDC的用户的绑定关系,确定该用户归属的 IDC;
4、若确定用户归属的IDC与用户对应的最近的IDC为同一个IDC,则通知该IDC接受用户的网络访问请求,为用户提供网络服务;若确定用户归属的 IDC与用户对应的最近的IDC不是同一个IDC,则通知用户对应的IDC拒绝用户的网络访问请求,将用户的访问网络请求转发至用户归属的IDC,控制用户归属的IDC为用户提供网络服务。
步骤2中,采用DNS技术,将用户的网络请求解析至用户对应的IDC的具体方法为:
根据用户访问网络时所使用终端的IP地址,解析出用户的地理区域;并且根据DNS中的备选IDC的数据表中对应的所有备选IDC,以及根据解析到的用户的地理区域,从所有备选IDC中确定出距离用户最近的IDC,即用户对应的IDC,并将用户的访问网络请求解析至用户对应的IDC。
其中,备选IDC的数据表中包括全局所有工作状态为正常的IDC,并且可以对数据表中的备选IDC进行修改。
由于备选IDC的数据表中包括全局所有工作状态为正常的IDC,因此在 IDC出现故障后,需要及时修改备选IDC的数据表中的备选IDC,将出现故障的IDC从备选IDC的数据表中删除。
在原IDC出现故障后,根据IDC和归属于IDC的用户的绑定关系,确定出归属于原IDC的目标用户。针对一个目标用户,在该目标用户请求访问网络时,控制该IDC对应的灾备IDC为用户提供网络服务。
下面详细介绍目标用户通过灾备IDC访问网络的步骤。
1在目标用户请求访问网络时,获取该目标用户使用的终端对应的IP地址;
2、采用DNS技术,将目标用户的网络请求解析至用户对应的IDC;
3、读取路由表中记录的原IDC的工作状态为故障后,根据路由表确定原 IDC对应的灾备IDC;
4、若确定原IDC对应的灾备IDC与用户对应的IDC为同一个IDC,则通知用户对应的IDC(也为原IDC对应的灾备IDC)接受用户的网络访问请求,为用户提供网络服务;若确定原IDC对应的灾备IDC与用户对应的IDC不是同一个IDC,则通知用户对应的IDC拒绝用户的网络访问请求,将用户的访问网络请求转发至原IDC对应的灾备IDC,控制灾备IDC为用户提供网络服务。
步骤2中,采用DNS技术将目标用户的网络请求解析至用户对应的IDC 的具体方法为:
根据用户访问网络时所使用终端的IP地址,解析出用户的地理区域;并且根据DNS中的备选IDC的数据表中对应的所有备选IDC,以及根据解析到的用户的地理区域,从所有备选IDC中确定出距离用户最近的IDC,即用户对应的IDC,并将用户的访问网络请求解析至用户对应的IDC。
其中,备选IDC的数据表中包括全局所有工作状态为正常的IDC,并且可以对数据表中的备选IDC进行修改。
需要说明的是,本公开内容实施例在确定IDC故障后,将路由表中该 IDC对应的工作状态更改为故障,并从备选IDC的数据表中删除该故障IDC。在采用DNS技术,确定用户对应的最近的IDC时,备选IDC的数据表中已经不包括该故障IDC。
在过程一中,原IDC故障,目标用户通过灾备IDC访问网络。并且,在灾备IDC中,目标用户可以执行特定类型的数据操作。
具体的,1、在目标用户通过灾备IDC访问网络时,灾备IDC允许目标用户写入数据,并且允许目标用户更新通过灾备IDC写入的数据;
2、控制所述灾备IDC禁止所述目标用户变更在第一时间点之前所述目标用户在所述原IDC生成的用户数据。
其中,更新数据操作包括但不限于下列操作:
修改数据、删除数据。
控制灾备IDC禁止目标用户变更在第一时间点之前目标用户在原IDC生成的用户数据包括:
禁止目标用户修改在第一时间点之前目标用户在原IDC生成的用户数据;禁止目标用户删除在第一时间点之前目标用户在原IDC生成的用户数据。
需要说明的是,本公开内容实施例在目标用户通过灾备IDC访问网络时,还允许目标用户读取数据。
由于目标用户通过灾备IDC访问网络时,只可以执行部分数据操作,因此,在目标用户在灾备IDC进行数据操作时,需要判断目标用户的数据操作类型,根据目标用户具体的数据操作类型,控制灾备IDC执行相应的禁止或允许操作。
本公开内容实施例采用下列方式确定目标用户的数据操作类型。
在目标用户执行数据操作时,采用SQL(Structured Query Language,结构化查询语言)拦截,通过实现标准的JDBC(Java Data Base Connectivity,java 数据库连接)API(Application Programming Interface,应用程序编程接口),对SQL进行分析,向下调用真实的JDBC Driver(驱动程序)操作数据库。通过SQL分析,能够确定目标用户当前执行的数据操作类型。
其中,数据操作类型包括但不限于:
写入、修改、删除、读取。
在采用SQL分析确定目标用户的数据操作类型为禁止操作的类型,则通过SQL拦截的方式,对相关的SQL抛出异常,使整个事务回滚。
例如,在目标用户通过灾备IDC访问网络时,灾备IDC禁止用户变更第一时间点之前目标用户生成的用户数据,其中变更数据包括删除或修改数据。在通过SQL分析,确定目标用户在删除第一时间点之前目标用户生成的用户数据,则对相关的SQL抛出异常,使整个事务回滚,从而禁止目标用户删除第一时间点之前目标用户生成的用户数据。
需要说明的是,上述给出的通过SQL拦截的方式确定目标用户的数据操作类型,以及采用SQL拦截的方式禁止目标用户执行某些操作,只是对本公开内容实施例确定目标用户的数据操作类型,以及禁止目标用户执行某些操作的方法的举例说明,任何能够确定目标用户的数据操作类型,以及禁止目标用户执行某些操作的方法均适用于本公开内容。
过程二、在确定所述原IDC恢复后,控制所述原IDC为所述目标用户提供网络服务。
可选的,在确定所述原IDC恢复后,控制所述原IDC为所述目标用户提供网络服务;控制所述原IDC禁止所述目标用户变更在第二时间点之前所述目标用户在所述灾备IDC生成的用户数据,并允许所述目标用户在所述原 IDC中写入数据,以及对所述写入的数据进行更新操作;其中,所述第二时间点为所述原IDC恢复的时间点。
本公开内容实施例在原IDC恢复后,将所述原IDC的工作状态更改为正常,并通知所述DNS将所述原IDC添加至所述备选IDC的数据表中,以使所述DNS在所述目标用户访问网络时根据所述备选IDC的所述数据表,将所述目标用户的所述访问网络请求解析至所述目标用户对应的IDC;
若所述目标用户对应的IDC不是所述原IDC,则通知所述目标用户对应的所述IDC拒绝所述目标用户的所述访问网络请求,并将所述目标用户的所述访问网络请求转发至所述原IDC,控制所述原IDC为所述目标用户提供网络服务。
若所述目标用户对应的IDC是所述原IDC,则通知所述目标用户对应的所述IDC接受所述目标用户的访问网络请求,控制所述目标用户对应的所述 IDC为所述目标用户提供网络服务。
在确定出现故障的IDC恢复后,将路由表中存储的该IDC对应的工作状态更改为正常。具体的,在路由表中存储IDC的工作状态时,可以采用“1”表示IDC的工作状态为正常。
例如,针对一个互联网公司,全局共包括五个IDC,分别IDC1、IDC2、 IDC3、IDC4和IDC5。在确定IDC1的工作状态为故障,其它IDC的工作状态为正常时,路由表中存储的工作状态如图4A所示,为:<IDC1,0>, <IDC2,1>,<IDC3,1>,<IDC4,1>,<IDC5,1>。在确定IDC1恢复后,将IDC1的工作状态由故障更改为正常,则修改后的路由表中存储的工作状态如图4B所示,为:<IDC1,1>,<IDC2,1>,<IDC3,1>,<IDC4,1>, <IDC5,1>。
在确定出现故障的IDC恢复后,还需要将该IDC添加至备选IDC的数据表中。其中,备选IDC的数据表中包括全局所有工作状态为正常的IDC,并且可以对数据表中的备选IDC进行修改。
在出现故障的IDC恢复后,根据IDC和归属于IDC的用户的绑定关系,确定出归属于原IDC的目标用户。针对一个目标用户,在该目标用户请求访问网络时,控制恢复后的原IDC为用户提供网络服务。
下面详细介绍目标用户通过故障恢复后的原IDC访问网络的步骤。
1、在目标用户请求访问网络时,获取该目标用户使用的终端对应的IP地址;
2、采用DNS技术将目标用户的网络请求解析至用户对应的IDC;
3、读取路由表中记录的原IDC的工作状态,确定原IDC的工作状态为正常;
4、若确定用户对应的IDC与原IDC为同一个IDC,则通知用户对应的IDC (也为原IDC)接受用户的网络访问请求,为用户提供网络服务;若确定用户对应的IDC与原IDC不是同一个IDC,则通知用户对应的IDC拒绝用户的网络访问请求,将用户的访问网络请求转发至原IDC,控制原IDC为用户提供网络服务。
步骤2中,采用DNS技术将目标用户的网络请求解析至用户对应的IDC 的具体方法为:
根据用户访问网络时所使用终端的IP地址,解析出用户的地理区域;并且根据DNS中的备选IDC的数据表中对应的所有备选IDC,以及根据解析到的用户的地理区域,从所有备选IDC中确定出距离用户最近的IDC,即用户对应的IDC,并将用户的访问网络请求解析至用户对应的IDC。
需要说明的是,在原IDC恢复后,将原IDC添加到备选IDC的数据表中,则在归属于原IDC的目标用户请求访问网络时,根据目标用户终端的IP 地址确定目标用户对应的IDC时,备选IDC的数据表中包括原IDC。
在过程二中,还需要将所述灾备IDC中,在所述第一时间点之后生成的所述目标用户的全部用户数据向所述原IDC进行同步。
由于在出现故障的IDC恢复后,还需要将灾备IDC中,在第一时间点之后生成的目标用户的全部用户数据同步至所述原IDC。并且在将灾备IDC中,在第一时间点之后生成的所述目标用户的的全部用户数据同步至所述原IDC 之前,由于原IDC中并没有存储目标用户的全部用户数据,因此,原IDC需要控制目标用户执行特定的操作。
本公开内容实施例将原IDC恢复后,在将灾备IDC中,在第一时间点之后生成的所述目标用户的的全部用户数据同步至所述原IDC之前这一段时间称为容灾恢复时段。
在容灾恢复时段,目标用户通过原IDC访问网络时,原IDC允许目标用户写入数据,并且允许目标用户更新在第二时间点之后通过原IDC写入的数据。
具体的,在容灾恢复时段,目标用户通过原IDC访问网络。并且,在原IDC 中,目标用户可以执行特定类型的数据操作。
具体的,1、在目标用户通过原IDC访问网络时,原IDC允许目标用户写入数据,并且允许目标用户更新通过原IDC写入的数据;
2、控制所述原IDC禁止所述目标用户变更在第二时间点之前所述目标用户在所述灾备IDC生成的用户数据。
其中,更新数据操作包括但不限于下列操作:
修改数据、删除数据。
控制原IDC禁止目标用户变更在第二时间点之前目标用户在灾备IDC生成的用户数据包括:
禁止目标用户修改在第二时间点之前目标用户在灾备IDC生成的用户数据;禁止目标用户删除在第二时间点之前目标用户在灾备IDC生成的用户数据。
需要说明的是,本公开内容实施例在容灾恢复时段,目标用户通过原 IDC访问网络时,还允许目标用户读取数据。
由于目标用户通过原IDC访问网络时,只可以执行部分数据操作,因此,在目标用户在原IDC进行数据操作时,需要判断目标用户的数据操作类型,根据目标用户具体的数据操作类型,控制原IDC执行相应的禁止或允许操作。
本公开内容实施例在确定目标用户的数据操作类型时,采用SQL拦截的方式,通过实现标准的JDBC API,对SQL进行分析,向下调用真实的JDBC Driver操作数据库。通过SQL分析,能够确定目标用户当前执行的数据操作类型。
其中,数据操作类型包括但不限于:
写入、修改、删除、读取。
在采用SQL分析确定目标用户的数据操作类型为禁止的操作类型时,则通过SQL拦截的方式,对相关的SQL抛出异常,使整个事务回滚。
需要说明的是,上述给出的通过SQL拦截的方式确定目标用户的数据操作类型,以及采用SQL拦截的方式禁止目标用户执行某些操作,只是对本公开内容实施例确定目标用户的数据操作类型,以及禁止目标用户执行某些操作的方法的举例说明,任何能够确定目标用户的数据操作类型,以及禁止目标用户执行某些操作的方法均适用于本公开内容。
本公开内容实施例将所述灾备IDC中,所述第一时间点之后生成的所述目标用户的全部用户数据向所述原IDC进行同步时,通过原IDC和对应的灾备 IDC之间的数据同步程序执行。
本公开内容实施例在将归属于该IDC的用户在灾备IDC中生成的用户数据同步至故障恢复后的IDC时,采用基于binlog/redolog的数据同步机制,在数据同步过程中,通过获取数据库的执行过程LOG(日志),来实现数据同步。
本公开内容实施例在原IDC和对应的灾备IDC之间包括一个或多个数据同步程序,每一个数据同步数据执行的是特定类型的用户数据,并且在原IDC 不同时,对应的灾备IDC不同,此时原IDC和对应的灾备IDC之间的数据同步程序也不相同。
例如,IDC1为原IDC,IDC2为IDC1对应的灾备IDC,在IDC1和IDC2 之间包括三个数据同步程序,分别为:第一数据同步程序、第二数据同步程序和第三数据同步程序。其中,第一数据同步程序执行的是原IDC和灾备IDC 之间商品数据的同步;第二数据同步程序执行的是原IDC和灾备IDC之间用户评论数据的同步;第三数据同步程序执行的是原IDC和灾备IDC之间订单数据的同步。
又比如,IDC1为原IDC,IDC2为IDC1对应的灾备IDC,在IDC1和IDC2 之间包括三个数据同步程序,分别为:第一数据同步程序、第二数据同步程序和第三数据同步程序。在IDC3为原IDC,IDC4为灾备IDC时,在IDC3和IDC4 之间包括三个数据同步程序,分别为:第四数据同步程序、第五数据同步程序和第六数据同步程序。并且第一数据同步程序、第二数据同步程序、第三数据同步程序、第四数据同步程序、第五数据同步程序和第六数据同步程序互不相同。
本公开内容实施例中数据同步程序的位点为,当前时刻数据同步程序执行的数据对应的时间点,其中,数据对应的时间点为最后一次对该数据进行操作的时间点,并且对数据进行的操作包括但不限于下列操作:
新增数据、更新数据、删除数据和读取数据。
由于本公开内容实施例中通过数据同步程序,将目标用户对应的用户数据从灾备IDC同步至原IDC的过程中会存在一定的延迟。在确定数据同步程序的位点时,将当前时刻数据同步程序执行的数据对应的时间点作为数据同步程序的位点。例如,当前时刻为00:10:10,此时确定数据同步程序执行的数据对应的时间点为00:10:05,则确定该数据同步程序的位点为00:10:05。
具体的,如图5所示,本公开内容实施例判断灾备IDC中,在第一时间点之后生成的所述目标用户的的全部用户数据是否同步完成的方法,包括:
步骤501、获取灾备IDC和原IDC之间的所有数据同步程序的位点;
步骤502、判断所述所有数据同步程序的位点是否全部晚于所述第二时间点,若是,执行步骤503,若否,执行步骤501;
步骤503、确定所述灾备IDC中,在所述第一时间点之后生成的所述目标用户的所述全部用户数据同步完成。
其中,第二时间点为原IDC恢复的时间点。
具体的,在判断所述所有数据同步程序的位点是否全部晚于所述第二时间点时,可以采用下面的方法。
本公开内容实施例中原IDC和灾备IDC之间包括一个或多个数据同步程序,在判断所述灾备IDC中,在所述第一时间点之后生成的所述目标用户的全部用户数据是否同步完成时,需要获取原IDC和灾备IDC之间的所有数据同步程序的位点,并且从确定的所有数据同步程序的位点中选择最早的位点。
例如,原IDC和灾备IDC之间包括四个数据同步程序,分别为第一数据同步程序、第二数据同步程序、第三数据同步程序和第四数据同步程序。并且,获取到第一数据同步程序的位点为12:10:00;获取到第二数据同步程序的位点为12:10:05;获取到第三数据同步程序的位点为12:10:09;获取到第四数据同步程序的位点为12:09:56;则从获取到的四个数据同步程序的位点中,选择最早的位点,即第四数据同步程序的位点12:09:56。
本公开内容实施例在选择到原IDC和灾备IDC之间所有数据同步程序的位点中最早的位点后,通过比较所有数据同步程序的位点中最早的位点与第二时间点(原IDC恢复的时间点),判断灾备IDC中在第一时间点之后生成的所述目标用户的的全部用户数据是否同步至所述原IDC;若所有数据同步程序的位点中最早的位点晚于第二时间点,则确定灾备IDC中在第一时间点之后生成的所述目标用户的全部用户数据同步至原IDC;若所有数据同步程序的位点中最早的位点不晚于第二时间点,则确定灾备IDC中在第一时间点之后生成的所述目标用户的全部用户数据未同步至原IDC。
例如,在12:10:00原IDC恢复,即第二时间点为12:10:00。并且原IDC 和灾备IDC之间包括四个数据同步程序,分别为第一数据同步程序、第二数据同步程序、第三数据同步程序和第四数据同步程序。获取到第一数据同步程序的位点为12:10:00;获取到第二数据同步程序的位点为12:10:05;获取到第三数据同步程序的位点为12:10:03;获取到第四数据同步程序的位点为12:09:56。则从获取到的四个数据同步程序的位点中,选择最早的位点,即第四数据同步程序的位点12:09:56。通过比较四个数据同步程序的位点中最早的位点12:09:56,与第二时间点12:10:00,确定最早的位点12:09:56早于第二时间点 12:10:00,则确定灾备IDC中在第一时间点之后生成的所述目标用户的全部用户数据未同步至原IDC。
还比如,在12:10:00原IDC恢复,即第二时间点为12:10:00。并且原IDC 和灾备IDC之间包括四个数据同步程序,分别为第一数据同步程序、第二数据同步程序、第三数据同步程序和第四数据同步程序。获取到第一数据同步程序的位点为12:10:02;获取到第二数据同步程序的位点为12:10:05;获取到第三数据同步程序的位点为12:10:03;获取到第四数据同步程序的位点为12:10:06。则从获取到的四个数据同步程序的位点中,选择最早的位点,即第一数据同步程序的位点12:10:02。通过比较四个数据同步程序的位点中最早的位点 12:10:02,与第二时间点12:10:00,确定最早的位点12:10:02晚于第二时间点 12:10:00,则确定灾备IDC中在第一时间点之后生成的所述目标用户的全部用户数据同步至原IDC。
需要说明的是,在确定所有数据同步程序的位点中最早的位点等于原第二时间点时,确定灾备IDC中在第一时间点之后生成的所述目标用户的全部用户数据未同步至原IDC。
比如,在12:10:00原IDC恢复,即第二时间点为12:10:00。并且原IDC 和灾备IDC之间包括四个数据同步程序,分别为第一数据同步程序、第二数据同步程序、第三数据同步程序和第四数据同步程序。获取到第一数据同步程序的位点为12:10:00;获取到第二数据同步程序的位点为12:10:05;获取到第三数据同步程序的位点为12:10:03;获取到第四数据同步程序的位点为12:10:06。则从获取到的四个数据同步程序的位点中,选择最早的位点,即第一数据同步程序的位点12:10:00。通过比较四个数据同步程序的位点中最早的位点12:10:00,与第二时间点12:10:00,确定最早的位点12:10:00等于第二时间点 12:10:00,则确定灾备IDC中在第一时间点之后生成的所述目标用户的全部用户数据未同步至原IDC。
需要说明的是,本公开内容实施例在获取原IDC和灾备IDC之间的所有数据同步程序的位点时,是同时获取原IDC和灾备IDC之间的所有数据同步程序的位点。
本公开内容实施例在确定灾备IDC中在第一时间点之后生成的所述目标用户的全部用户数据未同步至原IDC之后,返回获取灾备IDC和原IDC之间的所有数据同步程序的位点的步骤,即在确定灾备IDC中在第一时间点之后生成的所述目标用户的全部用户数据同步至原IDC之前,需要不断获取原IDC 和灾备IDC之间的所有数据同步程序的位点,直到原IDC和灾备IDC之间的所有数据同步程序的位点中最早的位点晚于第二时间点为止,即直到确定灾备 IDC中在第一时间点之后生成的所述目标用户的全部用户数据同步至原IDC 为止。
本公开内容实施例在确定所述灾备IDC中,在所述第一时间点之后生成的所述目标用户的所述全部用户数据同步完成后,确定容灾恢复时段结束,原 IDC恢复正常工作,并控制原IDC允许用户执行所有的数据操作。
如图6所示,本公开内容实施例IDC故障时的处理方法共包括三个阶段,分别为:
第一阶段:容灾切换;第二阶段:容灾恢复;第三阶段:恢复完成。
下面针对这三个阶段分别进行说明。
一、容灾切换阶段。
本公开内容实施例在确定原IDC故障后,进入容灾切换阶段。在容灾切换阶段,将路由表中的原IDC的状态更改为故障;并将路由表返回灾备IDC,切换DNS,控制灾备IDC为目标用户提供网络服务;
此时,将原IDC的目标用户的流量转至灾备IDC;
灾备IDC确保目标用户的下单链路,并且控制灾备IDC禁止所述目标用户变更在第一时间点之前所述目标用户在原IDC生成的用户数据,并允许所述目标用户在所述灾备IDC中写入数据,以及对所述写入的数据进行更新操作。
二、容灾恢复阶段。
本公开内容实施例在确定原IDC故障恢复后,确定进入容灾恢复阶段。在容灾恢复阶段,将路由表中的原IDC的状态更改为正常;并将路由表返回原IDC,切换DNS,控制原IDC为目标用户提供网络服务。
在容灾恢复阶段,通过原IDC和灾备IDC之间的数据同步程序,将所述灾备IDC中,在所述第一时间点之后生成的所述目标用户的全部用户数据向所述原IDC进行同步。
此时,将灾备IDC中的目标用户的流量转至原IDC;
原IDC控制所述原IDC禁止所述目标用户变更在第二时间点之前所述目标用户在所述灾备IDC生成的用户数据,并允许所述目标用户在所述原IDC 中写入数据,以及对所述写入的数据进行更新操作。
采用位点检查的方法判断所述灾备IDC中,在所述第一时间点之后生成的所述目标用户的全部用户数据是否同步完成。若确定在所述第一时间点之后生成的所述目标用户的全部用户数据是否同步完成,则确定容灾恢复阶段结束,进入恢复完成阶段。
三、恢复完成阶段。
在确定恢复完成后,控制所述原IDC允许所述目标用户变更在第二时间点之前所述目标用户生成的用户数据,目标用户通过原IDC可以执行正常的数据操作。
如图7所示,本公开内容实施例IDC故障时的处理方法的整体流程图。
步骤701、在原IDC出现故障后,控制所述原IDC对应的灾备IDC为归属于所述原IDC的目标用户提供网络服务;
步骤702、控制所述灾备IDC禁止所述目标用户变更在第一时间点之前所述目标用户在所述原IDC生成的用户数据,并允许所述目标用户在所述灾备 IDC中写入数据,以及对所述写入的数据进行更新操作;
步骤703、在确定原IDC恢复后,控制所述原IDC为所述目标用户提供网络服务;
步骤704、控制所述原IDC禁止所述目标用户变更在第二时间点之前所述目标用户在所述灾备IDC生成的用户数据,并允许所述目标用户在所述原 IDC中写入数据,以及对所述写入的数据进行更新操作;
步骤705、将所述灾备IDC中,在所述第一时间点之后生成的所述目标用户的全部用户数据向所述原IDC进行同步;
步骤706、获取所述灾备IDC和所述原IDC之间的所有数据同步程序的位点;
步骤707、判断所述所有数据同步程序的位点是否全部晚于所述第二时间点,若是,执行步骤708,若否,执行步骤706;
步骤708、确定所述灾备IDC中,在所述第一时间点之后生成的所述目标用户的所述全部用户数据同步完成;
步骤709、控制所述原IDC允许所述目标用户变更在第二时间点之前所述目标用户在所述灾备IDC生成的用户数据。
基于同一发明构思,本公开内容实施例中还提供了一种数据中心故障时的处理设备,由于该设备解决问题的原理与本公开内容实施例数据中心故障时的处理方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。
如图8所示,本公开内容实施例提供的一种数据中心故障时的处理设备,包括:
处理模块801,用于在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务;
控制模块802,用于控制所述灾备数据中心禁止所述目标用户变更在第一时间点之前所述目标用户在所述原数据中心生成的用户数据,并允许所述目标用户在所述灾备数据中心中写入数据,以及对所述写入的数据进行更新操作;其中,所述第一时间点为所述原数据中心出现故障的时间点。
可选的,所述控制模块802,还用于:
在确定所述原数据中心恢复后,控制所述原数据中心为所述目标用户提供网络服务;控制所述原数据中心禁止所述目标用户变更在第二时间点之前所述目标用户在所述灾备数据中心生成的用户数据,并允许所述目标用户在所述原数据中心中写入数据,以及对所述写入的数据进行更新操作;其中,所述第二时间点为所述原数据中心恢复的时间点。
可选的,所述控制模块802,还用于:
将所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据向所述原数据中心进行同步。
可选的,所述控制模块802,还用于:
根据下列方式判断所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据是否同步完成:
获取所述灾备数据中心和所述原数据中心之间的所有数据同步程序的位点;判断所述所有数据同步程序的位点是否全部晚于所述第二时间点;如果是,则确定所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的所述全部用户数据同步完成;否则,返回获取所述灾备数据中心和所述原数据中心之间所有数据同步程序的位点的步骤。
可选的,所述控制模块802,还用于:
确定所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据同步完成后,控制所述原数据中心允许所述目标用户变更在第二时间点之前所述目标用户在所述灾备数据中心生成的用户数据。
以上参照示出根据本公开内容实施例的方法、装置(系统)和/或计算机程序产品的框图和/或流程图描述本公开内容。应理解,可以通过计算机程序指令来实现框图和/或流程图示图的一个块以及框图和/或流程图示图的块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机的处理器和/或其它可编程数据处理装置,以产生机器,使得经由计算机处理器和/或其它可编程数据处理装置执行的指令创建用于实现框图和/或流程图块中所指定的功能/动作的方法。
相应地,还可以用硬件和/或软件(包括固件、驻留软件、微码等)来实施本公开内容。更进一步地,本公开内容可以采取计算机可使用或计算机可读存储介质上的计算机程序产品的形式,其具有在介质中实现的计算机可使用或计算机可读程序代码,以由指令执行系统来使用或结合指令执行系统而使用。在本公开内容上下文中,计算机可使用或计算机可读介质可以是任意介质,其可以包含、存储、通信、传输、或传送程序,以由指令执行系统、装置或设备使用,或结合指令执行系统、装置或设备使用。
显然,本领域的技术人员可以对本公开内容进行各种改动和变型而不脱离本公开内容的精神和范围。这样,倘若本公开内容的这些修改和变型属于本公开内容权利要求及其等同技术的范围之内,则本公开内容也意图包含这些改动和变型在内。
Claims (10)
1.一种数据中心故障时的处理方法,其特征在于,该方法包括:
在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务;
控制所述灾备数据中心禁止所述目标用户变更在第一时间点之前所述目标用户在所述原数据中心生成的用户数据,并允许所述目标用户在所述灾备数据中心中写入数据,以及对所述写入的数据进行更新操作;
其中,所述第一时间点为所述原数据中心出现故障的时间点。
2.如权利要求1所述的方法,其特征在于,该方法还包括:
在确定所述原数据中心恢复后,控制所述原数据中心为所述目标用户提供网络服务;
控制所述原数据中心禁止所述目标用户变更在第二时间点之前所述目标用户在所述灾备数据中心生成的用户数据,并允许所述目标用户在所述原数据中心中写入数据,以及对所述写入的数据进行更新操作;
其中,所述第二时间点为所述原数据中心恢复的时间点。
3.如权利要求2所述的方法,其特征在于,所述在确定所述原数据中心恢复之后,还包括:
将所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据向所述原数据中心进行同步。
4.如权利要求3所述的方法,其特征在于,根据下列方式判断所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据是否同步完成:
获取所述灾备数据中心和所述原数据中心之间的所有数据同步程序的位点;
判断所述所有数据同步程序的位点是否全部晚于所述第二时间点;
如果是,则确定所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的所述全部用户数据同步完成;
否则,返回获取所述灾备数据中心和所述原数据中心之间所有数据同步程序的位点的步骤。
5.如权利要求3或4所述的方法,其特征在于,在将所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据向所述原数据中心进行同步的步骤之后,还包括:
确定所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据同步完成后,控制所述原数据中心允许所述目标用户变更在第二时间点之前所述目标用户在所述灾备数据中心生成的用户数据。
6.一种数据中心故障时的处理设备,其特征在于,包括:
处理模块,用于在原数据中心出现故障后,控制所述原数据中心对应的灾备数据中心为归属于所述原数据中心的目标用户提供网络服务;
控制模块,用于控制所述灾备数据中心禁止所述目标用户变更在第一时间点之前所述目标用户在所述原数据中心生成的用户数据,并允许所述目标用户在所述灾备数据中心中写入数据,以及对所述写入的数据进行更新操作;其中,所述第一时间点为所述原数据中心出现故障的时间点。
7.如权利要求6所述的设备,其特征在于,所述控制模块,还用于:
在确定所述原数据中心恢复后,控制所述原数据中心为所述目标用户提供网络服务;控制所述原数据中心禁止所述目标用户变更在第二时间点之前所述目标用户在所述灾备数据中心生成的用户数据,并允许所述目标用户在所述原数据中心中写入数据,以及对所述写入的数据进行更新操作;其中,所述第二时间点为所述原数据中心恢复的时间点。
8.如权利要求7所述的设备,其特征在于,所述控制模块,还用于:
将所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据向所述原数据中心进行同步。
9.如权利要求7所述的设备,其特征在于,所述控制模块,还用于:
根据下列方式判断所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据是否同步完成:
获取所述灾备数据中心和所述原数据中心之间的所有数据同步程序的位点;判断所述所有数据同步程序的位点是否全部晚于所述第二时间点;如果是,则确定所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的所述全部用户数据同步完成;否则,返回获取所述灾备数据中心和所述原数据中心之间所有数据同步程序的位点的步骤。
10.如权利要求8或9所述的设备,其特征在于,所述控制模块,还用于:
确定所述灾备数据中心中,在所述第一时间点之后生成的所述目标用户的全部用户数据同步完成后,控制所述原数据中心允许所述目标用户变更在第二时间点之前所述目标用户在所述灾备数据中心生成的用户数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610201678.5A CN107291575B (zh) | 2016-03-31 | 2016-03-31 | 一种数据中心故障时的处理方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610201678.5A CN107291575B (zh) | 2016-03-31 | 2016-03-31 | 一种数据中心故障时的处理方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107291575A CN107291575A (zh) | 2017-10-24 |
CN107291575B true CN107291575B (zh) | 2020-10-16 |
Family
ID=60087001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610201678.5A Active CN107291575B (zh) | 2016-03-31 | 2016-03-31 | 一种数据中心故障时的处理方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107291575B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109445680B (zh) * | 2018-08-20 | 2020-03-31 | 华为技术有限公司 | 一种对硬盘进行管理的方法及装置 |
CN113297134B (zh) * | 2020-06-29 | 2022-04-29 | 阿里巴巴集团控股有限公司 | 数据处理系统及数据处理方法、装置、电子设备 |
CN117171266A (zh) * | 2023-08-28 | 2023-12-05 | 北京逐风科技有限公司 | 一种数据同步方法、装置、设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1831782A (zh) * | 2006-03-10 | 2006-09-13 | 四川大学 | 网络信息系统异地数据镜像方法 |
CN101189852A (zh) * | 2004-08-17 | 2008-05-28 | 肖分析有限公司 | 用于上游故障检测和故障恢复的技术 |
US7925917B1 (en) * | 2008-04-03 | 2011-04-12 | United Services Automobile Association (Usaa) | Systems and methods for enabling failover support with multiple backup data storage structures |
CN103473112A (zh) * | 2013-09-03 | 2013-12-25 | 北京邮电大学 | 一种基于两地三中心的灾备信息系统仿真方法 |
CN104516795A (zh) * | 2015-01-15 | 2015-04-15 | 浪潮(北京)电子信息产业有限公司 | 一种数据存取方法及系统 |
CN105389213A (zh) * | 2015-10-26 | 2016-03-09 | 珠海格力电器股份有限公司 | 一种数据中心系统及其配置方法 |
-
2016
- 2016-03-31 CN CN201610201678.5A patent/CN107291575B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101189852A (zh) * | 2004-08-17 | 2008-05-28 | 肖分析有限公司 | 用于上游故障检测和故障恢复的技术 |
CN1831782A (zh) * | 2006-03-10 | 2006-09-13 | 四川大学 | 网络信息系统异地数据镜像方法 |
US7925917B1 (en) * | 2008-04-03 | 2011-04-12 | United Services Automobile Association (Usaa) | Systems and methods for enabling failover support with multiple backup data storage structures |
CN103473112A (zh) * | 2013-09-03 | 2013-12-25 | 北京邮电大学 | 一种基于两地三中心的灾备信息系统仿真方法 |
CN104516795A (zh) * | 2015-01-15 | 2015-04-15 | 浪潮(北京)电子信息产业有限公司 | 一种数据存取方法及系统 |
CN105389213A (zh) * | 2015-10-26 | 2016-03-09 | 珠海格力电器股份有限公司 | 一种数据中心系统及其配置方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107291575A (zh) | 2017-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109901949B (zh) | 双活数据中心的应用灾备系统及方法 | |
CA3028504C (en) | Data processing method and device | |
US9251233B2 (en) | Merging an out of synchronization indicator and a change recording indicator in response to a failure in consistency group formation | |
CN106933843B (zh) | 数据库心跳检测方法以及装置 | |
CN111177165B (zh) | 数据一致性检测的方法、装置及设备 | |
CN109308227B (zh) | 故障检测控制方法及相关设备 | |
CN109714239B (zh) | 一种管理消息的下发方法、vnfm设备和服务器 | |
CN101763321B (zh) | 数据容灾的方法、装置及系统 | |
CN107168970A (zh) | 一种分布式文件系统hdfs的管理方法、装置及系统 | |
CN105262633A (zh) | 一种应用级容灾方法及应用级容灾系统 | |
CN107291575B (zh) | 一种数据中心故障时的处理方法和设备 | |
CN107038192B (zh) | 数据库容灾方法和装置 | |
CN107992491A (zh) | 一种分布式文件系统、数据访问和数据存储的方法及装置 | |
CN111342986B (zh) | 分布式节点管理方法及装置、分布式系统、存储介质 | |
CN113986450A (zh) | 一种虚拟机备份方法及装置 | |
CN111404737B (zh) | 一种容灾处理方法以及相关装置 | |
EP4060514A1 (en) | Distributed database system and data disaster backup drilling method | |
WO2015196692A1 (zh) | 一种云计算系统以及云计算系统的处理方法和装置 | |
CN115794769B (zh) | 高可用数据库管理的方法、电子设备及存储介质 | |
CN110471906B (zh) | 数据库切换方法、装置及设备 | |
CN116389233A (zh) | 容器云管理平台主备切换系统、方法、装置和计算机设备 | |
CN116233245A (zh) | 异地多活系统及其信息处理方法、配置服务器 | |
CN114328033A (zh) | 保持高可用设备组业务配置一致性的方法及装置 | |
CN107104810A (zh) | 一种基于ha双机热备技术 | |
CN110297822A (zh) | 面向区块链的密钥管理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240311 Address after: # 04-08, Lai Zanda Building 1, 51 Belarusian Road, Singapore Patentee after: Alibaba Singapore Holdings Ltd. Country or region after: Singapore Address before: Cayman Islands Grand Cayman capital building, a four storey No. 847 mailbox Patentee before: ALIBABA GROUP HOLDING Ltd. Country or region before: Cayman Islands |