CN114730271A - 短期Linux容器的事后图像和体积查看 - Google Patents

短期Linux容器的事后图像和体积查看 Download PDF

Info

Publication number
CN114730271A
CN114730271A CN202080079847.7A CN202080079847A CN114730271A CN 114730271 A CN114730271 A CN 114730271A CN 202080079847 A CN202080079847 A CN 202080079847A CN 114730271 A CN114730271 A CN 114730271A
Authority
CN
China
Prior art keywords
short
term
linux container
container
configuration
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
Application number
CN202080079847.7A
Other languages
English (en)
Inventor
理查德·雷音德尔斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN114730271A publication Critical patent/CN114730271A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开的示例提供一种用于短期Linux容器(110)的事后图像查看方法的方法、系统(100)和计算机程序产品(300)。在本公开的一个示例中,用于短期Linux容器的事后图像查看方法包括:首先指导在容器管理系统(100)中创建短期Linux容器;并且将初始配置(140A)应用于短期Linux容器。此后,该方法包括:检测短期Linux容器的终止。最后,响应于所述终止,该方法包括:对短期Linux容器的配置(140B)进行快照;将初始配置与快照配置进行比较;以及,在容器管理显示(220)中显示差异列表(150)。

Description

短期Linux容器的事后图像和体积查看
技术领域
本公开涉及短期Linux容器的管理,更具体地,涉及向短期Linux容器的配置的应用的管理。
背景技术
通常,计算机程序在计算机裸机上的操作系统环境中执行,其中操作系统处理计算机程序的程序指令并提供对计算机资源的适度访问。然而,在现代计算时代,在同一台计算机内执行多个不同的程序已成为一项基本要求。为此,虚拟化是一种技术,它允许在不同的隔离虚拟机(称为“客户”并由称为“管理程序”的监督进程管理)中执行不同的计算机程序实例。每个虚拟机与其它虚拟机隔离,使得在对应虚拟机内执行的计算机程序的每个实例保持与相同程序或其它程序的其它实例完全隔离。
然而,虚拟化的使用并非没有后果。作为客户操作系统的每个虚拟机在其本身中支持能够承载(host)对应计算机程序实例的执行的操作系统的操作。如将理解的,在单个计算系统中的对应虚拟机内执行的多个不同操作系统会消耗计算系统的大量资源,从而影响它们各自虚拟机中的所有主机应用程序的执行。
为了解决虚拟化的过度资源消耗,容器化经常被用作合适的替代品——尤其是在单个计算机程序的多个实例将被部署在同一主机计算系统中的情况下。与虚拟化不同,在容器化中,没有在每个容器中部署单独的操作系统。因此,容器化需要较少的资源消耗,因此实现对于在容器化的主机计算系统中执行的计算机程序的所有实例更高的操作性能。即便如此,像虚拟化环境一样,在容器化环境中,每个容器都必须针对主机计算系统的底层资源进行配置,底层资源例如是允许的存储器使用、处理器使用、持久存储和访问控制等。
无论是在虚拟化环境还是容器化环境中,管理多个容器化计算系统内的多个容器的配置都提出了巨大的挑战。为了管理容器化主机环境的协调配置,已经开发了定义不同配置的标准化方法,使得可以简单地参考配置定义来配置容器,并且使得可以将容器的配置表示为定义。但是,了解如何配置容器以及是否允许偏离容器配置需要人工干预。在单个甚至少数几个容器的上下文中,这些都是可以管理的。但是,在数十、数百或数千个容器的情况下,手动管理不同容器中的配置变化几乎是不可能的。
发明内容
本公开的实现方式解决了本领域在容器配置管理方面的缺陷,并提供了一种新颖且非显而易见的方法、系统和计算机程序产品,以用于短期Linux容器的事后图像查看方法。
在本公开的一个示例中,一种用于短期Linux容器的事后图像查看方法包括:通过主机计算平台的数据处理硬件指导在容器管理系统中创建短期Linux容器;并且通过数据处理硬件将初始配置应用于短期Linux容器。该方法还包括由数据处理硬件检测短期Linux容器的终止。响应于所述终止,该方法包括:由数据处理硬件对短期Linux容器的配置进行快照;将初始配置与快照配置进行比较;以及,在容器管理显示中显示差异列表。
本公开的这个方面可以包括以下可选特征中的一个或多个。在一个示例中,快照配置是与终止同时存在于短期Linux容器中的文件列表,并且初始配置是与短期Linux容器的创建同时存在于短期Linux容器中的文件列表。为此,该比较可以是对应于与终止同时存在于短期Linux容器中的文件列表的数据和对应于与短期Linux容器的创建同时存在于短期Linux容器中的文件列表的可比较数据的比较。
在另一实现方式中,短期Linux容器是参考不同的短期Linux容器的图像创建的。在本公开的又一方面,该方法还包括:通过数据处理硬件将列表中的差异中的每个与来自初始配置的对应配置变化相关联;通过数据处理硬件在显示中提示将差异中的每个差异的每个配置变化放到白名单中进行对比;以及,通过数据处理硬件向白名单添加差异中的每个所选差异作为允许的配置变化。
在又一示例中,该方法另外包括:通过数据处理硬件将列表中的差异中的每个差异与来自初始配置的对应配置变化相关联。这里,该方法还包括:通过数据处理硬件在显示中提示将差异中的每个差异的每个配置变化放到黑名单中进行对比;以及,通过数据处理硬件向黑名单添加差异中的每个所选差异作为不允许的配置变化。
在本公开的另一个方面,一种短期Linux容器管理数据处理系统被配置用于短期Linux容器的事后图像查看方法。该系统包括具有一台或多台计算机的主机计算平台,每台计算机具有存储器和至少一个处理器。该系统还包括事后图像查看模块,该事后图像查看模块在主机计算平台的存储器中执行,并且通信耦合到管理不同短期Linux容器的创建、执行和终止的短期Linux容器管理器。该模块包括在主机计算平台中执行期间启用的计算机程序指令,以指导短期Linux容器管理器在容器管理系统中创建短期Linux容器,并且将初始配置应用于短期Linux容器,以由短期Linux容器管理器检测短期Linux容器的终止,并且通过以下方式对所述终止作出响应:指导短期Linux容器管理器对短期Linux容器的配置进行快照;将初始配置与快照配置进行比较;以及,在模块的容器管理显示中显示差异的列表。
本公开的这个方面可以包括以下可选特征中的一个或多个。在一个示例中,快照配置是与终止同时存在于短期Linux容器中的文件列表,并且初始配置是与短期Linux容器的创建同时存在于短期Linux容器中的文件列表。为此,该比较可以是对应于与终止同时存在于短期Linux容器中的文件列表的数据和对应于与短期Linux容器的创建同时存在于短期Linux容器中的文件列表的可比较数据的比较。
在另一实现方式中,短期Linux容器是参考不同的短期Linux容器的图像创建的。在本公开的又一方面中,该操作进一步包括:将列表中的差异中的每个差异与来自初始配置的对应配置变化相关联;在显示中提示将差异中的每个差异的每个变化放到白名单中进行对比;以及,向白名单添加差异中的每个所选差异作为允许的配置变化。
在又一示例中,该操作另外包括:将列表中的差异中的每个差异与来自初始配置的对应配置变化相关联。这里,该操作还包括:在显示中提示将差异中的每个差异的每个配置变化放到黑名单中进行对比;以及,向黑名单添加差异中的每个所选差异作为不允许的配置变化。
在本公开的另一个方面,一种计算机程序产品被配置为用于短期Linux容器的事后图像查看方法。该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质体现有程序指令。该程序指令能够由设备执行以使该设备执行操作。这些操作包括:指导短期Linux容器管理器在容器管理系统中创建短期Linux容器;并且将初始配置应用于短期Linux容器。该操作还包括由短期Linux容器管理器检测短期Linux容器的终止。该操作还包括通过下述方式来对所述终止作出响应:指导短期Linux容器管理器对短期Linux容器的配置进行快照;将初始配置与快照配置进行比较;以及,在模块的容器管理显示中显示差异的列表。
本公开的这个方面可以包括以下可选特征中的一个或多个。在一个示例中,快照配置是与终止同时存在于短期Linux容器中的文件列表,并且初始配置是与短期Linux容器的创建同时存在于短期Linux容器中的文件列表。为此,该比较可以是对应于与终止同时存在于短期Linux容器中的文件列表的数据和对应于与短期Linux容器的创建同时存在于短期Linux容器中的文件列表的可比较数据的比较。
在另一实现方式中,短期Linux容器是参考不同的短期Linux容器的图像创建的。在本公开的又一方面中,该操作进一步包括:将列表中的差异中的每个差异与来自初始配置的对应配置变化相关联;在显示中提示将差异中的每个差异的每个变化放到白名单中进行对比;以及,向白名单添加差异中的每个所选差异作为允许的配置变化。
在又一示例中,该操作另外包括:将列表中的差异中的每个差异与来自初始配置的对应配置变化相关联。这里,该操作还包括:在显示中提示将差异中的每个差异的每个配置变化放到黑名单中进行对比;以及,向黑名单添加差异中的每个所选差异作为不允许的配置变化。
在附图和以下描述中阐述本公开的一个或多个实现方式的细节。从描述和附图以及从权利要求中,其它方面、特征和优点将是显而易见的。
附图说明
包含在本说明书中并构成本说明书一部分的附图图示了本公开的示例并且与描述一起用于解释本公开的原理。此处图示的实现方式目前是优选的,然而应当理解,本公开不限于所示的精确布置和手段,其中:
图1是用于短期Linux容器的事后图像查看方法的过程的图解说明;
图2是配置用于短期Linux容器的事后图像查看方法的容器管理数据处理系统的示意图;以及,
图3是图示用于短期Linux容器的事后图像查看方法的过程的流程图。
具体实施方式
本公开的实现方式提供了用于短期Linux容器的事后图像查看方法。根据本公开的实现方式,在容器管理系统中创建短期Linux容器并将其根据指定配置进行配置。然后将应用于创建的容器的配置存储在一个文件中。一旦创建容器,将启动不同的应用程序以与创建的容器一起执行。此后,监视容器的执行以检测由容器管理系统发出的终止容器的指示。响应于检测到终止容器的指示,容器在终止时的配置被记录下来并与存储文件中的配置进行比较。如果检测到这些配置之间的差异,则与容器管理系统相关地生成提示以将每个配置差异加入白名单、加入黑名单或不采取任何措施。以这种方式,尽管容器有短期属性,但很容易识别短期容器内的配置变化,以便在容器管理系统中进行分析和反馈。
在进一步的图示中,图1图解地示出了用于短期Linux容器的事后图像查看方法的过程。如图1所示,由容器管理系统100创建短期容器110以供在服务器环境中使用。获取容器110的快照130以产生创建的容器110的记录的配置140A。在这点上,记录的配置140A可以包括作为容器110的配置的一部分而包括的文件列表,或者记录的配置140A可以包括以下数据,所述数据是与在创建容器110时作为容器110的配置的一部分而包括的文件列表相对应的数据。
此后,事后图像查看逻辑120检测容器110的终止并且获取容器110在终止时的快照130。再一次,快照130产生现已终止的容器110的记录的配置140B。然后对记录的配置140A和记录的配置140B进行比较160以产生差异列表150。然后向容器管理系统100的用户界面产生提示,该提示包括差异列表150的内容的呈现并邀请将差异列表150中明显的不同配置变化加入白名单、将差异列表150中明显的不同配置变化加入黑名单或忽略差异列表150中明显的不同配置变化。
可以在计算机数据处理系统内实现结合图1描述的过程。在进一步的图示中,图2示意性地示出了容器管理数据处理系统,该容器管理数据处理系统被配置为用于短期Linux容器的事后图像查看方法。该系统包括主机计算平台210,该主机计算平台210包括一台或多台计算机,每台计算机具有存储器和至少一个处理器。通过容器管理用户界面220在主机计算平台内定义并管理容器化计算环境250,在容器管理用户界面220中,不同的容器(短期Linux容器)被配置为在主机计算平台210内操作,每个容器能够支持在其中执行不同的计算机程序,并且每个容器包括不同的对应配置。
值得注意的是,事后图像查看模块300在主机计算平台210的存储器中执行并且耦合到容器管理用户界面220。事后图像查看模块300包括计算机程序指令,该计算机程序指令在主机计算平台210的存储器中被处理器的一个或多个执行时被使得能够监视容器化计算环境250中不同容器的创建,并针对每个容器在数据库240中记录在创建这些容器中的相应一个容器时的对应的配置260。还使得程序指令能够检测每个容器的终止,并且作为响应,将这些容器中的每一个终止的容器的配置与针对该终止的容器所记录的配置进行比较。还使得程序指令能够从上述比较中识别一个或多个差异并在容器管理用户界面220中呈现这些差异。
可选地,使得程序指令能够接收用于将这些差异的每一个差异列入白名单或列入黑名单的选择。在前一种情况下,随后检测到的已列入白名单的配置差异将不会作为差异出现在提示中。在后一种情况下,容器管理用户界面220在遇到尝试应用与列入黑名单的配置差异相关联的配置变化时,将不允许应用该配置变化的尝试。
在事后图像查看模块的操作的更进一步图示中,图3是图示用于短期Linux容器的事后图像查看方法的过程的流程图。在框310开始,在容器管理用户界面中选择模板化图像,例如现有容器,以作为创建新容器的基础,其中创建新容器是通过复制现有容器的配置并将配置应用到新容器而实现的。在框320,检测到容器的创建,并且作为响应,在框330,检索用于创建的容器的文件列表。此后,在框340,监视容器的执行以检测用于终止容器操作的指示。
在判定框350,确定是否接收到用于终止容器的指示。如果是,则在框360,检索容器在终止时的文件列表。然后,在框370,将容器在终止时的文件列表与在创建容器时检索到的文件列表进行比较。在这点上,基于文件名、文件大小、文件名和/或文件大小的散列值、文件创建日期或文件修改日期(仅举几个例子)的任意组合进行比较。在判定框380,确定列表之间是否存在任何差异。如果是,则在判定框390,进一步确定是否有任何检测到的差异存在于与差异相关联的配置变化的白名单中。如果不是,则在框400,显示未列入白名单的差异的提示,并且接收忽略提示中的每个差异、将其列入黑名单或白名单的选择。基于这些选择,然后在框410,更新白名单并且该过程在框420结束。
值得注意的是,前述过程被示为响应于检测到短期Linux容器的终止而发生。然而,作为前述的变体,前述响应也可以在容器终止之前响应于确定容器内的应用程序或容器本身的执行性能已经下降到阈值性能水平以下(以使容器的终止是必要的)而发生。示例包括检测可用存储器的阈值最小量或消耗的处理器周期的最大量。这样,配置差异的观察可用于确定观察到的容器性能下降的根本原因。
本公开可以体现在系统、方法、计算机程序产品或它们的任何组合中。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质,该计算机可读程序指令用于使处理器执行本公开的各方面。计算机可读存储介质可以是这样的有形设备,该有形设备可以保留和存储用于由指令执行设备使用的指令。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。
本文描述的计算机可读程序指令可以从计算机可读存储介质被下载到相应的计算/处理设备,或者经由网络被下载到外部计算机或外部存储设备。计算机可读程序指令可以完全在用户计算机上、部分在用户计算机上、作为独立软件包、部分在用户计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。本文参考根据本公开的实现方式的方法、装置(系统)和计算机程序产品的流程图和/或框图来描述本公开的各方面。应当理解,可以通过计算机可读程序指令来实现流程图和/或框图中的每个框以及流程图和/或框图中的框的组合。
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器以产生机器,使得通过计算机的处理器或其它可编程数据处理装置执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令也可以存储在计算机可读存储介质中,该计算机可读存储介质可以指导计算机、可编程数据处理装置和/或其它设备以特定方式工作,使得其中存储有指令的计算机可读存储介质包括实现在流程图和/或框图的一个或多个框中指定的功能/动作的方面的指令的制造物品。
计算机可读程序指令还可以加载到计算机、其它可编程数据处理装置或其它设备上,以使在计算机、其它可编程装置或其它设备上执行一系列操作步骤以产生计算机实现的过程,使得在计算机、其它可编程装置或其它设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
图中的流程图和框图图示了根据本公开的各种实现方式的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示模块、段或指令的一部分,其包括用于实现指定逻辑功能的一个或多个可执行指令。在一些替代实现方式中,框中标注的功能可以不按图中标注的顺序出现。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还应注意,框图和/或流程图的每个框以及框图和/或流程图中的框的组合可以由执行指定功能或动作的专用基于硬件的系统实现,或执行专用硬件和计算机指令的组合。
最后,本文使用的术语仅出于描述特定实现的目的,并不旨在限制本公开。如本文所用,单数形式“一”、“一个”和“所述”旨在也包括复数形式,除非上下文另有明确指示。将进一步理解,当在本说明书中使用时,术语“包括”和/或“包含”指定了所述特征、整数、步骤、操作、元件和/或组件的存在,但不排除存在或添加一个或多个其它特征、整数、步骤、操作、元素、组件和/或它们的组。
在所附权利要求中的所有装置或步骤加功能元件的对应结构、材料、动作和等同物旨在包括用于与如具体要求保护的其它要求保护的元件组合地执行功能的任何结构、材料或动作。本公开的描述已经出于说明和描述的目的而被呈现,但不旨在穷举或限制于所公开形式的公开。在不背离本公开的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是显而易见的。选择和描述实现方式以便最好地解释本公开的原理和实际应用,并且使本领域的其它普通技术人员能够理解本公开的各种实现方式以及适合于预期的特定用途的各种修改。
已经描述了许多实现方式。然而,应当理解,在不背离本公开的精神和范围的情况下可以进行各种修改。因此,其它实现方式在所附权利要求的范围内。

