CN114584458A - 一种基于etcd的集群容灾管理方法、***、设备及存储介质 - Google Patents
一种基于etcd的集群容灾管理方法、***、设备及存储介质 Download PDFInfo
- Publication number
- CN114584458A CN114584458A CN202210209647.XA CN202210209647A CN114584458A CN 114584458 A CN114584458 A CN 114584458A CN 202210209647 A CN202210209647 A CN 202210209647A CN 114584458 A CN114584458 A CN 114584458A
- Authority
- CN
- China
- Prior art keywords
- cluster
- storage system
- standby
- etcd
- switching
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/22—Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A10/00—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE at coastal zones; at river basins
- Y02A10/40—Controlling or monitoring, e.g. of flood or hurricane; Forecasting, e.g. risk assessment or mapping
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及云存储领域,公开了一种基于ETCD的集群容灾管理方法、***、设备及存储介质。所述方法包括:为主存储***建立备用存储***,并在所述备用存储***中为备用ETCD集群设置用于容灾切换的key值标记;监测所述主存储***的状态,当监测到主存储***处于不可用状态时,连接备用存储***中的备用ETCD集群,并获取所述备用ETCD集群的key值;根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***。本发明实施例基于ETCD进行容灾切换,可以实现***级的容灾。
Description
技术领域
本发明涉及云存储技术领域,特别是涉及一种基于ETCD的集群容灾管理方法、***、设备及存储介质。
背景技术
容灾***是指在相隔较远的异地,建立两套或多套功能相同的IT***,互相之间可以进行健康状态监视和功能切换,当一处***因意外(如火灾、地震等)停止工作时,整个应用***可以切换到另一处,使得***功能可以继续正常工作。
目前,在部分云架构中,云存储资源管理平台并不支持容灾功能,导致当发生火灾、水灾、地震等意外事故时造成***长时间中断服务,无法确保业务的连续性。
发明内容
本发明提供了一种基于ETCD的集群容灾管理方法、***、设备及存储介质,旨在解决现有的云存储资源管理平台不支持容灾功能,导致当发生意外事故时造成***长时间中断服务的技术问题。
为解决上述技术问题,本发明采用的技术方案为:
一种基于ETCD的集群容灾管理方法,包括:
为主存储***建立备用存储***,并在所述备用存储***中为备用ETCD集群设置用于容灾切换的key值标记;
监测所述主存储***的状态,当监测到所述主存储***处于不可用状态时,连接所述备用存储***中的备用ETCD集群,并获取所述备用ETCD集群的key值;
根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***。
本发明实施例采取的技术方案还包括:所述根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***包括:
根据所述备用ETCD集群的key值判断是否可以将底层集群流量切换到备用存储***,如果可以切换,
加载所述备用ETCD集群的配置内容,并上报心跳到所述备用ETCD集群,将所述底层集群流量切换到备用存储***。
本发明实施例采取的技术方案还包括:所述根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***还包括:
在所述底层集群流量切换完成后,自动将所述备用存储***升级为主存储***,并将所述用户流量切换到升级后的主存储***中。
本发明实施例采取的技术方案还包括:所述根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***之后还包括:
监测所述主存储***的状态,当所述主存储***恢复为可用状态时,自动将所述底层集群流量及用户流量切换回主存储***。
本发明实施例采取的技术方案还包括:所述主存储***和备用存储***分别为CSSP***,所述备用CSSP***与主CSSP***相互独立。
本发明实施例采取的技术方案还包括:所述根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***具体为:
当所述主CSSP***处于不可用状态时,则执行容灾切换逻辑,加载所述备用ETCD的配置内容,所述配置内容包括mysql、rabbitmq,将所述主CSSP***的底层集群流量切换到备用CSSP***,由所述备用CSSP***对底层存储资源进行管理;所述mysql为关系型数据库管理***,所述rabbitmq为消息队列服务模块;
采用集群管理模块对所述主CSSP***进行监测,当监测到所述主CSSP***的服务端口掉线且所述底层集群流量已经切换,则自动将所述备用存储***升级为主存储***,将所述用户流量切换到升级后的主CSSP***中。
本发明实施例采取的另一技术方案为:一种基于ETCD的集群容灾管理***,包括:
ETCD标记模块:用于为主存储***建立备用存储***,并在所述备用存储***中为备用ETCD集群设置用于容灾切换的key值标记;
状态监测模块:用于监测所述主存储***的状态,当监测到所述主存储***处于不可用状态时,连接所述备用存储***中的备用ETCD集群,并获取所述备用ETCD集群的key值;
容灾切换模块:用于根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***。
本发明实施例采取的技术方案还包括:所述容灾切换模块根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***具体为:
根据所述备用ETCD集群的key值判断是否可以将底层集群流量切换到备用存储***,如果可以切换,
加载所述备用ETCD集群的配置内容,并上报心跳到所述备用ETCD集群,将所述底层集群流量切换到备用存储***;
在所述底层集群流量切换完成后,自动将所述备用存储***升级为主存储***,并将所述用户流量切换到升级后的主存储***中。
本发明实施例采取的又一技术方案为:一种基于ETCD的集群容灾管理设备,所述设备包括处理器、与所述处理器耦接的存储器,其中,
所述存储器存储有用于实现上述的基于ETCD的集群容灾管理方法的程序指令;
所述处理器用于执行所述存储器存储的所述程序指令以执行所述基于ETCD的集群容灾管理操作。
本发明实施例采取的又一技术方案为:一种存储介质,存储有处理器可运行的程序指令,所述程序指令用于执行上述的基于ETCD的集群容灾管理方法。
本发明的有益效果是:本发明实施例的基于ETCD的集群容灾管理方法、***、设备及存储介质基于ETCD进行容灾切换,当主存储***由于不可抗拒因素不能提供服务时,能够实现主存储***与备用存储***的快速切换,从而保证集群的稳定性,不影响用户使用服务提供业务,有效提升了云服务的高可用性。同时,由于ETCD为强一致的中间件,因此不会出现数据不一致导致的故障误判以及误切换,可以实现***级的容灾。
附图说明
图1是本发明第一实施例的基于ETCD的集群容灾管理方法的流程示意图;
图2是本发明第二实施例的基于ETCD的集群容灾管理方法的流程示意图;
图3是本发明第三实施例的基于ETCD的集群容灾管理方法的流程示意图;
图4为本申请实施例的CSSP***容灾架构示意图;
图5是本发明实施例基于ETCD的集群容灾管理***的结构示意图;
图6是本发明实施例的基于ETCD的集群容灾管理设备的结构示意图;
图7是本发明实施例的存储介质结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
请参阅图1,是本发明第一实施例的基于ETCD的集群容灾管理方法的流程示意图。本发明第一实施例的基于ETCD的集群容灾管理方法包括以下步骤:
S10:为主存储***建立备用存储***,并在备用存储***中为备用ETCD集群设置用于容灾切换的key值标记;
本步骤中,本申请实施例通过为主存储***设置一个备用存储***,主存储***和备用存储***之间无需进行数据同步。在容灾前,通过主存储***对用户提供底层的kvm和存储集群管理的管理功能,数据流量不经由备用存储***,备用存储***不对外提供服务。ETCD是一个分布式的、高可用的、一致的key-value存储数据库,用于为配置中心存储整个***的配置数据。
S11:监测主存储***的状态,当监测到主存储***处于不可用状态时,连接备用存储***中的备用ETCD集群,并获取备用ETCD集群的key值;
S12:根据备用ETCD集群的key值将主存储***的流量切换到备用存储***。
本步骤中,流量切换包括底层集群流量切换和用户流量切换。底层集群流量切换具体为:根据备用ETCD集群的key值判断是否可以将底层集群流量切换到备用存储***,如果可以切换,加载备用ETCD集群的配置内容,并上报心跳到备用ETCD集群,将底层集群流量切换到备用存储***,由备用存储***对底层存储资源进行管理;当容灾切换完成后,备用存储***接管主存储***对用户提供下层kvm(Keyboard Video Mouse的缩写,KVM通过直接连接键盘、视频或鼠标端口,能够访问和控制计算机)和存储集群管理的管理功能。其中备用存储***与主存储***完全独立,只进行DB(Database,数据库)的数据同步。
以CSSP***为例,用户流量切换主要为res-mgr对外服务地址之间的切换,由于CSSP***入口为res-mgr,采用域名对外提供服务。用户流量切换具体为:在容灾切换前,采用keepalived对主CSSP***进行监测,当keepalived监测到主CSSP***的服务端口down掉(掉线)时且底层集群流量已经切换,则会自动将备用CSSP***升级为主CSSP***,将用户流量切换到升级后的主CSSP***中。
基于上述,本发明第一实施例的基于ETCD的集群容灾管理方法基于ETCD进行容灾切换,当主存储***由于不可抗拒因素不能提供服务时,能够实现主存储***与备用存储***的快速切换。由于ETCD为强一致的中间件,因此不会出现数据不一致导致的故障误判以及误切换,可以实现***级的容灾。
请参阅图2,是本申请第二实施例的基于ETCD的集群容灾管理方法的流程示意图。本申请第二实施例的基于ETCD的集群容灾管理方法包括以下步骤:
S20:为主存储***建立备用存储***,并在备用存储***中为备用ETCD集群设置一个可以进行容灾切换的key值标记;
本步骤中,本申请实施例通过为主存储***设置一个备用存储***,主存储***和备用存储***之间无需进行数据同步。在容灾前,通过主存储***对用户提供底层的kvm和存储集群管理的管理功能,数据流量不经由备用存储***,备用存储***不对外提供服务。
S21:对主存储***进行实时监测,并判断主存储***的ETCD集群是否处于可用状态,如果是,继续执行S21;否则,执行S22;
S22:连接备用存储***中的备用ETCD集群,并在连接成功后获取备用ETCD集群的key值;
S23:根据备用ETCD集群的key值判断是否可以将底层集群流量切换到备用存储***,如果可以切换,执行S24;否则,执行S27;
S24:加载备用ETCD集群的配置内容,并上报心跳到备用ETCD集群,将底层集群流量切换到备用存储***;
本步骤中,在容灾切换时,主存储***不可用,将底层集群流量切换到备用存储***,由备用存储***对底层存储资源进行管理。当容灾切换完成后,备用存储***接管主存储***对用户提供下层kvm(Keyboard Video Mouse的缩写,KVM通过直接连接键盘、视频或鼠标端口,能够访问和控制计算机)和存储集群管理的管理功能。其中备用存储***与主存储***完全独立,只进行DB(Database,数据库)的数据同步。
S25:在底层集群流量切换完成后,自动对备用存储***进行升主操作,并将用户流量切换到备用存储***中;
S26:判断主存储***是否恢复为可用状态,当主存储***恢复为可用状态时,自动将底层集群流量及用户流量切换回主存储***;
S27:结束。
基于上述,本申请本第二实施例的基于ETCD的集群容灾管理方法基于ETCD进行容灾切换,当主存储***由于不可抗拒因素不能提供服务时,能够实现主存储***与备用存储***的快速切换,从而保证集群的稳定性,不影响用户使用服务提供业务,有效提升了云服务的高可用性。同时,由于ETCD为强一致的中间件,因此不会出现数据不一致导致的故障误判以及误切换,实现***级的容灾。
进一步地,为了更加清楚地说明本申请实施例的实施过程,以下以CSSP(CloudStorage Service Platform,云存储资源管理平台)***的集群容灾管理为例进行具体说明。请参阅图3,是本申请第三实施例的基于ETCD的集群容灾管理方法的流程示意图。本申请第三实施例的基于ETCD的集群容灾管理方法包括以下步骤:
S30:为主CSSP***建立备用CSSP***,并在备用CSSP***中为备用ETCD集群设置一个可以进行容灾切换的key(cssp_can_switch)值标记;
本步骤中,如图4所示,为本申请实施例的CSSP***容灾架构示意图。CSSP***包括res-mgr、mysql、rabbitmq、etcd等服务组件,其中res-mgr为存储资源管理服务,mysql是一种开放源代码的关系型数据库管理***,负责存储管理侧的持久化数据,rabbitmq是一套开源的消息队列服务模块,负责与底层服务进行通信,etcd为配置中心存储整个***的配置数据。PM物理机为efs的数据网关层,用于提供efs-server进程、vm(Virtual Machine,虚拟机)和vm中的nasagent等NAS(Network Attached Storage,网络附属存储)服务,efs-server用于提供管理物理机上的虚拟机资源和物理机的网络资源接口以供res-mgr调用,nasagent用于提供管理vm内部的磁盘、网络、计算和软件资源(nfsd、samba、syslog)等资源的接口,efs-server通过grpc调用nasagent的接口,以对vm内部资源进行管理。
本申请实施例通过为主CSSP***设置一个备用CSSP,(主/备用)res-mgr、rabbitmq、etcd等服务组件采用集群或高可用方式进行部署,且res-mgr服务无状态,rabbitmq与etcd中没有运行时需要持久化的数据,因此主CSSP***和备用CSSP***之间无需进行数据同步。在容灾前,主CSSP***通过res-mgr、mysql、rabbitmq、etcd等对用户提供下层的kvm和存储集群管理的管理功能,数据流量不经由备用CSSP***,备用CSSP***不对外提供服务。
S31:对主CSSP***进行实时监测,并判断主CSSP***的ETCD集群是否处于可用状态,如果是,继续执行S31;否则,执行S32;
本步骤中,当efs-server、nasagent等服务检测到主CSSP***不可用时,则执行容灾切换逻辑,将主CSSP***的底层集群流量切换到备用CSSP***,在完成容灾切换后,由备用CSSP***对底层存储资源进行管理。
S32:连接备用CSSP***中的备用ETCD集群,并在连接成功后获取备用ETCD集群的key值;
S33:根据备用ETCD集群的key值判断是否可以将底层集群流量切换到备用CSSP***,如果可以切换,执行S34;否则,执行S37;
S34:加载备用ETCD集群的配置内容,并上报心跳到备用ETCD集群,将底层集群流量切换到备用CSSP***;
本步骤中,加载的配置内容包括mysql、rabbitmq等相关配置。由图4所示的CSSP容灾架构图中可知,在CSSP***中,底层efs-server、rpcserver等通过rabbitmq服务提供管理vm的功能,heartbeat模块通过etcd服务提供心跳上报以及配置修改等功能。因此,在容灾切换只需考虑底层kvm集群中efs-server、rpcserver、heartbeat等服务的底层集群流量切换和上层用户流量切换。kvm集群中PM物理机上的vm中nasagent和efs-server需要用到CSSP***中的etcd和rabbitmq等服务,由于主CSSP***和备用CSSP***中的etcd和rabbitmq相互独立,因此在进行底层集群流量切换时,需要将kvm集群中nasagent和efs-server的相关配置和访问服务切换到备用CSSP***。在完成底层集群流量切换后,备用CSSP***接管主CSSP***对用户提供下层kvm和存储集群管理的管理功能。其中备用CSSP***与主CSSP***完全独立,只进行DB的数据同步。
S35:在底层集群流量切换完成后,采用集群管理模块自动将备用CSSP***升级为主CSSP***,并将用户流量切换到升级后的CSSP***中;
上述中,用户流量切换主要为res-mgr对外服务地址之间的切换,由于CSSP***入口为res-mgr,采用域名对外提供服务。本申请实施例中,集群管理模块采用Keepalived对CSSP***进行用户流量切换。keepalived是集群管理中保证集群高可用的一个服务软件,可以检测集群服务节点,通过虚拟冗余路由协议(VRRP)对外提供相同的服务IP,后端可以有多个服务***或节点。具体的,在容灾切换前,采用keepalived对主CSSP***进行监测,当keepalived监测到主CSSP***的服务端口down掉时且底层集群流量已经切换,则会自动将备用CSSP***升级为主CSSP***,将用户流量切换到升级后的CSSP***中。
S36:判断主CSSP***是否恢复为可用状态,当主CSSP***恢复为可用状态时,自动将将底层集群流量及用户流量切换至主CSSP***;
S37:结束。
基于上述,本申请本第三实施例的基于ETCD的集群容灾管理方法基于ETCD对主CSSP***和备用CSSP***进行容灾切换,当主CSSP***由于不可抗拒因素不能提供服务时,能够实现主CSSP***与备用CSSP***的快速切换,从而保证集群的稳定性,不影响用户使用服务提供业务,有效提升了云服务的高可用性。同时,由于ETCD为强一致的中间件,因此不会出现数据不一致导致的故障误判以及误切换,实现***级的容灾。
在一个可选的实施方式中,还可以:将所述的基于ETCD的集群容灾管理方法的结果上传至区块链中。
具体地,基于所述的基于ETCD的集群容灾管理方法的结果得到对应的摘要信息,具体来说,摘要信息由所述的基于ETCD的集群容灾管理方法的结果进行散列处理得到,比如利用sha256s算法处理得到。将摘要信息上传至区块链可保证其安全性和对用户的公正透明性。用户可以从区块链中下载得该摘要信息,以便查证所述的基于ETCD的集群容灾管理方法的结果是否被篡改。本示例所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
请参阅图5,是本发明实施例基于ETCD的集群容灾管理***的结构示意图。本发明实施例基于ETCD的集群容灾管理***40包括:
ETCD标记模块41:用于为主存储***建立备用存储***,并在备用存储***中为备用ETCD集群设置用于容灾切换的key值标记;其中,本申请实施例通过为主存储***设置一个备用存储***,主存储***和备用存储***之间无需进行数据同步。在容灾前,通过主存储***对用户提供底层的kvm和存储集群管理的管理功能,数据流量不经由备用存储***,备用存储***不对外提供服务。
状态监测模块42:用于监测主存储***的状态,当监测到主存储***处于不可用状态时,连接备用存储***中的备用ETCD集群,并获取备用ETCD集群的key值;
容灾切换模块43:用于根据备用ETCD集群的key值将主存储***的流量切换到备用存储***;其中,流量切换包括底层集群流量切换和用户流量切换。底层集群流量切换具体为:根据key值判断是否可以将底层集群流量切换到备用存储***,如果可以切换,加载备用ETC集群D的配置内容,并上报心跳到备用ETCD集群,将底层集群流量切换到备用存储***,由备用存储***对底层存储资源进行管理;当容灾切换完成后,备用存储***接管主存储***对用户提供下层kvm(Keyboard Video Mouse的缩写,KVM通过直接连接键盘、视频或鼠标端口,能够访问和控制计算机)和存储集群管理的管理功能。其中备用存储***与主存储***完全独立,只进行DB(Database,数据库)的数据同步。
以CSSP***为例,用户流量切换主要为res-mgr对外服务地址之间的切换,由于CSSP***入口为res-mgr,采用域名对外提供服务。用户流量切换具体为:在容灾切换前,采用keepalived对主CSSP***进行监测,当keepalived监测到主CSSP***的服务端口down掉时且底层集群流量已经切换,则会自动对备用CSSP***进行升主操作,将用户流量切换到备用CSSP***中。
基于上述,本发明实施例的基于ETCD的集群容灾管理***基于ETCD进行容灾切换,当主存储***由于不可抗拒因素不能提供服务时,能够实现主存储***与备用存储***的快速切换,从而保证集群的稳定性,不影响用户使用服务提供业务,有效提升了云服务的高可用性。同时,由于ETCD为强一致的中间件,因此不会出现数据不一致导致的故障误判以及误切换,实现***级的容灾。
请参阅图6,为本发明实施例的基于ETCD的集群容灾管理设备结构示意图。该设备50包括处理器51、与处理器51耦接的存储器52。
存储器52存储有用于实现上述基于ETCD的集群容灾管理方法的程序指令。
处理器51用于执行存储器52存储的程序指令以执行基于ETCD的集群容灾管理操作。
其中,处理器51还可以称为CPU(Central Processing Unit,中央处理单元)。处理器51可能是一种集成电路芯片,具有信号的处理能力。处理器51还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本申请实施例的终端基于ETCD进行容灾切换,当主存储***由于不可抗拒因素不能提供服务时,能够实现主存储***与备用存储***的快速切换,从而保证集群的稳定性,不影响用户使用服务提供业务,有效提升了云服务的高可用性。同时,由于ETCD为强一致的中间件,因此不会出现数据不一致导致的故障误判以及误切换,实现***级的容灾。
请参阅图7,为本发明实施例的存储介质的结构示意图。本发明实施例的存储介质存储有能够实现上述所有方法的程序文件61,其中,该程序文件61可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
本申请实施例的存储介质基于ETCD进行容灾切换,当主存储***由于不可抗拒因素不能提供服务时,能够实现主存储***与备用存储***的快速切换,从而保证集群的稳定性,不影响用户使用服务提供业务,有效提升了云服务的高可用性。同时,由于ETCD为强一致的中间件,因此不会出现数据不一致导致的故障误判以及误切换,实现***级的容灾。
在本发明所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的***实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于ETCD的集群容灾管理方法,其特征在于,包括:
为主存储***建立备用存储***,并在所述备用存储***中为备用ETCD集群设置用于容灾切换的key值标记;
监测所述主存储***的状态,当监测到所述主存储***处于不可用状态时,连接所述备用存储***中的备用ETCD集群,并获取所述备用ETCD集群的key值;
根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***。
2.根据权利要求1所述的基于ETCD的集群容灾管理方法,其特征在于,所述根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***包括:
根据所述备用ETCD集群的key值判断是否可以将底层集群流量切换到备用存储***,如果可以切换,
加载所述备用ETCD集群的配置内容,并上报心跳到所述备用ETCD集群,将所述底层集群流量切换到备用存储***。
3.根据权利要求2所述的基于ETCD的集群容灾管理方法,其特征在于,所述根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***还包括:
在所述底层集群流量切换完成后,自动将所述备用存储***升级为主存储***,并将所述用户流量切换到升级后的主存储***中。
4.根据权利要求3所述的基于ETCD的集群容灾管理方法,其特征在于,所述根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***之后还包括:
监测所述主存储***的状态,当所述主存储***恢复为可用状态时,自动将所述底层集群流量及用户流量切换回主存储***。
5.根据权利要求1至4任一项所述的基于ETCD的集群容灾管理方法,其特征在于,所述主存储***和备用存储***分别为CSSP***,所述备用CSSP***与主CSSP***相互独立。
6.根据权利要求5所述的基于ETCD的集群容灾管理方法,其特征在于,所述根据所述key值将所述主存储***的底层集群流量和用户流量切换到备用存储***具体为:
当所述主CSSP***处于不可用状态时,则执行容灾切换逻辑,加载所述备用ETCD的配置内容,所述配置内容包括mysql关系型数据库管理***、rabbitmq消息队列服务模块,将所述主CSSP***的底层集群流量切换到备用CSSP***,由所述备用CSSP***对底层存储资源进行管理;
采用集群管理模块对所述主CSSP***进行监测,当监测到所述主CSSP***的服务端口掉线且所述底层集群流量已经切换,则自动将所述备用存储***升级为主存储***,将所述用户流量切换到升级后的主CSSP***中。
7.一种基于ETCD的集群容灾管理***,其特征在于,包括:
ETCD标记模块:用于为主存储***建立备用存储***,并在所述备用存储***中为备用ETCD集群设置用于容灾切换的key值标记;
状态监测模块:用于监测所述主存储***的状态,当监测到所述主存储***处于不可用状态时,连接所述备用存储***中的备用ETCD集群,并获取所述备用ETCD集群的key值;
容灾切换模块:用于根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***。
8.根据权利要求7所述的基于ETCD的集群容灾管理***,其特征在于,所述容灾切换模块根据所述备用ETCD集群的key值将所述主存储***的底层集群流量和用户流量切换到备用存储***具体为:
根据所述备用ETCD集群的key值判断是否可以将底层集群流量切换到备用存储***,如果可以切换,
加载所述备用ETCD集群的配置内容,并上报心跳到所述备用ETCD集群,将所述底层集群流量切换到备用存储***;
在所述底层集群流量切换完成后,自动将所述备用存储***升级为主存储***,并将所述用户流量切换到升级后的主存储***中。
9.一种基于ETCD的集群容灾管理设备,其特征在于,所述设备包括处理器、与所述处理器耦接的存储器,其中,
所述存储器存储有用于实现权利要求1至6任一项所述的基于ETCD的集群容灾管理方法的程序指令;
所述处理器用于执行所述存储器存储的所述程序指令以执行所述基于ETCD的集群容灾管理方法。
10.一种存储介质,其特征在于,存储有处理器可运行的程序指令,所述程序指令用于执行权利要求1至6任一项所述的基于ETCD的集群容灾管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210209647.XA CN114584458B (zh) | 2022-03-03 | 2022-03-03 | 一种基于etcd的集群容灾管理方法、***、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210209647.XA CN114584458B (zh) | 2022-03-03 | 2022-03-03 | 一种基于etcd的集群容灾管理方法、***、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114584458A true CN114584458A (zh) | 2022-06-03 |
CN114584458B CN114584458B (zh) | 2023-06-06 |
Family
ID=81774231
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210209647.XA Active CN114584458B (zh) | 2022-03-03 | 2022-03-03 | 一种基于etcd的集群容灾管理方法、***、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114584458B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115208743A (zh) * | 2022-07-18 | 2022-10-18 | 中国工商银行股份有限公司 | 基于etcd的跨站点集群的部署方法和装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176909A (zh) * | 2011-12-26 | 2013-06-26 | ***股份有限公司 | 一种业务处理方法及其*** |
US20190028538A1 (en) * | 2016-03-25 | 2019-01-24 | Alibaba Group Holding Limited | Method, apparatus, and system for controlling service traffic between data centers |
CN110046064A (zh) * | 2018-01-15 | 2019-07-23 | 厦门靠谱云股份有限公司 | 一种基于故障漂移的云服务器容灾实现方法 |
CN110086726A (zh) * | 2019-04-22 | 2019-08-02 | 航天云网科技发展有限责任公司 | 一种自动切换Kubernetes主节点的方法 |
CN110740167A (zh) * | 2019-09-20 | 2020-01-31 | 北京浪潮数据技术有限公司 | 一种分布式存储***及其节点监控方法 |
CN111176888A (zh) * | 2018-11-13 | 2020-05-19 | 浙江宇视科技有限公司 | 云存储的容灾方法、装置及*** |
CN111371599A (zh) * | 2020-02-26 | 2020-07-03 | 山东汇贸电子口岸有限公司 | 一种基于etcd的集群容灾管理*** |
CN112367214A (zh) * | 2020-10-12 | 2021-02-12 | 成都精灵云科技有限公司 | 基于etcd的主节点快速检测和切换方法 |
CN113590386A (zh) * | 2021-07-30 | 2021-11-02 | 深圳前海微众银行股份有限公司 | 数据的容灾恢复方法、***、终端设备及计算机存储介质 |
CN113949691A (zh) * | 2021-10-15 | 2022-01-18 | 湖南麒麟信安科技股份有限公司 | 基于etcd的虚拟网络地址高可用实现方法及*** |
-
2022
- 2022-03-03 CN CN202210209647.XA patent/CN114584458B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176909A (zh) * | 2011-12-26 | 2013-06-26 | ***股份有限公司 | 一种业务处理方法及其*** |
US20190028538A1 (en) * | 2016-03-25 | 2019-01-24 | Alibaba Group Holding Limited | Method, apparatus, and system for controlling service traffic between data centers |
CN110046064A (zh) * | 2018-01-15 | 2019-07-23 | 厦门靠谱云股份有限公司 | 一种基于故障漂移的云服务器容灾实现方法 |
CN111176888A (zh) * | 2018-11-13 | 2020-05-19 | 浙江宇视科技有限公司 | 云存储的容灾方法、装置及*** |
CN110086726A (zh) * | 2019-04-22 | 2019-08-02 | 航天云网科技发展有限责任公司 | 一种自动切换Kubernetes主节点的方法 |
CN110740167A (zh) * | 2019-09-20 | 2020-01-31 | 北京浪潮数据技术有限公司 | 一种分布式存储***及其节点监控方法 |
CN111371599A (zh) * | 2020-02-26 | 2020-07-03 | 山东汇贸电子口岸有限公司 | 一种基于etcd的集群容灾管理*** |
CN112367214A (zh) * | 2020-10-12 | 2021-02-12 | 成都精灵云科技有限公司 | 基于etcd的主节点快速检测和切换方法 |
CN113590386A (zh) * | 2021-07-30 | 2021-11-02 | 深圳前海微众银行股份有限公司 | 数据的容灾恢复方法、***、终端设备及计算机存储介质 |
CN113949691A (zh) * | 2021-10-15 | 2022-01-18 | 湖南麒麟信安科技股份有限公司 | 基于etcd的虚拟网络地址高可用实现方法及*** |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115208743A (zh) * | 2022-07-18 | 2022-10-18 | 中国工商银行股份有限公司 | 基于etcd的跨站点集群的部署方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114584458B (zh) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6602369B2 (ja) | 記憶不具合後の安全なデータアクセス | |
US9405757B2 (en) | File storage system, apparatus, and file access method | |
US20160352587A1 (en) | Secure cloud management agent | |
CN107846316B (zh) | 一种云手机管理***及其异常处理方法 | |
CN104408071A (zh) | 一种基于集群管理器的分布式数据库高可用方法及*** | |
CN108616574B (zh) | 管理数据的存储方法、设备及存储介质 | |
CN108572976A (zh) | 一种分布式数据库中数据恢复方法、相关设备和*** | |
CN113489691B (zh) | 网络访问方法、装置、计算机可读介质及电子设备 | |
CN112395047A (zh) | 虚拟机故障疏散方法、***及计算机可读介质 | |
CN109565447A (zh) | 网络功能处理方法及相关设备 | |
Diouf et al. | On Byzantine fault tolerance in multi-master Kubernetes clusters | |
CN108614728A (zh) | 虚拟机服务提供方法、装置、设备及计算机可读存储介质 | |
CN111147274B (zh) | 为集群解决方案创建高度可用的仲裁集的***和方法 | |
CN110895469A (zh) | 双机热备***的升级方法、装置及电子设备和存储介质 | |
CN114363144B (zh) | 一种面向分布式***的故障信息关联上报方法及相关设备 | |
US20090044186A1 (en) | System and method for implementation of java ais api | |
CN113010313A (zh) | 一种负载均衡方法、装置、电子设备及计算机存储介质 | |
CN112749178A (zh) | 一种保证数据一致性的方法及相关设备 | |
CN114584458A (zh) | 一种基于etcd的集群容灾管理方法、***、设备及存储介质 | |
CN113347257A (zh) | 通信方法、装置、服务器及存储介质 | |
CN112291082A (zh) | 机房容灾处理方法、终端及存储介质 | |
CN116126457A (zh) | 容器迁移方法和服务器集群 | |
CN112350856B (zh) | 分布式服务签退方法及设备 | |
CN115150253A (zh) | 一种故障根因确定方法、装置及电子设备 | |
CN114070716A (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 |