CN113608831B - 一种插件实例管理方法、系统、存储介质及设备 - Google Patents
一种插件实例管理方法、系统、存储介质及设备 Download PDFInfo
- Publication number
- CN113608831B CN113608831B CN202110808884.3A CN202110808884A CN113608831B CN 113608831 B CN113608831 B CN 113608831B CN 202110808884 A CN202110808884 A CN 202110808884A CN 113608831 B CN113608831 B CN 113608831B
- Authority
- CN
- China
- Prior art keywords
- instance
- plug
- template
- list
- cluster
- 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
- 238000007726 management method Methods 0.000 title description 39
- 230000004044 response Effects 0.000 claims abstract description 42
- 238000000034 method Methods 0.000 claims abstract description 41
- 230000002159 abnormal effect Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012790 confirmation Methods 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 6
- 241000380131 Ammophila arenaria Species 0.000 description 5
- 238000012217 deletion Methods 0.000 description 5
- 230000037430 deletion Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种插件实例管理方法、系统、存储介质及设备,方法包括:从数据库中获取模板列表,并确认模板列表中的各模板是否分别存在于容器平台业务层的模板仓库中;响应于各模板均存在于模板仓库中,在数据库的插件实例列表中查询各集群对应的插件实例,并判断各模板是否分别与插件实例列表中的各集群对应的插件实例对应;响应于有模板没有对应的插件实例,为该模板建立虚拟插件实例并查看其对应的集群中是否有相应组件;响应于该模板对应的集群中有相应组件,将该虚拟插件实例写入插件实例列表。本发明使得实际存在的插件实例能够与数据库的插件实例列表保持一致,有利于多集群系统中插件实例的管理。
Description
技术领域
本发明涉及云平台技术领域,尤其涉及一种插件实例管理方法、系统、存储介质及设备。
背景技术
在云平台的系统中,插件是系统的基本功能。插件是通过Helm来实现的,Helm是Kubernetes的包管理工具,包管理工具能快速查找、下载和安装软件包,Helm能够将一组K8S资源打包统一管理,是Kubernetes查找、共享和使用、构建软件的最佳方式。Helm的打包格式叫做Chart(即插件),Chart是一系列文件,它描述了一组相关的k8s集群资源。使用helm install命令在Kubernetes集群中部署的Chart称为Release,也叫做插件实例。插件实例就是容器平台中真正要使用的应用,通过安装好的插件实例,可以实现容器平台的众多功能。
容器平台中,对管理集群和被管理集群来说,插件同步都是一件非常重要的功能。如一个集群,如果已经安装了一些插件,当其被接入容器平台后,就被容器平台进行纳管,此时容器平台的管理集群可以对被管理集群进行管理,如安装插件,使用插件实例等。如果被管理集群已经安装过插件了,则再次安装插件就会造成冲突而失败,并且被管理集群上的插件,如果已经有了,那么管理集群理应即开即用。因此,需要一种插件同步机制。Helm本身没有同步机制,Kubernetes也没有对多集群的插件进行自动同步的方法,目前多集群管理还没有一个统一的方案,但集群本身是可以管理自身的插件的。因此,需要一个可靠的针对多集群的插件实例管理方法。
发明内容
有鉴于此,本发明的目的在于提出一种插件实例管理方法、系统、存储介质及设备,用以解决现有技术中对于多集群系统插件管理不佳的问题。
基于上述目的,本发明提供了一种插件实例管理方法,包括以下步骤:
从数据库中获取模板列表,并确认模板列表中的各模板是否分别存在于容器平台业务层的模板仓库中;
响应于各模板均存在于模板仓库中,在数据库的插件实例列表中查询各集群对应的插件实例,并判断各模板是否分别与插件实例列表中的各集群对应的插件实例对应;
响应于有模板没有对应的插件实例,为该模板建立虚拟插件实例并查看其对应的集群中是否有相应组件;
响应于该模板对应的集群中有相应组件,将该虚拟插件实例写入插件实例列表。
在一些实施例中,响应于该模板对应的集群中有相应组件,将该虚拟插件实例写入插件实例列表包括:响应于该模板对应的集群中有相应组件且该组件状态异常,将该虚拟插件实例写入插件实例列表并为其设置状态异常的标识。
在一些实施例中,方法还包括:响应于该模板对应的集群中没有相应组件,删除该虚拟插件实例。
在一些实施例中,方法还包括:响应于有插件实例没有对应的模板,将该插件实例从插件实例列表中删除。
在一些实施例中,方法还包括:响应于有模板不存在于模板仓库中,从插件实例列表中删除该模板对应的插件实例。
在一些实施例中,方法还包括:查询各集群的状态,并判断是否有集群状态异常;响应于有集群状态异常,从插件实例列表中删除该集群对应的插件实例。
在一些实施例中,方法还包括:从插件实例列表中查询状态正常的集群对应的插件实例,并在容器平台业务层中查询该插件实例的相应组件是否存在;响应于相应组件不存在,将该组件对应的该插件实例从插件实例列表中删除。
本发明的另一方面,还提供了一种插件实例管理系统,包括:
模板确认模块,配置用于从数据库中获取模板列表,并确认模板列表中的各模板是否分别存在于容器平台业务层的模板仓库中;
判断模块,配置用于响应于各模板均存在于模板仓库中,在数据库的插件实例列表中查询各集群对应的插件实例,并判断各模板是否分别与插件实例列表中的各集群对应的插件实例对应;
虚拟插件实例建立模块,配置用于响应于有模板没有对应的插件实例,为该模板建立虚拟插件实例并查看其对应的集群中是否有相应组件;以及
插件实例写入模块,配置用于响应于该模板对应的集群中有相应组件,将该虚拟插件实例写入插件实例列表。
本发明的又一方面,还提供了一种计算机可读存储介质,存储有计算机程序指令,该计算机程序指令被执行时实现上述任意一项方法。
本发明的再一方面,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该计算机程序被处理器执行时执行上述任意一项方法。
本发明至少具有以下有益技术效果:
1.本发明中,容器平台业务层的模板仓库中具有实际存在的模板,通过确认模板列表中的模板是否存在于模板仓库中,可以确认数据库中模板列表的正确性;由于插件实例是基于模板得到的,因此判断各模板是否分别与插件实例列表中的各集群对应的插件实例对应;在有模板没有对应的插件实例的情况下,通过查看对应集群中是否有相应组件来确定是否实际存在插件实例,从而将创建的虚拟插件实例写入数据库的插件实例列表中;
2.本发明使得实际存在的插件实例能够与数据库的插件实例列表保持一致,使容器平台的各模块在使用插件实例时能够正常运行,有利于多集群系统中插件实例的管理,避免了插件实例异常导致的系统问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为根据本发明实施例提供的插件实例管理方法的示意图;
图2为根据本发明实施例提供的插件实例管理系统的示意图;
图3为根据本发明实施例提供的实现插件实例管理方法的计算机可读存储介质的示意图;
图4为根据本发明实施例提供的执行插件实例管理方法的计算机设备的硬件结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称的非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备固有的其他步骤或单元。
基于上述目的,本发明实施例的第一个方面,提出了一种插件实例管理方法的实施例。图1示出的是本发明提供的插件实例管理方法的实施例的示意图。如图1所示,本发明实施例包括如下步骤:
步骤S10、从数据库中获取模板列表,并确认模板列表中的各模板是否分别存在于容器平台业务层的模板仓库中;
步骤S20、响应于各模板均存在于模板仓库中,在数据库的插件实例列表中查询各集群对应的插件实例,并判断各模板是否分别与插件实例列表中的各集群对应的插件实例对应;
步骤S30、响应于有模板没有对应的插件实例,为该模板建立虚拟插件实例并查看其对应的集群中是否有相应组件;
步骤S40、响应于该模板对应的集群中有相应组件,将该虚拟插件实例写入插件实例列表。
本发明实施例中,容器平台业务层的模板仓库中具有实际存在的模板,通过确认模板列表中的模板是否存在于模板仓库中,可以确认数据库中模板列表的正确性;由于插件实例是基于模板得到的,因此判断各模板是否分别与插件实例列表中的各集群对应的插件实例对应;在有模板没有对应的插件实例的情况下,通过查看对应集群中是否有相应组件来确定是否实际存在插件实例,从而将创建的虚拟插件实例写入数据库的插件实例列表中;本发明实施例使得实际存在的插件实例能够与数据库的插件实例列表保持一致,使容器平台的各模块在使用插件实例时能够正常运行,有利于多集群系统中插件实例的管理,避免了插件实例异常导致的系统问题。
本实施例中,插件实例列表是显示在用户界面端的,其提供给用户查看插件实例,容器平台有多个功能,其中插件管理是其基本功能之一。插件管理包括插件模板与插件实例列表,插件实例列表展示的是当前管理集群及被管理集群的所有插件实例。插件管理的控制台,用于提供给用户查看插件实例列表,插件实例列表直接从插件管理的数据库中获取,插件实例列表仅与数据库交互。因此,数据库中的数据需要被实时同步。提供给用户查看插件实例列表,容器平台所有使用插件实例的模块,都需要通过此处的接口使用,必须保证此处的插件实例状态是准确的。
通常,每个插件实例都包含有多个组件,组件的类型如DemonSet、Deployment、StatefulSet等,插件安装完成后,插件的组件都处于稳定状态,即根据其组件的Status判断其是否处于正常状态。对于已部署了插件实例的集群,如果一个插件实例的必要组件处理正常状态,则可以认为该插件实例已在当前集群部署,可以作为集群的已安装插件显示出来。
插件的模板是静态模板,存放在Harbor仓库中。插件实例是根据模板安装出来的应用,其分布于各个被管理集群中,并且插件实例的安装也是一件比较耗时的过程,因此在插件安装完成后,需要将已存在的插件实例同步给容器平台。
在一些实施例中,响应于该模板对应的集群中有相应组件,将该虚拟插件实例写入插件实例列表包括:响应于该模板对应的集群中有相应组件且该组件状态异常,将该虚拟插件实例写入插件实例列表,并为其设置状态异常的标识。
本实施例中,组件状态异常可以通过提示用户来使用户进行简单修复,因此即使存在状态异常的组件,也表示对应的集群中有实际存在的插件实例,仍然需要将虚拟插件实例写入插件实例列表中。
在一些实施例中,方法还包括:响应于该模板对应的集群中没有相应组件,删除该虚拟插件实例。
本实施例中,如果该模板对应的集群中没有相应组件,则表示该集群中实际上不存在插件,则将建立的虚拟插件实例删除。有一种极端的情况,就是刚导入容器平台的集群,此时数据库中该集群一条插件实例都没有,此时根据模板信息,临时创建一个虚拟的插件实例,拿该实例去集群中检索对应组件,若组件存在,则将该虚拟插件实例写入数据库中,若存在但组件有异常,则将实例置位异常状态并写入数据库,若无任何组件,则删除该虚拟插件实例。
在一些实施例中,方法还包括:响应于有插件实例没有对应的模板,将该插件实例从插件实例列表中删除。
本实施例中,若插件实例列表中有插件实例没有对应的模板,由于实际存在的插件是基于模板得到的,因此需要在插件实例列表中将该插件实例删除。
在一些实施例中,方法还包括:响应于有模板不存在于模板仓库中,从插件实例列表中删除该模板对应的插件实例。
本实施例中,由于模板仓库中的模板是实际存在的,因此,若模板列表中的模板不存在于模板仓库中,需要将其对应的插件实例列表中的插件实例删除。
在另一实施例中,若模板或模板仓库有异常,则将数据库的插件实例列表中该模板或模板仓库对应的插件实例删除。
在一些实施例中,方法还包括:查询各集群的状态,并判断是否有集群状态异常;响应于有集群状态异常,从插件实例列表中删除该集群对应的插件实例。
在一些实施例中,方法还包括:从插件实例列表中查询状态正常的集群对应的插件实例,并在容器平台业务层中查询该插件实例的相应组件是否存在;响应于相应组件不存在,将该组件对应的该插件实例从插件实例列表中删除。
本实施例中,集群包括管理集群和被管理集群。以被管理集群为例,因容器平台管理了众多集群,被管理集群上也存在众多插件实例,这些实例有可能在数据库中,也有可能不存在于数据库,如果集群刚被管理,则数据库中肯定不存在这个集群的任何实例,此时查询被管理集群列表,针对每一个集群,对集群异常的直接删除数据库中其下的插件实例,然后从数据库查询出集群下的插件实例。
在另一实施例中,是在容器平台中起一个定时任务,定时去执行各个方法,系统一旦运行,定时任务就会一直执行下去,定时任务的执行频率是可以设置的,综合集群的检索速度及插件使用频率,定时任务的时间根据集群的规模及插件的最大查询时间共同约定,默认设置为30秒执行一次所有的同步方法。但在某些特殊情况下可以延长同步时间,如在集群列表为空或者模板列表为空的情况下,每5分钟执行一次同步,因无集群或无模板时不会有实例,则无需浪费资源进行同步查询,以节省资源,减轻系统压力。
经过上述实施例的方法,可将所有集群的插件实例同步到数据库中。完成一次插件实例同步,都会确认当前时刻的插件实例状态,可以保证当前插件实例的状态都是准确的,以保证容器平台其他模块使用插件的正确性。此外,每当有集群新加入或者移除时,都会直接触发同步而不用等到定时任务,这是为了尽快确定插件实例状态。该方法保证了集群下插件实例的状态正确性,及时更新插件实例的最新状态,保证用户看到的插件实例始终与容器平台的业务层一致,使容器平台各模块能够正常稳定地使用插件,提高了插件的可用率和有效性。
本发明实施例的第二个方面,还提供了一种插件实例管理系统。图2示出的是本发明提供的插件实例管理系统的实施例的示意图。如图2所示,一种插件实例管理系统包括:模板确认模块10,配置用于从数据库中获取模板列表,并确认模板列表中的各模板是否分别存在于容器平台业务层的模板仓库中;判断模块20,配置用于响应于各模板均存在于模板仓库中,在数据库的插件实例列表中查询各集群对应的插件实例,并判断各模板是否分别与插件实例列表中的各集群对应的插件实例对应;虚拟插件实例建立模块30,配置用于响应于有模板没有对应的插件实例,为该模板建立虚拟插件实例并查看其对应的集群中是否有相应组件;以及插件实例写入模块40,配置用于响应于该模板对应的集群中有相应组件,将该虚拟插件实例写入插件实例列表。
在一些实施例中,插件实例写入模块40进一步配置用于响应于该模板对应的集群中有相应组件且该组件状态异常,将该虚拟插件实例写入插件实例列表并为其设置状态异常的标识。
在一些实施例中,系统还包括第一删除模块,配置用于响应于该模板对应的集群中没有相应组件,删除该虚拟插件实例。
在一些实施例中,系统还包括第二删除模块,配置用于响应于有插件实例没有对应的模板,将该插件实例从插件实例列表中删除。
在一些实施例中,系统还包括第三删除模块,配置用于响应于有模板不存在于模板仓库中,从插件实例列表中删除该模板对应的插件实例。
在一些实施例中,系统还包括第四删除模块,配置用于查询各集群的状态,并判断是否有集群状态异常;响应于有集群状态异常,从插件实例列表中删除该集群对应的插件实例。
在一些实施例中,系统还包括第五删除模块,配置用于从插件实例列表中查询状态正常的集群对应的插件实例,并在容器平台业务层中查询该插件实例的相应组件是否存在;响应于相应组件不存在,将该组件对应的该插件实例从插件实例列表中删除。
本发明实施例的插件实例管理系统,在容器平台业务层的模板仓库中具有实际存在的模板,通过确认模板列表中的模板是否存在于模板仓库中,可以确认数据库中模板列表的正确性;由于插件实例是基于模板得到的,因此判断各模板是否分别与插件实例列表中的各集群对应的插件实例对应;在有模板没有对应的插件实例的情况下,通过查看对应集群中是否有相应组件来确定是否实际存在插件实例,从而将创建的虚拟插件实例写入数据库的插件实例列表中;本发明实施例使得实际存在的插件实例能够与数据库的插件实例列表保持一致,使容器平台的各模块在使用插件实例时能够正常运行,有利于多集群系统中插件实例的管理,避免了插件实例异常导致的系统问题。
本发明实施例的第三个方面,还提供了一种计算机可读存储介质,图3示出了根据本发明实施例提供的实现插件实例管理方法的计算机可读存储介质的示意图。如图3所示,计算机可读存储介质3存储有计算机程序指令31,该计算机程序指令31可以被处理器执行。该计算机程序指令31被执行时实现如下步骤:
从数据库中获取模板列表,并确认模板列表中的各模板是否分别存在于容器平台业务层的模板仓库中;
响应于各模板均存在于模板仓库中,在数据库的插件实例列表中查询各集群对应的插件实例,并判断各模板是否分别与插件实例列表中的各集群对应的插件实例对应;
响应于有模板没有对应的插件实例,为该模板建立虚拟插件实例并查看其对应的集群中是否有相应组件;
响应于该模板对应的集群中有相应组件,将该虚拟插件实例写入插件实例列表。
在一些实施例中,响应于该模板对应的集群中有相应组件,将该虚拟插件实例写入插件实例列表包括:响应于该模板对应的集群中有相应组件且该组件状态异常,将该虚拟插件实例写入插件实例列表并为其设置状态异常的标识。
在一些实施例中,方法还包括:响应于该模板对应的集群中没有相应组件,删除该虚拟插件实例。
在一些实施例中,方法还包括:响应于有插件实例没有对应的模板,将该插件实例从插件实例列表中删除。
在一些实施例中,方法还包括:响应于有模板不存在于模板仓库中,从插件实例列表中删除该模板对应的插件实例。
在一些实施例中,方法还包括:查询各集群的状态,并判断是否有集群状态异常;响应于有集群状态异常,从插件实例列表中删除该集群对应的插件实例。
在一些实施例中,方法还包括:从插件实例列表中查询状态正常的集群对应的插件实例,并在容器平台业务层中查询该插件实例的相应组件是否存在;响应于相应组件不存在,将该组件对应的该插件实例从插件实例列表中删除。
应当理解,在相互不冲突的情况下,以上针对根据本发明的插件实例管理方法阐述的所有实施方式、特征和优势同样地适用于根据本发明的插件实例管理系统和存储介质。
本发明实施例的第四个方面,还提供了一种计算机设备,包括存储器402和处理器401,该存储器中存储有计算机程序,该计算机程序被该处理器执行时实现上述任意一项实施例的方法。
如图4所示,为本发明提供的执行插件实例管理方法的计算机设备的一个实施例的硬件结构示意图。以如图4所示的计算机设备为例,在该计算机设备中包括一个处理器401以及一个存储器402,并还可以包括:输入装置403和输出装置404。处理器401、存储器402、输入装置403和输出装置404可以通过总线或者其他方式连接,图4中以通过总线连接为例。输入装置403可接收输入的数字或字符信息,以及产生与插件实例管理系统的用户设置以及功能控制有关的键信号输入。输出装置404可包括显示屏等显示设备。
存储器402作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的插件实例管理方法对应的程序指令/模块。存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储插件实例管理方法的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至本地模块。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器401通过运行存储在存储器402中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的插件实例管理方法。
最后需要说明的是,本文的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。作为例子而非限制性的,非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)或快闪存储器。易失性存储器可以包括随机存取存储器(RAM),该RAM可以充当外部高速缓存存储器。作为例子而非限制性的,RAM可以以多种形式获得,比如同步RAM(DRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDRSDRAM)、增强SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、以及直接Rambus RAM(DRRAM)。所公开的方面的存储设备意在包括但不限于这些和其它合适类型的存储器。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种插件实例管理方法,其特征在于,包括以下步骤:
从数据库中获取模板列表,并确认所述模板列表中的各模板是否分别存在于容器平台业务层的模板仓库中;
响应于各模板均存在于所述模板仓库中,在所述数据库的插件实例列表中查询各集群对应的插件实例,并判断各模板是否分别与所述插件实例列表中的各集群对应的插件实例对应;
响应于有模板没有对应的插件实例,为所述模板建立虚拟插件实例并查看其对应的集群中是否有相应组件;
响应于所述模板对应的集群中有相应组件,将所述虚拟插件实例写入所述插件实例列表。
2.根据权利要求1所述的方法,其特征在于,响应于所述模板对应的集群中有相应组件,将所述虚拟插件实例写入所述插件实例列表包括:
响应于所述模板对应的集群中有相应组件且所述组件状态异常,将所述虚拟插件实例写入所述插件实例列表并为其设置状态异常的标识。
3.根据权利要求1所述的方法,其特征在于,还包括:
响应于所述模板对应的集群中没有相应组件,删除所述虚拟插件实例。
4.根据权利要求1所述的方法,其特征在于,还包括:
响应于有插件实例没有对应的模板,将所述插件实例从所述插件实例列表中删除。
5.根据权利要求1所述的方法,其特征在于,还包括:
响应于有模板不存在于所述模板仓库中,从所述插件实例列表中删除所述模板对应的插件实例。
6.根据权利要求1所述的方法,其特征在于,还包括:
查询各集群的状态,并判断是否有集群状态异常;
响应于有集群状态异常,从所述插件实例列表中删除所述集群对应的插件实例。
7.根据权利要求6所述的方法,其特征在于,还包括:
从所述插件实例列表中查询状态正常的所述集群对应的插件实例,并在所述容器平台业务层中查询所述插件实例的相应组件是否存在;
响应于所述相应组件不存在,将所述组件对应的所述插件实例从所述插件实例列表中删除。
8.一种插件实例管理系统,其特征在于,包括:
模板确认模块,配置用于从数据库中获取模板列表,并确认所述模板列表中的各模板是否分别存在于容器平台业务层的模板仓库中;
判断模块,配置用于响应于各模板均存在于所述模板仓库中,在所述数据库的插件实例列表中查询各集群对应的插件实例,并判断各模板是否分别与所述插件实例列表中的各集群对应的插件实例对应;
虚拟插件实例建立模块,配置用于响应于有模板没有对应的插件实例,为所述模板建立虚拟插件实例并查看其对应的集群中是否有相应组件;以及
插件实例写入模块,配置用于响应于所述模板对应的集群中有相应组件,将所述虚拟插件实例写入所述插件实例列表。
9.一种计算机可读存储介质,其特征在于,存储有计算机程序指令,所述计算机程序指令被执行时实现如权利要求1-7任意一项所述的方法。
10.一种计算机设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时执行如权利要求1-7任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110808884.3A CN113608831B (zh) | 2021-07-16 | 2021-07-16 | 一种插件实例管理方法、系统、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110808884.3A CN113608831B (zh) | 2021-07-16 | 2021-07-16 | 一种插件实例管理方法、系统、存储介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113608831A CN113608831A (zh) | 2021-11-05 |
CN113608831B true CN113608831B (zh) | 2022-05-03 |
Family
ID=78304781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110808884.3A Active CN113608831B (zh) | 2021-07-16 | 2021-07-16 | 一种插件实例管理方法、系统、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113608831B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114968406B (zh) * | 2022-05-27 | 2023-10-13 | 北京青云科技股份有限公司 | 一种插件管理方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104363290A (zh) * | 2014-11-19 | 2015-02-18 | 上海龙晶科技有限公司 | 基于插件形式在上位机中实现跨协议组网的方法 |
CN110134466A (zh) * | 2018-02-02 | 2019-08-16 | 北京三星通信技术研究有限公司 | 信息处理方法和终端设备 |
CN112883695A (zh) * | 2019-11-29 | 2021-06-01 | 比亚迪股份有限公司 | 生成报表模板和显示数据报表的方法、装置、设备和介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140359509A1 (en) * | 2013-05-31 | 2014-12-04 | Alp Sinan Baran | Templates |
-
2021
- 2021-07-16 CN CN202110808884.3A patent/CN113608831B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104363290A (zh) * | 2014-11-19 | 2015-02-18 | 上海龙晶科技有限公司 | 基于插件形式在上位机中实现跨协议组网的方法 |
CN110134466A (zh) * | 2018-02-02 | 2019-08-16 | 北京三星通信技术研究有限公司 | 信息处理方法和终端设备 |
CN112883695A (zh) * | 2019-11-29 | 2021-06-01 | 比亚迪股份有限公司 | 生成报表模板和显示数据报表的方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113608831A (zh) | 2021-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107608689B (zh) | 客户端上应用程序的更新方法、装置及电子设备 | |
CN110825420B (zh) | 分布式集群的配置参数更新方法、装置、设备及存储介质 | |
CN107896162B (zh) | 监控系统的部署方法、装置、计算机设备及存储介质 | |
CN110389766B (zh) | HBase容器集群部署方法、系统、设备及计算机可读存储介质 | |
CN111857777B (zh) | 基于双芯智能电表的系统更新方法、装置和计算机设备 | |
CN107294750B (zh) | 一种云集群能自识别的分布配置管理方法和装置 | |
CN113626286A (zh) | 多集群实例处理方法、装置、电子设备及存储介质 | |
CN112799688A (zh) | 容器应用内软件包安装方法、装置、计算机设备及介质 | |
CN116257438A (zh) | 接口测试用例的更新方法及相关设备 | |
CN110716943B (zh) | 缺失数据补录方法、装置、计算机设备及存储介质 | |
CN111240892A (zh) | 数据备份方法及装置 | |
CN113608831B (zh) | 一种插件实例管理方法、系统、存储介质及设备 | |
CN113805965B (zh) | 一种外部插件安装的方法、装置、设备及可读介质 | |
CA3130314A1 (en) | Order state unified management method and device, computer equipment and storage medium | |
CN114356504A (zh) | 集群中数据迁移方法、装置、电子设备和存储介质 | |
US9235437B2 (en) | Method and integration component for integrating OSGi environments into a Service-oriented Architecture | |
CN110674153B (zh) | 一种数据一致性检测方法、装置及电子设备 | |
CN106713464B (zh) | 一种企业服务总线的服务管理方法及装置 | |
CN112148597B (zh) | 一种消除iOS设备授权对话框的方法、测试方法及存储介质 | |
CN108563514A (zh) | 访问应用配置服务的方法、应用和电子设备 | |
CN110968888B (zh) | 一种数据处理方法及装置 | |
CN114077587A (zh) | 基于规则引擎的业务处理方法、规则引擎、介质和设备 | |
CN112738181A (zh) | 集群外部ip接入的方法、装置及服务器 | |
CN112068899A (zh) | 插件加载方法、装置、电子设备及存储介质 | |
CN111464395A (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 |