Claims (18)

1.一种用于短期Linux容器的事后图像查看方法,所述方法包括:
通过主机计算平台的数据处理硬件(210)指导在容器管理系统(100)中创建短期Linux容器(110);
通过所述数据处理硬件(210)将初始配置(140A)应用于所述短期Linux容器(110);
由所述数据处理硬件(210)检测所述短期Linux容器(110)的终止;以及
响应于所述终止:
通过所述数据处理硬件(210)对所述短期Linux容器(110)的配置(140B)进行快照,
通过所述数据处理硬件(210)比较(160)所述初始配置(140A)与所拍快照的配置(140B),以及
通过所述数据处理硬件(210)在容器(110)管理显示中显示差异列表(150)。
2.根据权利要求1所述的方法,其中,所拍快照的配置(140B)是与所述终止同时存在于所述短期Linux容器(110)中的文件列表,并且所述初始配置(140A)是与所述短期Linux容器(110)的创建同时存在于所述短期Linux容器(110)中的文件列表。
3.根据权利要求2所述的方法,其中,所述比较(160)是对应于与所述终止同时存在于所述短期Linux容器(110)中的所述文件列表的数据和对应于与所述短期Linux容器(110)的所述创建同时存在于所述短期Linux容器(110)中的所述文件列表的可比较数据的比较(160)。
4.根据权利要求1-3中的任一项所述的方法,其中,所述短期Linux容器(110)是参考不同的短期Linux容器(110)的图像创建的。
5.根据权利要求1-4中的任一项所述的方法,还包括:
通过所述数据处理硬件(210)将列表(160)中的所述差异中的每个差异与来自所述初始配置(140A)的对应配置变化相关联(380);
通过所述数据处理硬件(210)在所述显示中提示将所述差异中的每个差异的每个配置变化放到白名单中进行对比;以及
通过所述数据处理硬件(210)向白名单添加所述差异中的每个所选差异作为允许的配置变化。
6.根据权利要求1-5中的任一项所述的方法,还包括:
通过所述数据处理硬件(210)将列表中的所述差异中的每个差异与来自所述初始配置(140A)的对应配置变化相关联;
通过所述数据处理硬件(210)在所述显示中提示将所述差异中的每个差异的每个配置变化放到黑名单中进行对比;以及
通过所述数据处理硬件(210)向黑名单添加所述差异中的每个所选差异作为不允许的配置变化。
7.一种短期Linux容器(110)管理数据处理系统(100),被配置用于短期Linux容器的事后图像查看方法,所述系统包括:
主机计算平台(210),所述主机计算平台(210)包括一个或多个计算机,每个计算机具有存储器和至少一个处理器;
事后图像查看模块(300),所述事后图像查看模块(300)在所述主机计算平台(210)的所述存储器中执行并通信地耦合到短期Linux容器管理器(220),其中所述短期Linux容器管理器(220)管理不同短期Linux容器的创建、执行和终止,所述模块(300)包括计算机程序指令,所述计算机程序指令使得能够执行操作,所述操作包括:
指导所述短期Linux容器管理器(220)在容器管理系统(100)中创建短期Linux容器(110)并且将初始配置(140A)应用于所述短期Linux容器(110);
由所述短期Linux容器(110)管理器检测所述短期Linux容器(110)的终止;以及
通过以下对所述终止作出响应:
指导所述短期Linux容器(110)管理器对所述短期Linux容器(110)的配置(140B)进行快照,
将所述初始配置(140A)与所拍快照的配置(140B)进行比较,以及
在所述模块(300)的管理显示(220)中显示差异的列表(150)。
8.根据权利要求7所述的系统,其中,所拍快照的配置(140B)是与所述终止同时存在于所述短期Linux容器(110)中的文件列表,并且所述初始配置(140A)是与所述短期Linux容器(110)的创建同时存在于所述短期Linux容器(110)中的文件列表。
9.根据权利要求8所述的系统,其中,所述比较(160)是对应于与所述终止同时存在于所述短期Linux容器(110)中的所述文件列表的数据和对应于与所述短期Linux容器(110)的所述创建同时存在于所述短期Linux容器(110)中的所述文件列表的可比较数据的比较(160)。
10.根据权利要求7-9中的任一项所述的系统,其中,所述短期Linux容器(110)是参考不同的短期Linux容器(110)的图像创建的。
11.根据权利要求7-10中的任一项所述的系统,其中,所述操作还包括:
将列表(150)中的所述差异中的每个差异与来自所述初始配置(140A)的对应配置变化相关联;
在所述显示(220)中提示将所述差异中的每个差异的每个变化放到白名单中进行对比;以及
向白名单添加所述差异中的每个所选差异作为允许的配置变化。
12.根据权利要求7-11中的任一项所述的系统,其中,所述操作还包括:
将列表中的所述差异中的每个差异与来自所述初始配置(140A)的对应配置变化相关联;
在所述显示中提示将所述差异中的每个差异的每个配置变化放到黑名单中进行对比;以及
向黑名单添加所述差异中的每个所选差异作为不允许的配置变化。
13.一种用于短期Linux容器的事后图像查看方法的计算机程序产品,所述计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质具有体现在其中的程序指令,所述程序指令能够由设备执行以使所述设备执行操作,所述操作包括:
指导在容器管理系统(100)中创建短期Linux容器(110);
将初始配置(140A)应用到所述短期Linux容器(110);
检测所述短期Linux容器(110)的终止;以及
响应于所述终止:
对所述短期Linux容器(110)的配置(140B)进行快照,
将所述初始配置(140A)与所拍快照的配置(140B)进行比较,以及
在管理显示(220)中显示差异列表。
14.根据权利要求13所述的计算机程序产品,其中,所拍快照的配置(140B)是与所述终止同时存在于所述短期Linux容器(110)中的文件列表,并且所述初始配置(140A)是与所述短期Linux容器(110)的创建同时存在于所述短期Linux容器(110)中的文件列表。
15.根据权利要求14所述的计算机程序产品,其中,所述比较(160)是对应于与所述终止同时存在于所述短期Linux容器(110)中的所述文件列表的数据和对应于与所述短期Linux容器(110)的所述创建同时存在于所述短期Linux容器(110)中的所述文件列表的可比较数据的比较(160)。
16.根据权利要求13-15中的任一项所述的计算机程序产品,其中,所述短期Linux容器(110)是参考不同的短期Linux容器(110)的图像创建的。
17.根据权利要求13-15中的任一项所述的计算机程序产品,其中,所述操作还包括:
将列表(150)中的所述差异中的每个差异与来自所述初始配置(140A)的对应配置变化相关联;
在所述显示(220)中提示将所述差异中的每个差异的每个配置变化放到白名单中进行对比;以及
向白名单添加所述差异中的每个所选差异作为允许的配置变化。
18.根据权利要求13-15中的任一项所述的计算机程序产品,其中,所述操作还包括:
将列表(150)中的所述差异中的每个差异与来自所述初始配置(140A)的对应配置变化相关联;
在所述显示中提示将所述差异中的每个差异的每个配置变化放到黑名单中进行对比;以及
向黑名单添加所述差异中的每个所选差异作为不允许的配置变化。
CN202080079847.7A 2019-11-18 2020-11-17 短期Linux容器的事后图像和体积查看 Pending CN114730271A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/687,636 US11163585B2 (en) 2019-11-18 2019-11-18 Post hoc image and volume review of short-lived Linux containers
US16/687,636 2019-11-18
PCT/US2020/060926 WO2021101912A1 (en) 2019-11-18 2020-11-17 Post hoc image and volume review of short-lived linux containers

