CN109918360A - 数据库平台系统、创建方法、管理方法、设备及存储介质 - Google Patents
数据库平台系统、创建方法、管理方法、设备及存储介质 Download PDFInfo
- Publication number
- CN109918360A CN109918360A CN201910148690.8A CN201910148690A CN109918360A CN 109918360 A CN109918360 A CN 109918360A CN 201910148690 A CN201910148690 A CN 201910148690A CN 109918360 A CN109918360 A CN 109918360A
- Authority
- CN
- China
- Prior art keywords
- container
- slave
- backup
- configuration information
- database platform
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000007726 management method Methods 0.000 title claims abstract description 14
- 230000002159 abnormal effect Effects 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims description 11
- 238000012544 monitoring process Methods 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims 1
- 230000005856 abnormality Effects 0.000 abstract 1
- 239000003795 chemical substances by application Substances 0.000 description 26
- 238000010586 diagram Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000005111 flow chemistry technique Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据库平台系统、创建方法、管理方法、设备及存储介质,该系统包括容器和配置模块,所述容器包括至少一个代理容器、至少一个主容器、至少一个从容器、至少一个备份容器和配置模块,如果所述代理容器检测到所述主容器处于异常状态时,则将所述从容器改为新的主容器,将所述备份容器设置为新的从容器,并修改所述配置模块的配置信息;如果所述代理容器检测到所述主容器和所述从容器同时处于异常状态,则将所述备份容器设置为新的主容器,并修改所述配置模块的配置信息。本发明采用容器化的方式实现了数据库集群的快速标准化部署,同时结合数据库平台调度策略将数据库集群节点合理分散部署,提升数据库集群的可用性和容灾性。
Description
技术领域
本发明涉及云计算机领域,具体地说,涉及一种数据库平台系统、创建方法、管理方法、设备及存储介质。
背景技术
随着云计算的发展,数据库平台成为业界新标准,为用户提供了更加快速灵活的资源使用方式,提升了资源交付速度和弹性。数据库集群不同于普通互联网应用,对其服务有着高可用性和高稳定性的要求。
单个数据库容器化部署在数据库平台是无法做到高可用的,因为数据库服务的本质就是对其所在宿主机磁盘上数据的读写操作,作为一个典型的有状态服务,当宿主机发送故障时,无法在宿主机之间有效地漂移,也就无从谈起数据库服务的高可用。在没有高性能和高可靠的后端分布式存储服务的情况下,即无法做计算和存储分离的情况下,单个数据库容器是无法像普通无状态应用一样在不同的宿主机之间漂移,这导致单个宿主机故障将直接影响数据库服务,容灾性差。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
针对现有技术中的问题,本发明的目的在于提供了一种数据库平台上快速部署关系型数据库的数据库平台系统、创建方法、管理方法、设备及存储介质,将数据库集群的各个组件容器化,在仅使用宿主机本地存储的情况下,可实现快速标准化部署数据库集群出来,还可保证数据库集群的高可用性和容灾性。
本发明的实施例提供了一种数据库平台系统,包括容器和配置模块,所述容器包括至少一个代理容器、至少一个主容器、至少一个从容器和至少一个备份容器,其中:
所述配置模块用于存储各个所述容器的配置信息,所述配置信息包括各个所述容器的标识信息、IP地址、角色和状态,所述角色包括代理容器角色、主容器角色、从容器角色和备份容器角色;
所述代理容器用于接收数据处理任务请求并将请求的任务发送至所述主容器;
所述主容器用于执行所述代理容器发送的所述任务;
所述从容器为数据库的从节点,用于复制所述主容器的数据;
所述备份容器用于同步复制所述从容器的数据;
所述代理容器还用于监测所述主容器、所述从容器和所述备份容器的状态;
如果所述代理容器检测到所述主容器处于异常状态时,则将所述从容器改为新的主容器,将所述备份容器设置为新的从容器,并修改所述配置模块的配置信息;
如果所述代理容器检测到所述主容器和所述从容器同时处于异常状态,则将所述备份容器设置为新的主容器,并修改所述配置模块的配置信息。
优选地,所述代理容器、所述主容器、所述从容器和所述备份容器分别部署于不同的宿主机上。
优选地,所述代理容器通过发送心跳请求至所述主容器、所述从容器和所述备份容器,并接收所述主容器、所述从容器和所述备份容器的心跳回复实现监测各个所述容器的状态。
优选地,所述从容器实时读取所述主容器上的复制进程日志并根据所述日志复制所述主容器的数据。
优选地,所述任务包括只读任务、写任务或读/写任务中的至少一种;
所述代理容器还用于将接收到的所述只读任务发送至所述从主容器,所述从容器还用于执行所述只读任务。
优选地,所述备份容器还用于定期执行备份操作并将备份数据打包上传至远端备份存储。
本发明的实施例还提供了一种数据库平台创建方法,用于创建上述数据库平台系统,所述数据库平台创建方法包括以下步骤:
接收创建数据库集群的请求;
定义数据库集群中的各个容器的配置信息,将所述配置写入配置信息文件,所述配置信息包括各个所述容器的名字、IP地址、角色和状态,所述容器的角色包括代理容器、主容器、从容器和备份容器;
创建各个所述容器,将不同角色的所述容器分别部署于不同的宿主机;
启动并初始化各个所述容器。
优选地,所述启动并初始化各个所述容器步骤包括:
各个所述容器从所述配置信息文件读取对应的配置信息并确认自身角色;
其中,
所述代理容器发送心跳请求至所述主容器、所述从容器和所述备份容器;
所述从容器与所述主容器建立复制关系;
所述备份容器与所述从容器建立复制关系;
所述代理容器接收到所述主容器、所述从容器和所述备份容器的心跳回复后,更新所述配置信息文件,将所述数据库平台设置为准备完毕状态。
本发明的实施例还提供了一种数据库平台管理方法,采用上述数据库平台系统,包括以下步骤:
所述代理容器监测所述主容器、所述从容器和所述备份容器的状态;
如果检测到所述主容器处于异常状态,则
将所述主容器设置为错误状态,将所述从容器改为新的主容器,并修改所述配置信息文件;
如果检测到所述主容器和所述从容器同时处于异常状态,则
则将所述备份容器设置为新的主容器,并修改所述配置信息文件。
本发明的实施例还提供了一种数据库平台设备,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行所述数据库平台管理方法的步骤。
本发明的实施例还提供了一种计算机可读存储介质,用于存储程序,所述程序被执行时实现所述数据库平台管理方法的步骤。
本发明的在数据库平台上,有效利用已有资源,在没有高可用的分布式存储服务的情况下,实现了一种快速部署标准化数据库集群的方法,部署的数据库集群可以做到部分宿主机故障或者部分容器节点故障的情况下的服务可用,并且在故障宿主机恢复过来之后,数据库集群能够自动恢复高可用性;除此之外,本发明的方法还提供了数据库集群的一写多读能力,有效提升了数据库集群的可扩展性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例的数据库平台系统的结构示意图;
图2为本发明一实施例的数据库平台创建方法的流程图;
图3为本发明一实施例的数据库平台管理方法的流程图;
图4为本发明一实施例的数据库平台设备的结构示意图;
图5为本发明一实施例的计算机可读存储介质的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图1为本发明一实施例的数据库平台系统的结构示意图,具体地,该数据库平台系统包括容器和配置模块M100,所述容器包括至少一个代理容器(proxy)M200、至少一个主容器(master)M300、至少一个从容器(slave)M400、和至少一个备份容器(backup)M500,其中:
所述配置模块M100用于存储各个所述容器的配置信息,所述配置信息包括各个所述容器的标识信息、IP地址、角色和状态;所述角色包括代理容器角色、主容器角色、从容器角色和备份容器角色。
所述代理容器M200用于接收数据处理任务请求并将请求的任务发送至所述主容器M300;所述任务可以是只读任务,也可以写任务或读/写任务中的至少一种;所述代理容器M200同时根据容器角色的不同,将不同任务请求发送给不同的容器。
所述主容器M300用于执行所述代理容器M200发送的所述任务;
所述从容器M400为数据库的从节点,用于复制主容器M300的数据;实际的操作中,从容器M400通过实时读取所述主容器M300上的复制进程日志,以确定数据复制的进程,并根据所述日志复制所述主容器的数据。
从容器M400的主要功能是复制主容器M300节点的数据,复制主容器M300的数据可以是同步,也可以是半同步的。同时,主容器M300也可以处理代理容器M200发送的只读任务请求,从而分担数据库集群的压力。
所述备份容器M500用于同步复制从容器M400的数据;备份容器M500和从容器M400保持同步复制关系的同时,备份容器M500还用于定期执行备份操作并将备份数据打包上传至远端备份存储,此功能进一步保证了数据库数据的安全性。
需要说明的是,所述代理容器M200、所述主容器M300、所述从容器M400和所述备份容器M500分别部署于不同的宿主机上。
所述代理容器M200还用于监测所述主容器、所述从容器和所述备份容器的状态。代理容器M200是一个典型的无状态服务容器,所述代理容器M200可以通过发送心跳请求至所述主容器M300、所述从容器M400和所述备份容器M500,并接收所述主容器M300、所述从容器M400和所述备份容器M500的心跳回复实现实时获取整个集群的状态。
如果所述代理容器M200检测到所述主容器处于异常状态时,则将所述从容器改为新的主容器,将所述备份容器设置为新的从容器,并修改所述配置模块M100的配置信息。
如果所述代理容器M200检测到所述主容器和所述从容器同时处于异常状态,则将所述备份容器设置为新的主容器,并修改所述配置模块M100的配置信息。
由于本发明中的代理容器M200、主容器M300、从容器M400和备份容器M500分别部署于不同的宿主机上。因此,当部分宿主机或者部分容器节点,尤其是代理容器M200发生故障时,数据库集群会自动将服务转移,即将没有故障的宿主机或容器代替,保证数据库集群仍可以提供正常服务,极大程度的提供了数据库集群的容灾性。
图2为本发明一实施例的数据库平台创建方法的流程图,该方法用于部署上述数据库平台系统。具体地,该方法包括以下步骤:
S110、接收创建数据库集群的请求;
S120、定义数据库集群中的各个容器的配置信息,将所述配置写入配置信息文件,所述配置信息包括各个所述容器的名字、IP地址、角色和状态,例如,在分布式配置信息文件中写入数据库集群的配置信息文:
{clusterName:"testdb01","clusterstatus":"init","members":
[
{"name":"ctn01","ipaddr":""10.10.10.1","role":"proxy","status":"init"},
{"name":"ctn02","ipaddr":""10.10.10.2","role":"master","status":"init"},
{"name":"ctn03","ipaddr":""10.10.10.3","role":"slave","status":"init"},
{"name":"ctn04","ipaddr":""10.10.10.4","role":"backup",status":"init"},
]
}
容器的IP地址可通过容器网络模块申请,此处生成的是数据库容器集群的模板,容器的角色包括代理容器、主容器、从容器和备份容器;
S130、创建各个所述容器,实际中,容器调度器根据所有宿主机的资源负载情况将不同角色的所述容器分别部署于不同的宿主机;
最后,S140、启动并初始化各个所述容器。
步骤S140启动并初始化各个所述容器步骤包括:
S141、启动各个容器;
S142、各个所述容器从所述配置信息文件读取对应的配置信息并确认自身角色;具体地容器初始化过程为:
首先各个容器从配置信息文件中读取角色和IP地址信息,譬如
容器01读取配置信息文件中的配置信息,确认自身为代理容器,并发送心跳请求至所述主容器、所述从容器和所述备份容器;
容器02读取配置信息文件中的配置信息,确认自身为主容器,初始化数据库;
容器03读取配置信息文件中的配置信息,确认自身为从容器,主动和主容器建立复制关系,开始数据同步服务;
容器04读取配置信息文件中的配置信息,确认自身为备份容器,主动和从容器建立复制关系,开始数据同步服务;
初始化完成后,执行S143步骤:代理容器节点如果收到主容器、从容器和备份容器节点的心跳回复,即确定主容器、从容器和备份容器准备完毕后,更新配置信息文件的配置信息,将数据库集群状态置为准备完毕状态,此时,整个数据库集群可以对外提供服务,代理容器可以发送任务请求至主容器节点。
图3为本发明一实施例的数据库平台管理方法的流程图,该方法采用上述数据库平台系统,具体包括以下步骤:
S200、所述代理容器监测所述主容器、所述从容器和所述备份容器的状态;
S210、如果只检测到所述主容器处于异常状态,则
执行S230步骤:将所述主容器设置为错误状态,将所述从容器改为新的主容器,并修改所述配置信息文件;
S220、如果检测到所述主容器和所述从容器同时处于异常状态,则
执行S240步骤:将所述备份容器设置为新的主容器,并修改所述配置信息文件。
上述流程可描述为:
假设主容器节点所在宿主机故障,即数据库集群的主容器节点不可用时,代理容器检测不到主容器的心跳回复,会将主容器节点设置为错误状态状态,就启动服务转移流程,代理容器修改配置信息文件,将原来的从容器角色改为主容器角色,原来的从容器停止原来复制代理容器的操作;同时,原来主容器角色会改为新的从容器,完成容器角色调整后,代理容器将任务请求发送新的主容器节点,保证数据库集群仍然正常对外提供数据库服务。假设主容器和从容器同时故障,则原来的备份容器角色改为主容器角色,其他相应操作同上,在此不再赘述。
当故障情况恢复时,故障主容器节点会以从容器角色重新回到数据库集群中,具体流程是:故障容器节点所在宿主机恢复后,宿主上原来的主容器节点重新启动,这时,会从配置信息文件中读取自身的新角色,即作为从容器节点,并自动搭建和新的主容器节点的复制关系,并将数据恢复到和新的主容器节点一致,然后作为从容器在数据库集群中提供服务,并同时,备份容器节点也会将复制关系改到新的从容器上。
对于备份容器来说,主要提供数据备份服务,也是主容器和从容器同时发生故障时最后的数据库服务保障。备份容器会从配置信息文件中读取数据备份任务配置,定期或定时将从从容器同步到的数据做打包并上传远端的备份数据存储中,虽然打包上传操作是高CPU负载任务,但因为备份容器和主容器以及从容器不在同一个宿主机上,所以该操作不会影响到数据库集群对外提供的服务。当整个集群发生不可逆转的毁灭性故障时,还可以使用备份数据为整个数据库集群做数据恢复。
下面参照图4来描述根据本发明的这种实施方式的电子设备600。图4显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,存储单元存储有程序代码,程序代码可以被处理单元610执行,使得处理单元610执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元610可以执行如图3中所示的步骤。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。
本发明实施例还提供一种计算机可读存储介质,用于存储程序,程序被执行实现分拣数据库平台管理方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。
参考图5所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,本发明提供了数据库平台系统、创建方法、管理方法、设备及存储介质,该系统包括容器和配置模块,所述容器包括至少一个代理容器、至少一个主容器、至少一个从容器和至少一个备份容器,其中:所述配置模块用于存储各个所述容器的配置信息,所述配置信息包括各个所述容器的标识信息、IP地址、角色和状态,所述角色包括代理容器角色、主容器角色、从容器角色和备份容器角色;所述代理容器用于接收数据处理任务请求并将请求的任务发送至所述主容器;所述主容器用于执行所述代理容器发送的所述任务;所述从容器为数据库的从节点,用于复制所述主容器的数据;所述备份容器用于同步复制所述从容器的数据;所述代理容器还用于监测所述主容器、所述从容器和所述备份容器的状态;如果所述代理容器检测到所述主容器处于异常状态时,则将所述从容器改为新的主容器,将所述备份容器设置为新的从容器,并修改所述配置模块的配置信息;如果所述代理容器检测到所述主容器和所述从容器同时处于异常状态,则将所述备份容器设置为新的主容器,并修改所述配置模块的配置信息。本发明的在数据库平台上,有效利用已有资源,在没有高可用的分布式存储服务的情况下,实现了一种快速部署标准化数据库集群的方法,部署的数据库集群可以做到部分宿主机故障或者部分容器节点故障的情况下的服务可用,并且在故障宿主机恢复过来之后,数据库集群能够自动恢复高可用性;除此之外,本发明的方法还提供了数据库集群的一写多读能力,有效提升了数据库集群的可扩展性。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (11)
1.一种数据库平台系统,其特征在于,包括容器和配置模块,所述容器包括至少一个代理容器、至少一个主容器、至少一个从容器和至少一个备份容器,其中:
所述配置模块用于存储各个所述容器的配置信息,所述配置信息包括各个所述容器的标识信息、IP地址、角色和状态,所述角色包括代理容器角色、主容器角色、从容器角色和备份容器角色;
所述代理容器用于接收数据处理任务请求并将请求的任务发送至所述主容器;
所述主容器用于执行所述代理容器发送的所述任务;
所述从容器为数据库的从节点,用于复制所述主容器的数据;
所述备份容器用于同步复制所述从容器的数据;
所述代理容器还用于监测所述主容器、所述从容器和所述备份容器的状态;
如果所述代理容器检测到所述主容器处于异常状态时,则将所述从容器改为新的主容器,将所述备份容器设置为新的从容器,并修改所述配置模块的配置信息;
如果所述代理容器检测到所述主容器和所述从容器同时处于异常状态,则将所述备份容器设置为新的主容器,并修改所述配置模块的配置信息。
2.根据权利要求1所述的数据库平台系统,其特征在于,所述代理容器、所述主容器、所述从容器和所述备份容器分别部署于不同的宿主机上。
3.根据权利要求1所述的数据库平台系统,其特征在于,所述代理容器通过发送心跳请求至所述主容器、所述从容器和所述备份容器,并接收所述主容器、所述从容器和所述备份容器的心跳回复实现监测各个所述容器的状态。
4.根据权利要求1所述的数据库平台系统,其特征在于,所述从容器实时读取所述主容器上的复制进程日志并根据所述日志复制所述主容器的数据。
5.根据权利要求1所述的数据库平台系统,其特征在于,所述任务包括只读任务、写任务或读/写任务中的至少一种;
所述代理容器还用于将接收到的所述只读任务发送至所述从容器,所述从容器还用于执行所述只读任务。
6.根据权利要求1所述的数据库平台系统,其特征在于,所述备份容器还用于定期执行备份操作并将备份数据打包上传至远端备份存储。
7.一种数据库平台创建方法,用于创建如权利要求1至6中任意一项所述数据库平台系统,其特征在于,所述数据库平台创建方法包括以下步骤:
接收创建数据库集群的请求;
定义数据库集群中的各个容器的配置信息,将所述配置写入配置信息文件,所述配置信息包括各个所述容器的名字、IP地址、角色和状态,所述容器的角色包括代理容器、主容器、从容器和备份容器;
创建各个所述容器,将不同角色的所述容器分别部署于不同的宿主机;
启动并初始化各个所述容器。
8.根据权利要求7所述的数据库平台创建方法,其特征在于,所述启动并初始化各个所述容器步骤包括:
各个所述容器从所述配置信息文件读取对应的配置信息并确认自身角色;
其中,
所述代理容器发送心跳请求至所述主容器、所述从容器和所述备份容器;
所述从容器与所述主容器建立复制关系;
所述备份容器与所述从容器建立复制关系;
所述代理容器接收到所述主容器、所述从容器和所述备份容器的心跳回复后,更新所述配置信息文件,将所述数据库平台设置为准备完毕状态。
9.一种数据库平台管理方法,采用如权利要求1至6中任意一项所述数据库平台系统,其特征在于,包括以下步骤:
所述代理容器监测所述主容器、所述从容器和所述备份容器的状态;
如果检测到所述主容器处于异常状态,则
将所述主容器设置为错误状态,将所述从容器改为新的主容器,并修改所述配置信息文件;
如果检测到所述主容器和所述从容器同时处于异常状态,则
则将所述备份容器设置为新的主容器,并修改所述配置信息文件。
10.一种数据库平台设备,其特征在于,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求9所述数据库平台管理方法的步骤。
11.一种计算机可读存储介质,用于存储程序,其特征在于,所述程序被执行时实现权利要求9所述数据库平台管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910148690.8A CN109918360A (zh) | 2019-02-28 | 2019-02-28 | 数据库平台系统、创建方法、管理方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910148690.8A CN109918360A (zh) | 2019-02-28 | 2019-02-28 | 数据库平台系统、创建方法、管理方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109918360A true CN109918360A (zh) | 2019-06-21 |
Family
ID=66962525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910148690.8A Pending CN109918360A (zh) | 2019-02-28 | 2019-02-28 | 数据库平台系统、创建方法、管理方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109918360A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110830289A (zh) * | 2019-10-21 | 2020-02-21 | 华中科技大学 | 一种容器异常监测方法及监测系统 |
CN111064608A (zh) * | 2019-12-11 | 2020-04-24 | 北京奇艺世纪科技有限公司 | 消息系统的主从切换方法、装置、电子设备及存储介质 |
CN111177241A (zh) * | 2019-12-18 | 2020-05-19 | 贝壳技术有限公司 | 一种数据处理方法、装置、系统、电子设备及其存储介质 |
CN111782441A (zh) * | 2020-07-03 | 2020-10-16 | 中国工商银行股份有限公司 | 分布式数据库的管理方法、装置、电子设备和介质 |
CN112241293A (zh) * | 2019-07-19 | 2021-01-19 | 北京东土科技股份有限公司 | 工业互联网云平台的应用管理方法、装置、设备及介质 |
CN112486630A (zh) * | 2020-11-30 | 2021-03-12 | 之江实验室 | 分布式训练部署系统及其方法 |
CN114138754A (zh) * | 2021-12-09 | 2022-03-04 | 安超云软件有限公司 | 基于Kubernetes平台的软件部署方法及装置 |
CN114285744A (zh) * | 2020-09-17 | 2022-04-05 | 北京金山云网络技术有限公司 | 配置信息的更新方法、装置、服务器及存储介质 |
CN114866790A (zh) * | 2022-03-25 | 2022-08-05 | 上海哔哩哔哩科技有限公司 | 直播流调度方法及装置 |
CN115714713A (zh) * | 2022-10-25 | 2023-02-24 | 南方电网数字电网研究院有限公司 | 电力监控系统多群组服务实例切换方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880531A (zh) * | 2012-09-27 | 2013-01-16 | 新浪网技术(中国)有限公司 | 数据库备份系统及其备份方法和从数据库服务器 |
CN106815097A (zh) * | 2017-01-18 | 2017-06-09 | 北京许继电气有限公司 | 数据库容灾系统和方法 |
CN106970861A (zh) * | 2017-03-30 | 2017-07-21 | 山东超越数控电子有限公司 | 一种虚拟机容错方法和系统 |
CN107276839A (zh) * | 2017-08-24 | 2017-10-20 | 郑州云海信息技术有限公司 | 一种云平台的自监控方法和系统 |
WO2018019023A1 (zh) * | 2016-07-27 | 2018-02-01 | 腾讯科技(深圳)有限公司 | 一种数据容灾方法、装置和系统 |
-
2019
- 2019-02-28 CN CN201910148690.8A patent/CN109918360A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880531A (zh) * | 2012-09-27 | 2013-01-16 | 新浪网技术(中国)有限公司 | 数据库备份系统及其备份方法和从数据库服务器 |
WO2018019023A1 (zh) * | 2016-07-27 | 2018-02-01 | 腾讯科技(深圳)有限公司 | 一种数据容灾方法、装置和系统 |
CN106815097A (zh) * | 2017-01-18 | 2017-06-09 | 北京许继电气有限公司 | 数据库容灾系统和方法 |
CN106970861A (zh) * | 2017-03-30 | 2017-07-21 | 山东超越数控电子有限公司 | 一种虚拟机容错方法和系统 |
CN107276839A (zh) * | 2017-08-24 | 2017-10-20 | 郑州云海信息技术有限公司 | 一种云平台的自监控方法和系统 |
Non-Patent Citations (5)
Title |
---|
DEVOPS技术栈: "Docker下redis的主从、持久化配置", 《微信公众平台》 * |
YHY686686D: "Windows群集体系结构", 《豆丁网》 * |
化澄风: "MySQL之主从复制、级联复制、主主复制、半同步复制和加密复制", 《51CTO博客》 * |
数据分析与开发: "MySQL主从复制的常用拓扑结构", 《微信公众号》 * |
数据分析与开发: "MySQL主从复制的常用拓扑结构", 《微信公众平台》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112241293A (zh) * | 2019-07-19 | 2021-01-19 | 北京东土科技股份有限公司 | 工业互联网云平台的应用管理方法、装置、设备及介质 |
CN110830289A (zh) * | 2019-10-21 | 2020-02-21 | 华中科技大学 | 一种容器异常监测方法及监测系统 |
CN111064608A (zh) * | 2019-12-11 | 2020-04-24 | 北京奇艺世纪科技有限公司 | 消息系统的主从切换方法、装置、电子设备及存储介质 |
CN111177241A (zh) * | 2019-12-18 | 2020-05-19 | 贝壳技术有限公司 | 一种数据处理方法、装置、系统、电子设备及其存储介质 |
CN111782441A (zh) * | 2020-07-03 | 2020-10-16 | 中国工商银行股份有限公司 | 分布式数据库的管理方法、装置、电子设备和介质 |
CN114285744A (zh) * | 2020-09-17 | 2022-04-05 | 北京金山云网络技术有限公司 | 配置信息的更新方法、装置、服务器及存储介质 |
CN112486630A (zh) * | 2020-11-30 | 2021-03-12 | 之江实验室 | 分布式训练部署系统及其方法 |
CN114138754A (zh) * | 2021-12-09 | 2022-03-04 | 安超云软件有限公司 | 基于Kubernetes平台的软件部署方法及装置 |
CN114138754B (zh) * | 2021-12-09 | 2024-10-11 | 安超云软件有限公司 | 基于Kubernetes平台的软件部署方法及装置 |
CN114866790A (zh) * | 2022-03-25 | 2022-08-05 | 上海哔哩哔哩科技有限公司 | 直播流调度方法及装置 |
CN114866790B (zh) * | 2022-03-25 | 2024-02-27 | 上海哔哩哔哩科技有限公司 | 直播流调度方法及装置 |
CN115714713A (zh) * | 2022-10-25 | 2023-02-24 | 南方电网数字电网研究院有限公司 | 电力监控系统多群组服务实例切换方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109918360A (zh) | 数据库平台系统、创建方法、管理方法、设备及存储介质 | |
US8676762B2 (en) | Efficient backup and restore of a cluster aware virtual input/output server (VIOS) within a VIOS cluster | |
US8392378B2 (en) | Efficient backup and restore of virtual input/output server (VIOS) cluster | |
US8533164B2 (en) | Method and tool to overcome VIOS configuration validation and restoration failure due to DRC name mismatch | |
US8326800B2 (en) | Seamless upgrades in a distributed database system | |
US8688642B2 (en) | Systems and methods for managing application availability | |
US20200073655A1 (en) | Non-disruptive software update system based on container cluster | |
US9886260B2 (en) | Managing software version upgrades in a multiple computer system environment | |
US20160203054A1 (en) | Disk group based backup | |
US11709743B2 (en) | Methods and systems for a non-disruptive automatic unplanned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system | |
CN108270726B (zh) | 应用实例部署方法及装置 | |
US8726274B2 (en) | Registration and initialization of cluster-aware virtual input/output server nodes | |
CN111314125A (zh) | 用于容错通信的系统和方法 | |
US20120030513A1 (en) | Mechanism to Provide Assured Recovery for Distributed Application | |
CN114138754B (zh) | 基于Kubernetes平台的软件部署方法及装置 | |
US7870248B2 (en) | Exploiting service heartbeats to monitor file share | |
CN113315754A (zh) | 容器出访防火墙智能联动方法及装置、设备、介质 | |
US9195528B1 (en) | Systems and methods for managing failover clusters | |
CN110989923A (zh) | 一种分布式存储系统的部署方法及装置 | |
Bakhshi et al. | Fault-tolerant permanent storage for container-based fog architectures | |
EP4250119A1 (en) | Data placement and recovery in the event of partition failures | |
US20150213104A1 (en) | Synchronous data replication in a content management system | |
CN111488247A (zh) | 一种管控节点多次容错的高可用方法及设备 | |
CN118092982B (zh) | 一种云原生应用的多集群运维方法、设备及介质 | |
CN115510167B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190621 |
|
RJ01 | Rejection of invention patent application after publication |