当前位置: 首页 > 专利查询>红帽公司专利>正文

使用部署元数据避免平台和服务中断制造技术

技术编号:32894143 阅读:11 留言:0更新日期:2022-04-07 11:42
一种系统包括簇、存储器以及与所述存储器进行通信的处理器。所述簇包括节点和应用程序编程接口(API)服务器。所述处理器被配置为接收确定所述簇的维护可用性状态的请求。安装在所述簇上的多个应用程序中的每一个是可发现的,并且检索与所述多个应用程序中的每一个相关联的部署元数据。解析所述多个应用程序中的每一个的部署元数据以检索与所述多个应用程序中的每一个相关联的一个或多个安装规则。与所述多个应用程序中的第一应用程序相关联的一个或多个安装规则与所述多个应用程序中的一个或多个安装规则关联,以确定所述第一应用程序的冲突的集合。接下来,基于所述冲突的集合来确定维护可用性状态。合来确定维护可用性状态。合来确定维护可用性状态。

【技术实现步骤摘要】
使用部署元数据避免平台和服务中断


[0001]本公开总体上涉及计算机系统和方法。

技术介绍

[0002]计算机系统可以运行经由服务器或云提供的应用程序或服务。可以在运行时开发和部署应用程序或服务。应用程序实例或服务可以在容器中运行,所述容器可以在物理机或虚拟机上运行。容器可以用于分离计算系统的各个组件。例如,计算系统的不同组件可以在不同容器和/或虚拟机处被执行,所述不同容器和/或虚拟机在计算设备或多个计算设备上执行。对已安装服务和/或应用程序的维护和/或修改通常可以应用在可能不断发展的各种服务器或云环境中。

技术实现思路