Publications (1)

Publication Number Publication Date
CN114730271A true CN114730271A (zh) 2022-07-08

Family

ID=73835729

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080079847.7A Pending CN114730271A (zh) 2019-11-18 2020-11-17 短期Linux容器的事后图像和体积查看

Country Status (7)

Country Link
US (2) US11163585B2 (zh)
EP (1) EP4062280B1 (zh)
JP (1) JP7246575B2 (zh)
KR (1) KR20220092614A (zh)
CN (1) CN114730271A (zh)
CA (1) CA3062460C (zh)
WO (1) WO2021101912A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021206374A1 (de) * 2021-06-22 2022-12-22 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Bearbeiten eines Systemabbilds
US20230036739A1 (en) * 2021-07-28 2023-02-02 Red Hat, Inc. Secure container image builds
WO2023176393A1 (ja) * 2022-03-14 2023-09-21 キヤノン株式会社 認識装置、認識処理方法、及びプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8601225B2 (en) * 2005-09-16 2013-12-03 Inmage Systems, Inc. Time ordered view of backup data on behalf of a host
US8516480B1 (en) * 2009-10-19 2013-08-20 CloudShare, Inc. Enabling offline work in a virtual data center
GB2507779A (en) * 2012-11-09 2014-05-14 Ibm Terminating a virtual machine in response to user inactivity in a cloud computing environment
US9531799B2 (en) * 2014-06-19 2016-12-27 Vmware, Inc. Reducing restoration time for virtual machines
US9645847B1 (en) 2015-06-08 2017-05-09 Amazon Technologies, Inc. Efficient suspend and resume of instances
US9524389B1 (en) 2015-06-08 2016-12-20 Amazon Technologies, Inc. Forensic instance snapshotting
US10664320B2 (en) 2017-08-03 2020-05-26 Red Hat, Inc. Host specific containerized application configuration generation

