CN115695453B - 一种提高镜像仓库稳定性的方法、装置、设备及介质 - Google Patents
一种提高镜像仓库稳定性的方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115695453B CN115695453B CN202211347594.4A CN202211347594A CN115695453B CN 115695453 B CN115695453 B CN 115695453B CN 202211347594 A CN202211347594 A CN 202211347594A CN 115695453 B CN115695453 B CN 115695453B
- Authority
- CN
- China
- Prior art keywords
- service
- mirror image
- image warehouse
- warehouse
- availability
- 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
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012544 monitoring process Methods 0.000 claims abstract description 152
- 238000001514 detection method Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 16
- 230000009977 dual effect Effects 0.000 claims description 12
- 230000000977 initiatory effect Effects 0.000 claims 1
- 230000002159 abnormal effect Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 238000011084 recovery Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000000903 blocking effect Effects 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种提高镜像仓库稳定性的方法、装置、设备及介质,涉及计算机技术领域,包括:通过自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型;若为单点镜像仓库服务,则通过自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将单点镜像仓库服务切换为高可用镜像仓库集群服务;若为高可用镜像仓库集群服务,则通过自定义监控服务启动第二监控进程监测高可用存储集群是否持续处于不可用状态,若是,则将高可用镜像仓库集群服务切换为单点镜像仓库服务。通过监测高可用存储集群是否可用,能够自动切换镜像仓库服务类型,提高了镜像仓库服务的稳定性。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种提高镜像仓库稳定性的方法、装置、设备及介质。
背景技术
在现有的各种云计算平台中,服务产品组件多样化复杂化,日趋容器化、虚拟化,对基础组件的要求也日益提高,需要在平台的快速迭代中,提供稳定、可靠的基础支持。其中一个重要的问题是,如何保证环境日常运行中的平稳、更新升级时的快速稳定,因为在组件服务运行、更新、升级期间,环境中的特异性、突发性问题会对镜像仓库造成一定影响。服务的运行、更新和升级依赖环境的稳定,需要提供一种保障环境基础组件运行稳定的策略。在保证稳定性的需求下,就体现出基础组件稳定运行的重要性,能对异常的突发问题,提供自动化的保障策略和一定能力的恢复功能。因此对提供容器化基础的镜像仓库的稳定性、可用性和容灾能力就显得尤为重要。
综上,如何提高镜像仓库的稳定性是目前有待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种提高镜像仓库稳定性的方法、装置、设备及介质,能够提高镜像仓库的稳定性。其具体方案如下:
第一方面,本申请公开了一种提高镜像仓库稳定性的方法,包括:
在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型;
若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将所述单点镜像仓库服务切换为高可用镜像仓库集群服务;
若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,若是,则将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务。
可选的,所述通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型,包括:
通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态;
若所述运行状态为运行中,则判定当前环境使用的镜像仓库服务类型为单点镜像仓库服务;
若所述运行状态为未运行,则判定当前环境使用的镜像仓库服务类型为高可用镜像仓库集群服务。
可选的,所述通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,包括:
通过所述自定义监控服务向高可用存储集群持续上传检测文件,并启动第一监控进程监测所述检测文件连续上传成功的次数是否满足第一预设条件;
若满足,则判定所述高可用存储集群持续处于可用状态。
可选的,所述通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,包括:
通过所述自定义监控服务向高可用存储集群持续上传检测文件,并启动第二监控进程监测所述检测文件连续上传失败的次数是否满足第二预设条件;
若满足,则判定所述高可用存储集群持续处于不可用状态。
可选的,所述将所述单点镜像仓库服务切换为高可用镜像仓库集群服务之后,还包括:
向当前环境的镜像仓库中写入目标数据;其中,所述镜像仓库使用的存储为所述高可用存储集群;
触发本地磁盘的写入操作,以便将所述镜像仓库中写入的所述目标数据同步写入至所述本地磁盘。
可选的,所述将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务之后,还包括:
向当前环境的镜像仓库中写入目标数据;其中,所述镜像仓库使用的存储为本地磁盘;
触发所述高可用存储集群的写入操作,以便将所述镜像仓库中写入的所述目标数据同步写入至所述高可用存储集群。
可选的,所述将所述镜像仓库中写入的所述目标数据同步写入至所述高可用存储集群的过程中,还包括:
若监测到所述高可用存储集群不可用,则将所述目标数据写入至预设双活进程,并在监测到所述高可用存储集群可用时,将所述预设双活进程中的所述目标数据异步写入至所述高可用存储集群。
第二方面,本申请公开了一种提高镜像仓库稳定性的装置,包括:
服务类型确定模块,用于在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型;
第一监控模块,用于若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将所述单点镜像仓库服务切换为高可用镜像仓库集群服务;
第二监控模块,用于若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,若是,则将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的提高镜像仓库稳定性的方法的步骤。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的提高镜像仓库稳定性的方法的步骤。
可见,本申请在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型;若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将所述单点镜像仓库服务切换为高可用镜像仓库集群服务;若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,若是,则将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务。由此可见,本申请通过自定义监控服务确定当前环境使用的镜像仓库服务类型,并启动对镜像仓库服务类型对应的监控进程监测高可用存储集群是持续处于可用状态还是持续处于不可用状态,再根据监测结果确定是否切换当前的镜像仓库服务类型。也即通过自定义监控服务实时监测高可用存储集群是否可用,能够自动切换镜像仓库服务类型,从而提高了镜像仓库服务的稳定性。并且,通过持续可用或持续不可用的判断条件,能够避免因网络波动、服务器卡顿导致的临时服务异常场景,保证服务体系的稳定运行和场景判断。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种提高镜像仓库稳定性的方法流程图;
图2为本申请公开的一种具体的自定义监控服务运行流程示意图;
图3为本申请公开的一种具体的提高镜像仓库稳定性的方法流程图;
图4为本申请公开的一种具体的自定义监控服务运行流程示意图;
图5为本申请公开的一种提高镜像仓库稳定性的装置结构示意图;
图6为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
服务的运行、更新和升级依赖环境的稳定,需要提供一种保障环境基础组件运行稳定的策略。在保证稳定性的需求下,就体现出基础组件稳定运行的重要性,能对异常的突发问题,提供自动化的保障策略和一定能力的恢复功能。因此对提供容器化基础的镜像仓库的稳定性、可用性和容灾能力就显得尤为重要。为此,本申请实施例公开了一种提高镜像仓库稳定性的方法、装置、设备及介质,能够提高镜像仓库的稳定性。
参见图1和图2所示,本申请实施例公开了一种提高镜像仓库稳定性的方法,该方法包括:
步骤S11:在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型。
本实施例中,自定义监控服务(即mirror)启动之后,首先通过自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型是单点镜像仓库服务还是高可用镜像仓库集群服务。可以理解的是,上述自定义监控服务用于对环境的存储、镜像服务进行监控,而镜像仓库组件(即registry)对环境运行的各个组件提供镜像服务,在本申请实施例中分为单点和高可用两种模式。
进一步的,上述通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型,包括:通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态;若所述运行状态为运行中,则判定当前环境使用的镜像仓库服务类型为单点镜像仓库服务;若所述运行状态为未运行,则判定当前环境使用的镜像仓库服务类型为高可用镜像仓库集群服务。可用理解的是,当前环境的镜像仓库服务类型包括单点镜像仓库服务和高可用镜像仓库集群服务,通过监测本地单点镜像仓库服务的运行状态即可确定出当前环境使用的镜像仓库服务类型,具体为若运行状态为运行中,则判定镜像仓库服务类型为单点镜像仓库服务;若运行状态为未运行,则判定镜像仓库服务类型为高可用镜像仓库集群服务。同理,也可以监测高可用镜像仓库集群服务的运行状态,以确定出镜像仓库服务类型。
步骤S12:若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将所述单点镜像仓库服务切换为高可用镜像仓库集群服务。
本实施例中,若镜像仓库服务类型为单点镜像仓库服务,则通过自定义监控服务启动对应的第一监控进程,并利用第一监控进程监测高可用存储集群(即minio集群)是否持续处于可用状态,若是,则将当前的单点镜像仓库服务切换为高可用镜像仓库集群服务。也即,若连续多次发现当前环境的高可用存储集群可用,则关闭当前节点的单点镜像仓库服务,切换至高可用镜像仓库集群服务。需要指出的是,在启动自定义监控服务后,会初始化当前环境中的高可用存储集群信息。
步骤S13:若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,若是,则将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务。
本实施例中,若镜像仓库服务类型为高可用镜像仓库集群服务,则通过自定义监控服务启动第二监控进程,并利用第二监控进程监测高可用存储集群是否持续处于不可用状态,若是,则将当前的高可用镜像仓库集群服务切换为单点镜像仓库服务。也即,若连续多次发现当前环境的高可用存储集群不可用,则关闭当前节点的高可用镜像仓库集群服务,切换至单点镜像仓库服务。
需要指出的是,上述镜像仓库的切换建立在keepalived的ip飘移基础上;其中,keepalived表示vip服务,代理高可用镜像仓库集群的地址。当环境的高可用存储集群不可用时,高可用镜像仓库集群服务也会无法使用,这时启动单点镜像仓库服务后,registry的vip会自动飘移至单节点registry提供镜像服务。另外,自定义监控服务实时监测高可用存储集群的可用性,通过连续多次的可用或不可用,来判断高可用存储集群的活性,依此决定切换镜像仓库至哪种运行模式,提高了监测的准确性,能够避免因网络波动、服务器卡顿导致的临时服务异常场景,保证服务体系的稳定运行和场景判断。
还需要指出的是,高可用镜像仓库集群服务和单点镜像仓库服务的配置文件和服务文件存在互斥性。因为镜像仓库的两种模式互不兼容,所以分别需要单独的配置文件和服务文件,依此才能提供对应的服务模式。同时也可以确保在高可用存储集群或高可用镜像仓库集群服务发生异常时,保证环境有且仅有一种镜像仓库服务模式存在环境中,确保数据不会混淆。
可见,本申请在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型;若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将所述单点镜像仓库服务切换为高可用镜像仓库集群服务;若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,若是,则将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务。由此可见,本申请通过自定义监控服务确定当前环境使用的镜像仓库服务类型,并启动对镜像仓库服务类型对应的监控进程监测高可用存储集群是持续处于可用状态还是持续处于不可用状态,再根据监测结果确定是否切换当前的镜像仓库服务类型。也即通过自定义监控服务实时监测高可用存储集群是否可用,能够自动切换镜像仓库服务类型,从而提高了镜像仓库服务的稳定性。并且,通过持续可用或持续不可用的判断条件,能够避免因网络波动、服务器卡顿导致的临时服务异常场景,保证服务体系的稳定运行和场景判断。
参见图3所示,本申请实施例公开了一种具体的提高镜像仓库稳定性的方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。
具体包括:
步骤S21:在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型。
步骤S22:若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务向高可用存储集群持续上传检测文件,并启动第一监控进程监测所述检测文件连续上传成功的次数是否满足第一预设条件。
本实施例中,若当前环境使用单点镜像仓库服务,则通过自定义监控服务持续上传检测文件至高可用存储集群,并启动第一监控进程监测检测文件连续上传成功的次数是否满足第一预设条件。具体为是否连续多次监测到检测文件上传成功,其中的第一预设条件,也即连续成功的次数可以自行设定。
需要指出的是,自定义监控服务的判断依据,是由高可用存储集群的可用性来决定,但是高可用存储集群本身的就绪探针和准备探针均无法提供满意的检测结果,所以自定义监控服务会实时上传检测文件至高可用存储集群,精准的判断当前高可用存储集群是否可用。
步骤S23:若满足,则判定所述高可用存储集群持续处于可用状态,并将所述单点镜像仓库服务切换为高可用镜像仓库集群服务。
本实施例中,若满足,则判定高可用存储集群为正常状态,即持续处于可用状态。自定义监控服务会停止当前节点的单点镜像仓库服务,启动高可用镜像仓库集群服务,并切换监测条件,即切换处于高可用镜像仓库集群服务时的监测条件。
进一步的,上述将所述单点镜像仓库服务切换为高可用镜像仓库集群服务之后,还包括:向当前环境的镜像仓库中写入目标数据;其中,所述镜像仓库使用的存储为所述高可用存储集群;触发本地磁盘的写入操作,以便将所述镜像仓库中写入的所述目标数据同步写入至所述本地磁盘。也即当体系中的高可用存储集群可用时,对外提供高可用镜像仓库集群服务,此时需要向当前环境的镜像仓库中写入目标数据,会通过mc(minio的客户端组件,即minio-client)的双活特性,触本地磁盘的写入操作,同步的向本地单点镜像仓库服务的本地磁盘写入相同目标数据,保证数据一致性。可以理解的是,镜像仓库的切换还建立在高可用存储集群数据和本地磁盘存储数据一致性的基础上,其中,高可用存储集群为高可用镜像仓库集群服务提供存储服务。在mc的管理下,提供双向映射服务,即写入高可用存储集群的数据会同步写入到本地磁盘,保证镜像仓库在高可用模式和单点模式间进行切换时,数据的一致和同步,具体可以如图4中所示。
还需要指出的是,单点镜像仓库服务使用的本地磁盘数据可以作为备份数据使用,在高可用存储集群存储数据丢失时,可以随时导入至高可用存储集群存储,提供数据的容灾能力。即本地磁盘数据可作为备份数据,在一定程度上保证了当前环境在发生重大事故导致高可用存储集群数据丢失时,仍然存在备份数据可以快速导入至高可用存储集群,为恢复服务正常运行提供数据基础。那么在突发异常问题时,也可保证镜像仓库服务可以对外提供持续、稳定、准确的服务。
步骤S24:若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务向高可用存储集群持续上传检测文件,并启动第二监控进程监测所述检测文件连续上传失败的次数是否满足第二预设条件。
本实施例中,若当前环境使用高可用镜像仓库集群服务,则通过自定义监控服务持续上传检测文件至高可用存储集群,并启动第二监控进程监测检测文件连续上传失败的次数是否满足第二预设条件。具体为是否连续多次监测到检测文件上传失败,其中的第二预设条件,也即连续失败的次数可以自行设定。
步骤S25:若满足,则判定所述高可用存储集群持续处于不可用状态,并将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务。
本实施例中,若满足,则判定高可用存储集群为异常状态,即持续处于不可用状态。自定义监控服务会停止当前节点的高可用镜像仓库集群服务,启动本地的单点镜像仓库服务,并切换监测条件,即切换处于单点镜像仓库服务时的监测条件,以此自动循环。
进一步的,上述将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务之后,还包括:向当前环境的镜像仓库中写入目标数据;其中,所述镜像仓库使用的存储为本地磁盘;触发所述高可用存储集群的写入操作,以便将所述镜像仓库中写入的所述目标数据同步写入至所述高可用存储集群。也即,当体系中高可用存储集群不可用时,对外提供单点镜像仓库服务,此时向镜像仓库中写入目标数据,也会通过mc的双活特性,触发高可用存储集群的写入操作,同步的向高可用镜像仓库集群服务的高可用存储集群写入相同目标数据,保证数据一致性。可以理解的是,本地磁盘为单点镜像仓库服务提供存储服务,在mc的管理下,写入本地磁盘的数据也会同步写入高可用存储集群,保证镜像仓库在高可用模式和单点模式间进行切换时,数据的一致和同步。
另外,需要指出的是,上将所述镜像仓库中写入的所述目标数据同步写入至所述高可用存储集群的过程中,还包括:若监测到所述高可用存储集群不可用,则将所述目标数据写入至预设双活进程,并在监测到所述高可用存储集群可用时,将所述预设双活进程中的所述目标数据异步写入至所述高可用存储集群。可以理解的是,由于当前的高可用存储集群不可用,所以目标数据会在mc的预设双活进程中等待,当监测到高可用存储集群恢复正常后,也即可用时,异步向高可用镜像仓库集群服务的高可用存储集群存储中写入数据,保证数据一致性。
其中,关于上述步骤S21更加具体的处理过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本申请实施例通过自定义监控服务对当前环境中镜像仓库使用的存储进行实时监控,自动的在高可用存储集群和本地磁盘存储间进行自动切换,有效的减少异常,规避风险,从而保证环境基础服务的稳定,降低环境运行过程中出现异常或失败的风险,提高了环境升级的速度、稳定性。并且该方法还提供数据的备份、多副本能力,保证在一端数据丢失后仍存在可用数据,大大的提高了使用效率和数据的可靠性。也即上述方案保证了当前环境中镜像仓库的稳定性、可用性和灾备恢复能力,可以有效防止环境中的特异性、突发性问题对镜像仓库造成的影响。另外,高可用存储集群和本地磁盘的双向映射,通过mc的双活功能,保障本地磁盘数据和高可用存储集群存储数据的一致性、实时性。当镜像仓库在高可用和单点切换时,才能保证镜像数据的完全匹配,在环境发生灾难时可以持续提供外界无察觉的镜像服务。通过上述技术方案,体系运行状态更为稳定,服务输出更为持久,填补了以往镜像服务异常则导致环境无法正常运行的缺陷,创建出更加符合环境运行需求的策略。版本运行、更新、升级过程中涉及到的镜像服务更高效平稳。
参见图5所示,本申请实施例公开了一种提高镜像仓库稳定性的装置,该装置包括:
服务类型确定模块11,用于在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型;
第一监控模块12,用于若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将所述单点镜像仓库服务切换为高可用镜像仓库集群服务;
第二监控模块13,用于若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,若是,则将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务。
可见,本申请在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型;若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将所述单点镜像仓库服务切换为高可用镜像仓库集群服务;若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,若是,则将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务。由此可见,本申请通过自定义监控服务确定当前环境使用的镜像仓库服务类型,并启动对镜像仓库服务类型对应的监控进程监测高可用存储集群是持续处于可用状态还是持续处于不可用状态,再根据监测结果确定是否切换当前的镜像仓库服务类型。也即通过自定义监控服务实时监测高可用存储集群是否可用,能够自动切换镜像仓库服务类型,从而提高了镜像仓库服务的稳定性。并且,通过持续可用或持续不可用的判断条件,能够避免因网络波动、服务器卡顿导致的临时服务异常场景,保证服务体系的稳定运行和场景判断。
图6为本申请实施例提供的一种电子设备的结构示意图。具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的由电子设备执行的提高镜像仓库稳定性的方法中的相关步骤。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统221、计算机程序222及数据223等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是Windows、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的提高镜像仓库稳定性的方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据223除了可以包括电子设备接收到的由外部设备传输进来的数据,也可以包括由自身输入输出接口25采集到的数据等。
进一步的,本申请实施例还公开了一种计算机可读存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现前述任一实施例公开的由提高镜像仓库稳定性的过程中执行的方法步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种提高镜像仓库稳定性的方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种提高镜像仓库稳定性的方法,其特征在于,包括:
在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型;
若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将所述单点镜像仓库服务切换为高可用镜像仓库集群服务;
若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,若是,则将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务;
其中,所述将所述单点镜像仓库服务切换为高可用镜像仓库集群服务之后,还包括:
向当前环境的镜像仓库中写入目标数据;其中,所述镜像仓库使用的存储为所述高可用存储集群;通过mc的双活特性触发本地磁盘的写入操作,以便将所述镜像仓库中写入的所述目标数据同步写入至所述本地磁盘;
所述将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务之后,还包括:
向当前环境的镜像仓库中写入目标数据;其中,所述镜像仓库使用的存储为本地磁盘;通过mc的双活特性触发所述高可用存储集群的写入操作,以便将所述镜像仓库中写入的所述目标数据同步写入至所述高可用存储集群;
所述mc为minio的客户端组件,即minio-client。
2.根据权利要求1所述的提高镜像仓库稳定性的方法,其特征在于,所述通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型,包括:
通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态;
若所述运行状态为运行中,则判定当前环境使用的镜像仓库服务类型为单点镜像仓库服务;
若所述运行状态为未运行,则判定当前环境使用的镜像仓库服务类型为高可用镜像仓库集群服务。
3.根据权利要求1所述的提高镜像仓库稳定性的方法,其特征在于,所述通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,包括:
通过所述自定义监控服务向高可用存储集群持续上传检测文件,并启动第一监控进程监测所述检测文件连续上传成功的次数是否满足第一预设条件;
若满足,则判定所述高可用存储集群持续处于可用状态。
4.根据权利要求1所述的提高镜像仓库稳定性的方法,其特征在于,所述通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,包括:
通过所述自定义监控服务向高可用存储集群持续上传检测文件,并启动第二监控进程监测所述检测文件连续上传失败的次数是否满足第二预设条件;
若满足,则判定所述高可用存储集群持续处于不可用状态。
5.根据权利要求1所述的提高镜像仓库稳定性的方法,其特征在于,所述将所述镜像仓库中写入的所述目标数据同步写入至所述高可用存储集群的过程中,还包括:
若监测到所述高可用存储集群不可用,则将所述目标数据写入至预设双活进程,并在监测到所述高可用存储集群可用时,将所述预设双活进程中的所述目标数据异步写入至所述高可用存储集群。
6.一种提高镜像仓库稳定性的装置,其特征在于,包括:
服务类型确定模块,用于在启动自定义监控服务后,则通过所述自定义监控服务监测本地单点镜像仓库服务的运行状态以确定当前环境使用的镜像仓库服务类型;
第一监控模块,用于若所述镜像仓库服务类型为单点镜像仓库服务,则通过所述自定义监控服务启动第一监控进程监测高可用存储集群是否持续处于可用状态,若是,则将所述单点镜像仓库服务切换为高可用镜像仓库集群服务;
第二监控模块,用于若所述镜像仓库服务类型为高可用镜像仓库集群服务,则通过所述自定义监控服务启动第二监控进程监测所述高可用存储集群是否持续处于不可用状态,若是,则将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务;
其中,将所述单点镜像仓库服务切换为高可用镜像仓库集群服务之后,所述装置,还用于向当前环境的镜像仓库中写入目标数据;其中,所述镜像仓库使用的存储为所述高可用存储集群;通过mc的双活特性触发本地磁盘的写入操作,以便将所述镜像仓库中写入的所述目标数据同步写入至所述本地磁盘;
将所述高可用镜像仓库集群服务切换为所述单点镜像仓库服务之后,所述装置,还用于向当前环境的镜像仓库中写入目标数据;其中,所述镜像仓库使用的存储为本地磁盘;通过mc的双活特性触发所述高可用存储集群的写入操作,以便将所述镜像仓库中写入的所述目标数据同步写入至所述高可用存储集群;
所述mc为minio的客户端组件,即minio-client。
7.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至5任一项所述的提高镜像仓库稳定性的方法的步骤。
8.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的提高镜像仓库稳定性的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211347594.4A CN115695453B (zh) | 2022-10-31 | 2022-10-31 | 一种提高镜像仓库稳定性的方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211347594.4A CN115695453B (zh) | 2022-10-31 | 2022-10-31 | 一种提高镜像仓库稳定性的方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115695453A CN115695453A (zh) | 2023-02-03 |
CN115695453B true CN115695453B (zh) | 2024-08-13 |
Family
ID=85046864
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211347594.4A Active CN115695453B (zh) | 2022-10-31 | 2022-10-31 | 一种提高镜像仓库稳定性的方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115695453B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115220737A (zh) * | 2021-04-19 | 2022-10-21 | 顺丰科技有限公司 | 镜像部署方法、装置、计算机设备和存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7680982B2 (en) * | 2007-02-20 | 2010-03-16 | International Business Machines Corporation | Preservation of cache data following failover |
CN103116661B (zh) * | 2013-03-20 | 2016-01-27 | 广东宜通世纪科技股份有限公司 | 一种数据库的数据处理方法 |
US9507678B2 (en) * | 2014-11-13 | 2016-11-29 | Netapp, Inc. | Non-disruptive controller replacement in a cross-cluster redundancy configuration |
CN108241558A (zh) * | 2016-12-27 | 2018-07-03 | 中移(苏州)软件技术有限公司 | 一种镜像仓库备份装置和方法 |
CN107229539A (zh) * | 2017-05-31 | 2017-10-03 | 郑州云海信息技术有限公司 | 一种用于磁盘镜像高可用集群diskless的处理方法和系统 |
CN111176664A (zh) * | 2019-12-26 | 2020-05-19 | 中国电子科技网络信息安全有限公司 | 一种存储集群设置方法、装置、介质及设备 |
CN111209011A (zh) * | 2019-12-31 | 2020-05-29 | 烽火通信科技股份有限公司 | 一种跨平台的容器云自动化部署系统 |
CN114661519A (zh) * | 2020-12-22 | 2022-06-24 | 国信君和(北京)科技有限公司 | 数据备份方法及装置 |
CN113157392B (zh) * | 2021-04-09 | 2022-10-04 | 上海云轴信息科技有限公司 | 镜像仓库高可用方法及设备 |
CN113760453B (zh) * | 2021-08-04 | 2024-05-28 | 南方电网科学研究院有限责任公司 | 容器镜像分发系统及容器镜像推送、拉取和删除方法 |
CN113900676A (zh) * | 2021-09-24 | 2022-01-07 | 浪潮云信息技术股份公司 | 一种自动升级容器化云平台的方法 |
CN113886021A (zh) * | 2021-10-21 | 2022-01-04 | 郑州云海信息技术有限公司 | 一种镜像备份方法、装置、电子设备及可读存储介质 |
-
2022
- 2022-10-31 CN CN202211347594.4A patent/CN115695453B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115220737A (zh) * | 2021-04-19 | 2022-10-21 | 顺丰科技有限公司 | 镜像部署方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115695453A (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108696581B (zh) | 分布式信息的缓存方法、装置、计算机设备以及存储介质 | |
CN111459749B (zh) | 基于Prometheus的私有云监控方法、装置、计算机设备及存储介质 | |
CN111917846A (zh) | 一种Kafka集群切换方法、装置、系统、电子设备及可读存储介质 | |
US20020152423A1 (en) | Persistent session and data in transparently distributed objects | |
US10476988B2 (en) | Automated configuration support system | |
CN112836152B (zh) | 页面渲染方法、系统、计算机设备及计算机可读存储介质 | |
CN109446178A (zh) | 一种Hadoop对象存储高可用方法、系统、装置及可读存储介质 | |
CN110633046A (zh) | 一种分布式系统的存储方法、装置、存储设备及存储介质 | |
CN114189429B (zh) | 一种服务器集群故障的监测系统、方法、装置及介质 | |
US8621260B1 (en) | Site-level sub-cluster dependencies | |
CN115695453B (zh) | 一种提高镜像仓库稳定性的方法、装置、设备及介质 | |
CN113791798B (zh) | 模型更新方法及装置、计算机存储介质、电子设备 | |
CN109474694A (zh) | 一种基于san存储阵列的nas集群的管控方法及装置 | |
CN117435569A (zh) | 缓存系统动态扩容方法、装置、设备、介质和程序产品 | |
CN112751693A (zh) | 分布式存储系统的数据处理方法、装置及电子设备 | |
CN116192885A (zh) | 高可用集群架构人工智能实验云平台数据处理方法及系统 | |
CN115687026A (zh) | 多节点服务器故障预警方法、装置、设备及介质 | |
KR20210091075A (ko) | 트래픽 조정 방법 및 장치 | |
CN111435320B (zh) | 一种数据处理方法及其装置 | |
CN111858234A (zh) | 一种任务执行方法、装置、设备、介质 | |
CN112882771A (zh) | 应用系统的服务器切换方法及装置、存储介质及电子设备 | |
KR20210112930A (ko) | 가상 네트워크 관리 장치 및 방법 | |
CN111355775A (zh) | CloudStack集群子服务器状态判断方法、装置、设备及存储介质 | |
CN114115718B (zh) | 分布式块存储系统服务质量控制方法、装置、设备及介质 | |
US10708343B2 (en) | Data repository for a distributed processing environment |
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 |