CN113886021A - 一种镜像备份方法、装置、电子设备及可读存储介质 - Google Patents
一种镜像备份方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN113886021A CN113886021A CN202111226372.2A CN202111226372A CN113886021A CN 113886021 A CN113886021 A CN 113886021A CN 202111226372 A CN202111226372 A CN 202111226372A CN 113886021 A CN113886021 A CN 113886021A
- Authority
- CN
- China
- Prior art keywords
- node
- mirror image
- warehouse
- backup
- mirror
- 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 61
- 230000002159 abnormal effect Effects 0.000 claims abstract description 17
- 238000004590 computer program Methods 0.000 claims description 10
- 230000007246 mechanism Effects 0.000 abstract description 8
- 230000005540 biological transmission Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000011084 recovery Methods 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011895 specific detection Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种镜像备份方法、装置、电子设备及计算机可读存储介质,该方法包括:启动镜像仓库服务,构建节点本地仓库;获取节点标签,从完整镜像仓库中获取与节点标签对应的节点镜像,并将节点镜像保存至节点本地仓库;若检测到需要对目标镜像的轮询备份,则从完整镜像仓库中获取目标镜像,并将目标镜像保存至节点本地仓库;目标镜像为所述节点本地仓库中不存在,且备份数量小于二的镜像;该方法采用了非一致性的分布式备份机制对镜像进行备份,所有的镜像都在集群具有至少两个备份,任意一个节点发生异常时,均可以保证集群中具有所有的镜像,保证了集群的高可用性,同时可以减少镜像传输和存储占用的带宽以及磁盘空间。
Description
技术领域
本申请涉及镜像技术领域,特别涉及一种镜像备份方法、镜像备份装置、电子设备及计算机可读存储介质。
背景技术
容器技术目前已经广泛应用于各个方面,容器启动需要容器镜像,容器镜像的存储和下载需要从镜像仓库中获取。高可用是指集群中一个或者多个节点出现故障时,集群提供的服务不受影响。为了保证镜像仓库的高可用,通常会在集群所有的节点上都开启节点的本地镜像仓库服务,统一访问VIP(是指的高可用集群中一个虚拟IP,如果VIP所在的节点出现故障,VIP会漂移到其他的节点上)的镜像仓库服务,这样在VIP所在节点出现故障之后,VIP漂移到其他节点,依然可以通过VIP提供镜像仓库服务。然而,该方案需要所有的节点都同步镜像仓库的数据,占用比较大的网络带宽和磁盘空间。
因此,相关技术存在的网络带宽和磁盘空间占用较大的问题,是本领域技术人员需要解决的技术问题。
发明内容
有鉴于此,本申请的目的在于提供一种镜像备份方法、镜像备份装置、电子设备及计算机可读存储介质,减少了对网络带宽和磁盘空间的占用。
为解决上述技术问题,本申请提供了一种镜像备份方法,包括:
启动镜像仓库服务,构建节点本地仓库;
获取节点标签,从完整镜像仓库中获取与所述节点标签对应的节点镜像,并将所述节点镜像保存至所述节点本地仓库;
若检测到需要对目标镜像的轮询备份,则从所述完整镜像仓库中获取所述目标镜像,并将所述目标镜像保存至所述节点本地仓库;所述目标镜像为所述节点本地仓库中不存在,且备份数量小于二的镜像。
可选地,所述从完整镜像仓库中获取与所述节点标签对应的节点镜像,包括:
若所述节点标签为空白标签,则从所述完整镜像仓库中获取基础镜像作为所述节点镜像;
若所述节点标签为非空白标签,则根据预设配置在所述完整镜像仓库中确定若干个非基础镜像,并获取所述基础镜像和所述非基础镜像作为所述节点镜像。
可选地,所述检测到需要对目标镜像的轮询备份,包括:
根据轮询名单,判断自身是否为备份节点;
若是所述备份节点,则检测是否存在目标镜像;
若存在所述目标镜像,则确定检测到需要对目标镜像的轮询备份。
可选地,所述检测是否存在目标镜像,包括:
检测所述完整镜像仓库中的各个待备份镜像对应的所述备份数量;
将所述备份数量小于二,且所述节点本地仓库中不具有的全部或部分所述待备份镜像确定为所述目标镜像。
可选地,还包括:
获取标签更新指令,并根据所述标签更新指令更新所述节点标签,得到更新后标签;
根据更新后标签确定更新镜像,并从集群中其他节点对应的其他节点仓库中获取所述更新镜像;
将所述更新后标签确定为新的所述节点标签,并将所述更新镜像存储于所述节点本地仓库。
可选地,还包括:
若检测到集群中某一其他节点的其他节点仓库异常,则获取所述集群中各个镜像对应的所述备份数量;
若检测到需要对指定镜像的轮询备份,则从所述指定镜像所处的所述其他节点仓库中获取所述指定镜像,并将所述指定镜像保存至所述节点本地仓库;所述指定镜像为所述节点本地仓库中不存在,且所述备份数量小于二的镜像。
可选地,还包括:
若发生镜像仓库异常,则对所述节点本地仓库进行恢复;
集群中其他节点对应的其他节点仓库中获取与所述节点标签对应的节点镜像,并将所述节点镜像保存至所述节点本地仓库。
本申请还提供了一种镜像备份装置,包括:
启动模块,用于启动镜像仓库服务,构建节点本地仓库;
第一备份模块,用于获取节点标签,从完整镜像仓库中获取与所述节点标签对应的节点镜像,并将所述节点镜像保存至所述节点本地仓库;
第二备份模块,用于若检测到需要对目标镜像的轮询备份,则从所述完整镜像仓库中获取所述目标镜像,并将所述目标镜像保存至所述节点本地仓库。
本申请还提供了一种电子设备,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现上述的镜像备份方法。
本申请还提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现上述的镜像备份方法。
本申请提供的镜像备份方法,启动镜像仓库服务,构建节点本地仓库;获取节点标签,从完整镜像仓库中获取与节点标签对应的节点镜像,并将节点镜像保存至节点本地仓库;若检测到需要对目标镜像的轮询备份,则从完整镜像仓库中获取目标镜像,并将目标镜像保存至节点本地仓库;目标镜像为所述节点本地仓库中不存在,且备份数量小于二的镜像。
可见,该方法采用了非一致性的分布式备份机制对镜像进行备份,应用于集群中的节点,具体的,在节点启动时构建自身的节点本地仓库。本申请中,为各个节点设置节点标签,节点标签表明了节点的类型,不同类型的节点所需的镜像不同。根据节点标签,可以从完整镜像仓库中获取对应的节点镜像并在本地存储,得到的节点镜像能够保证本节点的正常运行。为了保证集群的高可用性,本申请采用轮询的机制,对备份数量小于二的镜像进行轮询备份。当检测到需要对目标镜像的轮询备份时,说明需要本节点提供带宽和磁盘空间存储目标镜像。目标镜像在集群中的备份数量小于二,若保存目标镜像的节点发生故障,则集群中的节点无法再使用该目标镜像,因此即便本节点不需要目标镜像,在轮询到本节点时,仍需要对目标镜像进行存储。通过上述备份方式,所有的镜像都在集群具有至少两个备份,任意一个节点发生异常时,均可以保证集群中具有所有的镜像,保证了集群的高可用性。此外,由于并不是在每个节点上存储所有的镜像,因此可以减少镜像传输和存储占用的带宽以及磁盘空间。
此外,本申请还提供了一种镜像备份装置、电子设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种镜像备份方法流程图;
图2为本申请实施例提供的一种具体的集群结构示意图;
图3为本申请实施例提供的一种具体的镜像备份流程图;
图4为本申请实施例提供的另一种具体的镜像备份流程图;
图5为本申请实施例提供的一种镜像备份装置的结构示意图;
图6为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例提供的一种镜像备份方法流程图。该方法包括:
S101:启动镜像仓库服务,构建节点本地仓库。
其中,本申请中的各个步骤可以由集群中的各个节点执行,各个节点组成集群共同向外提供服务,例如容器服务。节点在初始化过程中,会启动镜像仓库服务,同时构建相应的节点仓库,以便对节点运行时所需的镜像进行缓存。
S102:获取节点标签,从完整镜像仓库中获取与节点标签对应的节点镜像,并将节点镜像保存至节点本地仓库。
节点标签,是指用于表示节点的类型的标签,其表现形式不做限定,例如可以为位置、数字或符号。不同类型节点在集群中承担的任务不同,其运行时所需要的镜像也不同,因此,通过初始化过程中获取节点标签,可以根据节点标签从完整镜像仓库中获取自身必然用到的镜像。节点镜像,是指与节点标签对应的镜像,即本节点在运行时应当使用的镜像。完整镜像仓库,是指集群初始化时向集群提供全量镜像的镜像仓库,其具体可以由集群中某一预先被设置好的节点提供,或者可以由集群外部的设备提供。在获取到节点镜像后,可以将其存入节点本地仓库,以便后续调用。
可以理解的是,在一些实施方式中,某些节点在初始化时不会被赋予具体的类型,例如作为预备的节点,在这种情况下,可以仅获取基础镜像作为节点镜像。具体的,从完整镜像仓库中获取与节点标签对应的节点镜像的过程可以包括:
步骤11:若节点标签为空白标签,则从完整镜像仓库中获取基础镜像作为节点镜像。
步骤12:若节点标签为非空白标签,则根据预设配置在完整镜像仓库中确定若干个非基础镜像,并获取基础镜像和非基础镜像作为节点镜像。
空白标签,是指无法表明节点的类型的标签。若节点标签为空白标签,说明当前无法确定节点的类型。在这种情况下,无法获取与具体类型相对应的镜像。在完整镜像仓库中,除了与节点的具体类型相对应的镜像,还存在基础镜像。基础镜像,是指任何类型的节点在运行时均需要的镜像,其具体内容不做限定,示例性的,基础镜像可以为其他镜像的运行基础。
若节点标签为非空白标签,则可以根据预设配置确定该非空白标签对应的非基础镜像。其中,预设配置,是指限定节点标签与非基础镜像之间对应关系的配置。在确定非基础镜像后,将其与基础镜像共同作为节点镜像获取。
需要说明的是,一个节点的节点标签可以为多个,且节点标签的数量和内容可以根据需要进行改变。通过改变节点标签,可以对节点的类型进行设置,进而调整节点的工作内容。
S103:若检测到需要对目标镜像的轮询备份,则从完整镜像仓库中获取目标镜像,并将目标镜像保存至节点本地仓库。
通过获取与节点标签对应的节点镜像,可以在节点能够正常工作的前提下尽量少地获取镜像。然而,为了保证集群的高可用性,应当保证完整镜像仓库中的各个镜像在至少两个节点的节点本地仓库存储,即每个镜像在集群中至少有两个备份。因此,本申请采用轮询的机制,对目标镜像进行备份。
其中,目标镜像为节点本地仓库中不存在,且备份数量小于二的镜像,备份数量,是指目标镜像所处的不同节点的节点本地仓库的数量。对于目标镜像,各个节点采用轮询的机制进行备份,可以减少某一节点带宽和存储空间被占用过大的问题。若检测到需要对目标镜像的轮询备份,则说明当前需要由本节点提供额外的带宽和存储空间来存储与自身运行无关的镜像,该镜像即为目标镜像。在这种情况下,从完整镜像仓库中获取目标镜像并将其保存至节点本地仓库,使得目标镜像在集群中的备份数量加一,保证集群的高可用性。
具体的,检测到需要对目标镜像的轮询备份的过程可以包括:
步骤21:根据轮询名单,判断自身是否为备份节点。
步骤22:若是备份节点,则检测是否存在目标镜像。
步骤23:若存在目标镜像,则确定检测到需要对目标镜像的轮询备份。
轮询名单,是指集群中各个节点进行轮询备份时的先后顺序名单,根据轮询名单,可以确定当前是否由本节点来对可能存在的目标镜像进行备份。即若根据轮询名单确定自身为备份节点,则确定需要由本节点备份目标镜像,因此进一步检测当前是否存在目标镜像。例如,可以检测完整镜像仓库中是否存在备份数量小于二的镜像,若存在,则进一步判断自身是否具有该镜像,若不具有,则可以确定该镜像对于本节点来说是目标镜像,存在目标镜像。在确定存在目标镜像的情况下,可以确定需要对目标镜像进行轮询备份。
进一步,检测是否存在目标镜像,包括:
步骤31:检测完整镜像仓库中的各个待备份镜像对应的备份数量。
步骤32:将备份数量小于二,且节点本地仓库中不具有的全部或部分待备份镜像确定为目标镜像。
在本实施例中,可以将备份数量小于二且本节点不具有的全部待备份镜像作为目标镜像,以便尽快完成集群的初始化,或者可以将其中的部分作为目标镜像,避免占用本节点过多的带宽和存储空间。在没有任一节点需要进行轮询备份后,说明不存在目标镜像,可以确定集群的初始化完成,集群中的镜像备份数量和分布方式合理,使得整个集群能够实现高可用。
在初始化结束后,若需要对某一节点的节点本地仓库进行扩充,使得节点能够提供别的服务,可以更新该节点的节点标签。具体的,还可以包括:
步骤41:获取标签更新指令,并根据标签更新指令更新节点标签,得到更新后标签。
步骤42:根据更新后标签确定更新镜像,并从集群中其他节点对应的其他节点仓库中获取更新镜像。
步骤43:将更新后标签确定为新的节点标签,并将更新镜像存储于节点本地仓库。
标签更新指令,是指对节点标签进行更新的指令,其可以指示节点标签更新后的状态,或者可以指示节点标签的更新方式。在根据标签更新指令更新节点标签后得到更新后标签,将其确定为新的节点标签。根据更新后标签,可以确定自身缺少的镜像,即更新镜像,在这种情况下,可以从集群中其他节点的节点本地仓库,即其他节点仓库,中获取更新镜像,并将其存储与本节点的节点本地仓库。通过集群内部的数据交互,可以使得本节点具有与更新后标签相匹配的镜像。
此外,若集群中的节点发生异常,则需要及时进行进一步的镜像备份,以便保持集群的高可用性。具体的,还可以包括如下步骤:
步骤51:若检测到集群中某一其他节点的其他节点仓库异常,则获取集群中各个镜像对应的备份数量。
步骤52:若检测到需要对指定镜像的轮询备份,则从指定镜像所处的其他节点仓库中获取指定镜像,并将指定镜像保存至节点本地仓库。
若集群中非本节点的其他节点对应的其他节点仓库发生异常,则该其他节点仓库中的镜像都无法使用。为了保证集群的高可用,需要保证当前集群中,所有节点上处于正常状态的镜像仓库中各个镜像备份的数量不小于二。
通过获取备份数量,可以及时检测到备份数量小于二的镜像。在异常发生后的备份过程中同样采用轮询备份的机制,因此指定镜像为节点本地仓库中不存在,且备份数量小于二的镜像。若检测到需要由本节点对指定镜像进行轮询备份时,可以从该指定镜像所处的其他节点仓库中获取该指定镜像,并将其在节点本地仓库保存。
对于节点本地仓库发生异常的节点来说,其可以执行如下步骤:
步骤61:若发生镜像仓库异常,则对节点本地仓库进行恢复。
步骤62:集群中其他节点对应的其他节点仓库中获取与节点标签对应的节点镜像,并将节点镜像保存至节点本地仓库。
在发生镜像仓库异常后,首先对节点本地仓库进行恢复,恢复的具体方式不做限定,例如可以重启镜像仓库服务,重新构建节点本地仓库。在节点本地仓库恢复后,根据自身的节点标签,从其他节点的其他节点仓库中获取对应的节点镜像,并将节点惊险在节点本地仓库保存,完成故障恢复。
应用本申请实施例提供的镜像备份方法,采用了非一致性的分布式备份机制对镜像进行备份,应用于集群中的节点,具体的,在节点启动时构建自身的节点本地仓库。本申请中,为各个节点设置节点标签,节点标签表明了节点的类型,不同类型的节点所需的镜像不同。根据节点标签,可以从完整镜像仓库中获取对应的节点镜像并在本地存储,得到的节点镜像能够保证本节点的正常运行。为了保证集群的高可用性,本申请采用轮询的机制,对备份数量小于二的镜像进行轮询备份。当检测到需要对目标镜像的轮询备份时,说明需要本节点提供带宽和磁盘空间存储目标镜像。目标镜像在集群中的备份数量小于二,若保存目标镜像的节点发生故障,则集群中的节点无法再使用该目标镜像,因此即便本节点不需要目标镜像,在轮询到本节点时,仍需要对目标镜像进行存储。通过上述备份方式,所有的镜像都在集群具有至少两个备份,任意一个节点发生异常时,均可以保证集群中具有所有的镜像,保证了集群的高可用性。此外,由于并不是在每个节点上存储所有的镜像,因此可以减少镜像传输和存储占用的带宽以及磁盘空间。
基于上述实施例,本实施例将说明一种具体的镜像备份过程。请参考图2,图2为本申请实施例提供的一种具体的集群结构示意图。其中完整镜像仓库为集群外部服务器等外部设备提供的镜像仓库,在集群初始化的过程中,各个节点可以通过预设链接等访问外部设备,进而访问完整镜像仓库,从中获取节点镜像。本实施例中,节点1、2、3分别具有不同的标签,且均为非空白表前。对于节点1来说,其从完整镜像仓库中获取images1镜像、images2镜像这两个非基础镜像以及image base这一基础镜像。对于节点2来说,从完整镜像仓库中获取images2镜像、images3镜像这两个非基础镜像以及image base这一基础镜像。对于节点3来说,从完整镜像仓库中获取images1镜像、images3镜像这两个非基础镜像以及imagebase这一基础镜像。在节点1、2、3分别获取自身的节点镜像被备份后,完整镜像仓库中不存在目标镜像,因此集群初始化完毕。
请参考图3,图3为本申请实施例提供的一种具体的镜像备份流程图。其具体描述了当节点1的节点标签发生变化时的镜像获取过程,当节点1的节点标签更新后,其需要获取images3这一镜像,通过与具有该镜像的节点2进行通讯,即可从节点2处获取images3。可以理解的是,节点1同样可以通过与节点3进行通讯得到images3。
请参考图4,图4为本申请实施例提供的另一种具体的镜像备份流程图,其具体描述了节点3的节点本地仓库发生异常时的镜像备份过程。当节点3的镜像仓库异常后,节点1和节点2可以检测得到,其具体检测方式不做限定。示例性的,三个节点之间可以两两进行有关镜像仓库的心跳检测,通过心跳检测可以确定是否发生异常。节点1和节点2在确定节点3的镜像仓库发生异常后,统计各个镜像的备份数量,进而可以确定images1和images3的备份数量小于2,因此节点1从具有images3的节点2处获取images3并在自身的节点本地仓库存储,相应的,节点3从具有images1的节点1处获取images1并在自身的节点本地仓库存储,保证了集群的高可用。
下面对本申请实施例提供的镜像备份装置进行介绍,下文描述的镜像备份装置与上文描述的镜像备份方法可相互对应参照。
请参考图5,图5为本申请实施例提供的一种镜像备份装置的结构示意图,包括:
启动模块110,用于启动镜像仓库服务,构建节点本地仓库;
第一备份模块120,用于获取节点标签,从完整镜像仓库中获取与节点标签对应的节点镜像,并将节点镜像保存至节点本地仓库;
第二备份模块130,用于若检测到需要对目标镜像的轮询备份,则从完整镜像仓库中获取目标镜像,并将目标镜像保存至节点本地仓库。
可选地,第一备份模块120,包括:
第一备份单元,用于若节点标签为空白标签,则从完整镜像仓库中获取基础镜像作为节点镜像;
第二备份单元,用于若节点标签为非空白标签,则根据预设配置在完整镜像仓库中确定若干个非基础镜像,并获取基础镜像和非基础镜像作为节点镜像。
可选地,第二备份模块130,包括:
名单检测单元,用于根据轮询名单,判断自身是否为备份节点;
目标镜像检测单元,用于若是备份节点,则检测是否存在目标镜像;
确定单元,用于若存在目标镜像,则确定检测到需要对目标镜像的轮询备份。
可选地,目标镜像检测单元,包括:
数量检测子单元,用于检测完整镜像仓库中的各个待备份镜像对应的备份数量;
目标确定子单元,用于将备份数量小于二,且节点本地仓库中不具有的全部或部分待备份镜像确定为目标镜像。
可选地,还包括:
更新模块,用于获取标签更新指令,并根据标签更新指令更新节点标签,得到更新后标签;
更新镜像获取模块,用于根据更新后标签确定更新镜像,并从集群中其他节点对应的其他节点仓库中获取更新镜像;
更新存储模块,用于将更新后标签确定为新的节点标签,并将更新镜像存储于节点本地仓库。
可选地,还包括:
数量统计模块,用于若检测到集群中某一其他节点的其他节点仓库异常,则获取集群中各个镜像对应的备份数量;
异常轮询备份模块,用于若检测到需要对指定镜像的轮询备份,则从指定镜像所处的其他节点仓库中获取指定镜像,并将指定镜像保存至节点本地仓库;指定镜像为节点本地仓库中不存在,且备份数量小于二的镜像。
可选地,还包括:
仓库恢复模块,用于若发生镜像仓库异常,则对节点本地仓库进行恢复;
节点镜像恢复模块,用于集群中其他节点对应的其他节点仓库中获取与节点标签对应的节点镜像,并将节点镜像保存至节点本地仓库。
下面对本申请实施例提供的电子设备进行介绍,下文描述的电子设备与上文描述的镜像备份方法可相互对应参照。
请参考图6,图6为本申请实施例提供的一种电子设备的结构示意图。其中电子设备100可以包括处理器101和存储器102,还可以进一步包括多媒体组件103、信息输入/信息输出(I/O)接口104以及通信组件105中的一种或多种。
其中,处理器101用于控制电子设备100的整体操作,以完成上述的镜像备份方法中的全部或部分步骤;存储器102用于存储各种类型的数据以支持在电子设备100的操作,这些数据例如可以包括用于在该电子设备100上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器102可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,SRAM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、只读存储器(Read-OnlyMemory,ROM)、磁存储器、快闪存储器、磁盘或光盘中的一种或多种。
多媒体组件103可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器102或通过通信组件105发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口104为处理器101和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件105用于电子设备100与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件105可以包括:Wi-Fi部件,蓝牙部件,NFC部件。
电子设备100可以被一个或多个应用专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field ProgrammableGate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例给出的镜像备份方法。
下面对本申请实施例提供的计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的镜像备份方法可相互对应参照。
本申请还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的镜像备份方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应该认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系属于仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语包括、包含或者其他任何变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种镜像备份方法,其特征在于,包括:
启动镜像仓库服务,构建节点本地仓库;
获取节点标签,从完整镜像仓库中获取与所述节点标签对应的节点镜像,并将所述节点镜像保存至所述节点本地仓库;
若检测到需要对目标镜像的轮询备份,则从所述完整镜像仓库中获取所述目标镜像,并将所述目标镜像保存至所述节点本地仓库;所述目标镜像为所述节点本地仓库中不存在,且备份数量小于二的镜像。
2.根据权利要求1所述的镜像备份方法,其特征在于,所述从完整镜像仓库中获取与所述节点标签对应的节点镜像,包括:
若所述节点标签为空白标签,则从所述完整镜像仓库中获取基础镜像作为所述节点镜像;
若所述节点标签为非空白标签,则根据预设配置在所述完整镜像仓库中确定若干个非基础镜像,并获取所述基础镜像和所述非基础镜像作为所述节点镜像。
3.根据权利要求1所述的镜像备份方法,其特征在于,所述检测到需要对目标镜像的轮询备份,包括:
根据轮询名单,判断自身是否为备份节点;
若是所述备份节点,则检测是否存在目标镜像;
若存在所述目标镜像,则确定检测到需要对目标镜像的轮询备份。
4.根据权利要求3所述的镜像备份方法,其特征在于,所述检测是否存在目标镜像,包括:
检测所述完整镜像仓库中的各个待备份镜像对应的所述备份数量;
将所述备份数量小于二,且所述节点本地仓库中不具有的全部或部分所述待备份镜像确定为所述目标镜像。
5.根据权利要求1所述的镜像备份方法,其特征在于,还包括:
获取标签更新指令,并根据所述标签更新指令更新所述节点标签,得到更新后标签;
根据更新后标签确定更新镜像,并从集群中其他节点对应的其他节点仓库中获取所述更新镜像;
将所述更新后标签确定为新的所述节点标签,并将所述更新镜像存储于所述节点本地仓库。
6.根据权利要求1所述的镜像备份方法,其特征在于,还包括:
若检测到集群中某一其他节点的其他节点仓库异常,则获取所述集群中各个镜像对应的所述备份数量;
若检测到需要对指定镜像的轮询备份,则从所述指定镜像所处的所述其他节点仓库中获取所述指定镜像,并将所述指定镜像保存至所述节点本地仓库;所述指定镜像为所述节点本地仓库中不存在,且所述备份数量小于二的镜像。
7.根据权利要求1所述的镜像备份方法,其特征在于,还包括:
若发生镜像仓库异常,则对所述节点本地仓库进行恢复;
集群中其他节点对应的其他节点仓库中获取与所述节点标签对应的节点镜像,并将所述节点镜像保存至所述节点本地仓库。
8.一种镜像备份装置,其特征在于,包括:
启动模块,用于启动镜像仓库服务,构建节点本地仓库;
第一备份模块,用于获取节点标签,从完整镜像仓库中获取与所述节点标签对应的节点镜像,并将所述节点镜像保存至所述节点本地仓库;
第二备份模块,用于若检测到需要对目标镜像的轮询备份,则从所述完整镜像仓库中获取所述目标镜像,并将所述目标镜像保存至所述节点本地仓库。
9.一种电子设备,其特征在于,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的镜像备份方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的镜像备份方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111226372.2A CN113886021A (zh) | 2021-10-21 | 2021-10-21 | 一种镜像备份方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111226372.2A CN113886021A (zh) | 2021-10-21 | 2021-10-21 | 一种镜像备份方法、装置、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113886021A true CN113886021A (zh) | 2022-01-04 |
Family
ID=79004045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111226372.2A Pending CN113886021A (zh) | 2021-10-21 | 2021-10-21 | 一种镜像备份方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113886021A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115695453A (zh) * | 2022-10-31 | 2023-02-03 | 浪潮云信息技术股份公司 | 一种提高镜像仓库稳定性的方法、装置、设备及介质 |
CN117369953A (zh) * | 2023-12-08 | 2024-01-09 | 中电云计算技术有限公司 | 镜像同步方法、装置、设备及存储介质 |
-
2021
- 2021-10-21 CN CN202111226372.2A patent/CN113886021A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115695453A (zh) * | 2022-10-31 | 2023-02-03 | 浪潮云信息技术股份公司 | 一种提高镜像仓库稳定性的方法、装置、设备及介质 |
CN117369953A (zh) * | 2023-12-08 | 2024-01-09 | 中电云计算技术有限公司 | 镜像同步方法、装置、设备及存储介质 |
CN117369953B (zh) * | 2023-12-08 | 2024-03-15 | 中电云计算技术有限公司 | 镜像同步方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111314141B (zh) | 路由更新方法及装置 | |
CN109308227B (zh) | 故障检测控制方法及相关设备 | |
CN111770169A (zh) | 设备固件升级的方法、装置、设备以及存储介质 | |
CN113886021A (zh) | 一种镜像备份方法、装置、电子设备及可读存储介质 | |
CN109032587B (zh) | 一种数据流管理框架、方法、终端设备及存储介质 | |
CN108776587B (zh) | 数据获取方法、装置、计算机设备以及存储介质 | |
CN109871209A (zh) | 列表页面状态恢复方法及装置 | |
CN111581239A (zh) | 缓存刷新方法和电子设备 | |
CN108259526B (zh) | 一种数据传输方法和装置 | |
CN115757612A (zh) | 数据同步方法、装置、计算机设备及存储介质 | |
CN112600690B (zh) | 一种配置数据同步方法、装置、设备及存储介质 | |
CN114780615A (zh) | 错误码管理方法及其装置 | |
CN112749045B (zh) | 数据库集群切换方法、设备、存储介质及装置 | |
CN112751693B (zh) | 分布式存储系统的数据处理方法、装置及电子设备 | |
CN110417601B (zh) | 客户端中的信息提示方法、装置、系统及可读存储介质 | |
JP2017167675A (ja) | 情報処理システム、情報処理方法、及びサーバ | |
CN113179332B (zh) | 用于获取配置信息的方法、电子设备和存储介质 | |
CN109684611B (zh) | 一种字典转码方法、装置、存储介质及终端 | |
CN113032021A (zh) | 系统切换及其数据处理方法、装置、设备及存储介质 | |
CN115037595B (zh) | 网络恢复方法、装置、设备及存储介质 | |
JP2021145298A (ja) | オペレーション装置及びプログラム | |
CN111208949A (zh) | 一种确定分布式存储系统中的数据回滚时段的方法 | |
WO2015059605A1 (en) | Window management for stream processing and stream reasoning | |
CN117440088B (zh) | 通话方法及相关设备 | |
US11968090B2 (en) | Dynamic installation of mobile application modules |
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 |