Also Published As

Publication number Publication date
US20210149685A1 (en) 2021-05-20
KR20220092614A (ko) 2022-07-01
CA3062460C (en) 2023-03-28
US11762669B2 (en) 2023-09-19
WO2021101912A1 (en) 2021-05-27
US11163585B2 (en) 2021-11-02
CA3062460A1 (en) 2021-05-18
US20220035639A1 (en) 2022-02-03
JP7246575B2 (ja) 2023-03-27
EP4062280A1 (en) 2022-09-28
JP2022547749A (ja) 2022-11-15
EP4062280B1 (en) 2024-05-15

Similar Documents

Publication Publication Date Title
CN114730271A (zh) 短期Linux容器的事后图像和体积查看
US9223767B1 (en) Unified graphical user interface for displaying a plan of operations in a datacenter
US9389847B2 (en) Selection of relevant software bundles
US9442714B2 (en) Unified visualization of a plan of operations in a datacenter
US9110710B2 (en) Preserving changes to a configuration of a running virtual machine
US11442765B1 (en) Identifying dependencies for processes for automated containerization
US11327738B2 (en) Software and firmware updates in a combined single pane of glass interface
US10228963B2 (en) Efficient hypervisor reporting
US11288301B2 (en) YAML configuration modeling
US11334341B2 (en) Desired state model for managing lifecycle of virtualization software
US11269609B2 (en) Desired state model for managing lifecycle of virtualization software
US11487878B1 (en) Identifying cooperating processes for automated containerization
EP3376377A1 (en) Apparatus and control method for comparison of hierarchical virtual machine templates
US9766912B1 (en) Virtual machine configuration
US20140089557A1 (en) Image storage optimization in virtual environments
US9389848B2 (en) Scheduling a plan of operations in a datacenter
US10915312B2 (en) Lifecycle management of virtual compute templates
US11720386B2 (en) Validation and pre-check of combined software/firmware updates
US9529980B2 (en) Deduplication of end user license agreements
US12001828B2 (en) Automatic self-adjusting software image recommendation
JPWO2021101912A5 (ja) Linux(登録商標)コンテナの事後イメージおよびボリュームレビュー
US20160011891A1 (en) Engine for Virtual Machine Resources

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