[0003]本公开提供了用于分析部署元数据以避免平台和服务中断的新型和创新的系统和方法。在示例中,一种系统包括簇(cluster)、存储器和一个或多个处理器。所述一个或多个处理器与所述存储器进行通信,并且所述簇包括一个或多个节点和应用程序编程接口(API)服务器。所述处理器被配置为接收确定所述簇的维护可用性状态的请求,其中,在所述簇上安装多个应用程序。发现安装在所述簇上的所述多个应用程序中的每一个。检索与所述多个应用程序中的每一个相关联的部署元数据。解析所述多个应用程序中的每一个的部署元数据以检索与所述多个应用程序中的每一个相关联的一个或多个安装规则。将与所述多个应用程序中的第一应用程序相关联的所述一个或多个安装规则和所述多个应用程序中的所述一个或多个安装规则关联,以确定所述第一应用程序的冲突的集合,其中,所述第一应用程序的所述冲突的集合中的每个冲突与和所述第一应用程序有关的潜在中断相关联。接下来,基于所述冲突的集合来确定维护可用性状态。
[0004]在示例中,一种方法包括接收确定簇的维护可用性状态的请求,其中,在所述簇上安装多个应用程序。发现安装在所述簇上的多个应用程序中的每一个,并且检索与所述多个应用程序中的每一个相关联的部署元数据。解析所述多个应用程序中的每一个的部署元数据以检索与所述多个应用程序中的每一个相关联的一个或多个安装规则。将与所述多个应用程序中的第一应用程序相关联的所述一个或多个安装规则和所述多个应用程序中的所述一个或多个安装规则关联,以确定所述第一应用程序的冲突的集合,其中,所述第一应用程序的所述冲突的集合中的每个冲突与和所述第一应用程序有关的潜在中断相关联。接下来,基于所述冲突的集合来确定维护可用性状态。
[0005]在示例中,一种系统包括存储器和一个或多个处理器,其中,所述一个或多个处理器与所述存储器进行通信。所述处理器被配置为接收针对评估部署在簇内的应用程序的安装的请求。接下来,检索与所述应用程序相关联的部署元数据,并且访问数据库,所述数据库包括与所述应用程序的模型安装相关联的一个或多个模型安装规则。解析所述部署元数据以检索所述应用程序的一个或多个安装规则。将所述应用程序的所述一个或多个安装规
则与和所述应用程序的所述模型安装相关联的所述一个或多个安装规则进行比较,以确定所述应用程序与所述应用程序的所述模型安装之间的差异的集合。随后,基于所述差异的集合来确定部署状态。
[0006]在下面的具体实施方式和附图中描述并理解所公开的方法和装置的附加特征和优点。鉴于附图和描述,本文描述的特征和优点不是全部包含的,并且具体地,许多其它特征和优点对于本领域的普通技术人员将是显而易见的。此外,应当注意,在说明书中使用的语言主要是出于可读性和指导性目的而选择的,而不是限制本专利技术主题的范围。
附图说明
[0007]图1示出了根据本公开的一个或多个方面的示例性计算系统的高级组件图。
[0008]图2示出了根据本公开的示例性实施例的用于确定计算系统的维护可用性的示例性方法的流程图。
[0009]图3示出了根据本公开的实施例的评估应用程序的安装的示例性方法的流程图。
[0010]图4A和4B示出了根据本公开的实施例的评估计算系统内的应用程序的部署的示例性方法的流程图。
[0011]图5示出了根据本公开的示例性实施例的用于确定计算系统的每个组件的维护可用性的示例性系统的框图。
[0012]图6示出了根据本公开的示例性实施例的用于评估计算系统内的应用程序的安装的示例性系统的框图。
具体实施方式
[0013]公开了用于实施用于基于部署元数据来避免平台和服务中断和/或停机时间的系统和方法的技术。通常,应用程序平台(诸如OpenShift和Kubernetes)允许将来自各种源的各种服务和应用程序部署到共享平台上。通常,在共享平台上维护和管理服务和应用程序可能很困难,因为没有单个工具、接口和/或通用实施方式来帮助识别已部署的应用程序和服务,这可能会由于平台维护和/或故障而中断。通常,共享平台的管理是手动过程,其中每个应用程序或服务都需要单独的关注和/或分析,以确定一个或多个应用程序是否容易受到与共享平台内每个应用程序的部署相关的潜在中断的影响。
[0014]如本文公开的各种示例中所述,为了推进共享平台的自动化和/或管理并避免对平台和服务的中断,本文公开的系统和方法有利地实施部署元数据分析工具。部署元数据分析工具可操作以发现部署在平台上的现有服务和/或应用程序,检索相关元数据,分析相关元数据以评估应用程序的承受中断的能力以及基于应用程序的配置而输出潜在问题。在各种实例,所描述的部署元数据分析工具可以体现在独立工具内和/或嵌入在平台内部署的工具内。在许多实例中,平台可以与簇和/或计算系统互换使用。
[0015]在各种实例中,在平台管理期间,可以手动或自动运行部署元数据分析工具,以检查和收集平台上已部署的服务和应用程序部署元数据。分析元数据以确定在正常维护操作和/或平台中断期间,部署在平台上的应用程序和/或服务是否易于中断。
[0016]例如,第一种场景是在共享平台上安装了第一应用程序和第二应用程序。在这个实例中,第一应用程序的部署元数据描述的副本数量大于一,并且平台已自动确保每个副
本位于不同的节点上(例如,位于第一节点和第二节点上,其中第一节点和第二节点在同一网荚(pod)中)。第二应用程序的部署元数据描述的副本数量等于一,并且副本安装在第一节点上。当分析用于第一应用程序和第二应用程序的这种配置时,可以确定在第一节点上执行维护将会对第二应用程序的可用性产生负面影响。所述工具的输出可以用于通知平台管理员第二应用程序易于中断,并且维护可能应推迟直到通知第二应用程序的所有者并改变其应用程序以具有更多副本或同意中断第二应用程序是可接受的。
[0017]在第二种场景中,使用上述相同的配置,考虑第一应用程序是否具有允许对第一应用程序进行零次中断(即,没有一个副本可以脱机)的POD中断预算(POD DisruptionBudget(PDB))。在这种情况下,由于PDB,系统维护将无法在第一节点或第二节点上进行。这种配置对平台管理员和应用程序所有者两者造成非期望后果,因为无法定期维护平台,并且应用程序既无法更新,也无法承受任何类型的中断。部署元数据分析工具可操作以通知平台管理员:由于第一应用程序的部本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种系统,包括:簇,所述簇包括一个或多个节点和应用程序编程接口API服务器;存储器;以及一个或多个处理器,与所述存储器进行通信,其中,所述处理器被配置为:接收确定所述簇的维护可用性状态的请求,其中,在所述簇上安装多个应用程序;发现安装在所述簇上的所述多个应用程序中的每一个;检索与所述多个应用程序中的每一个相关联的部署元数据;解析所述多个应用程序中的每一个的所述部署元数据以检索与所述多个应用程序中的每一个相关联的一个或多个安装规则;将与所述多个应用程序中的第一应用程序相关联的所述一个或多个安装规则和所述多个应用程序中的所述一个或多个安装规则进行关联,以确定所述第一应用程序的冲突的集合,其中,所述第一应用程序的所述冲突的集合中的每个冲突与和所述第一应用程序有关的潜在中断相关联;以及基于所述冲突的集合来确定维护可用性状态。2.根据权利要求1所述的系统,其中,所述关联包括:确定与所述第一应用程序相关联的所述一个或多个安装规则的哪些部分与所述多个应用程序中的其它应用程序中的一个或多个相匹配。3.根据权利要求1所述的系统,其中,所述关联包括:确定所述簇内的第一节点的停机时间是否对所述第一应用程序产生影响。4.根据权利要求1所述的系统,其中,所述关联包括:确定所述簇内的、并且与所述多个应用程序中的第二应用程序相关联的每个节点的停机时间是否对所述第一应用程序产生影响。5.根据权利要求1所述的系统,其中,所述处理器还被配置为输出所述维护可用性状态和所述冲突的集合。6.根据权利要求1所述的系统,其中,所述维护可用性状态是可用的。7.根据权利要求1所述的系统,其中,所述维护可用性状态是不可用的。8.根据权利要求1所述的系统,其中,所述处理器还被配置为:修改所述多个应用程序中的所述一个或多个中的一个应用程序的一个或多个规则,以修改所述应用程序的所述维护可用性状态。9.一种方法,包括:接收确定簇的维护可用性状态的请求,其中,在所述簇上安装多个应用程序;发现安装在所述簇上的所述多个应用程序中的每一个;检索与所述多个应用程序中的每一个相关联的部署元数据;解析所述多个应用程序中的每一个的所述部署元数据以检索与所述多个应用程序中的每一个相关联的一个或多个安装规则;将与所述多个应用程序中的第一应用程序相关联的所述一个或多个安装规则和所述多个应用程序中的所述一个或多个安装规...

【专利技术属性】
技术研发人员:M古基诺
申请(专利权)人:红帽公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1