Post-event image and volume view of short-lived Linux containers

CN114730271BActive Publication Date: 2026-08-14GOOGLE LLC
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-11-17
Publication Date
2026-08-14

AI Technical Summary

Technical Problem

但是,在数十、数百或数千个容器的情况下,手动管理不同容器中的配置变化几乎是不可能的

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114730271B_ABST
    Figure CN114730271B_ABST
Patent Text Reader

Abstract

This disclosure provides an example of a method, system (100), and computer program product (300) for post-event image viewing of a short-lived Linux container (110). In one example of this disclosure, the post-event image viewing method for a short-lived Linux container includes: firstly guiding the creation of the short-lived Linux container in a container management system (100); and applying an initial configuration (140A) to the short-lived Linux container. Subsequently, the method includes: detecting termination of the short-lived Linux container. Finally, in response to the termination, the method includes: taking a snapshot of the short-lived Linux container's configuration (140B); comparing the initial configuration with the snapshot configuration; and displaying a list of differences (150) in a container management display (220).
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the management of short-lived Linux containers, and more specifically, to the management of applications configured for short-lived Linux containers. Background Technology

[0002] Typically, computer programs execute within an operating system environment on the bare metal of a computer, where the operating system processes the program's instructions and provides adequate access to computer resources. However, in the modern computing era, executing multiple different programs within the same computer has become a fundamental requirement. Virtualization is a technology that allows different instances of computer programs to execute in different isolated virtual machines (called "guests" and managed by a supervisory process called a "hypervisor"). Each virtual machine is isolated from other virtual machines, ensuring that each instance of a computer program executing within its corresponding virtual machine remains completely isolated from other instances of the same program or other programs.

[0003] However, the use of virtualization is not without consequences. Each virtual machine, acting as a guest operating system, supports the operation of its own operating system capable of hosting the execution of an instance of the corresponding computer program. As will be understood, multiple different operating systems running within corresponding virtual machines on a single computing system consume significant resources of the computing system, thereby affecting the execution of all host applications within their respective virtual machines.

[0004] To address the excessive resource consumption of virtualization, containerization is often used as a suitable alternative—especially when multiple instances of a single computer program will be deployed on the same host computing system. Unlike virtualization, in containerization, there is no separate operating system deployed in each container. Therefore, containerization requires less resource consumption, thus achieving higher operational performance for all instances of a computer program running on a containerized host computing system. Even so, like virtualization environments, in a containerized environment, each container must be configured against the underlying resources of the host computing system, such as allowed memory usage, processor usage, persistent storage, and access control.

[0005] Managing the configurations of multiple containers within multiple containerized computing systems presents significant challenges, whether in virtualized or containerized environments. To manage the coordinated configuration of containerized host environments, standardized methods have been developed to define different configurations, allowing containers to be easily configured by referencing these definitions and representing their configurations as definitions. However, understanding how to configure containers and whether deviations from those configurations are permissible requires manual intervention. In the context of a single or even a few containers, this is manageable. However, in the case of dozens, hundreds, or thousands of containers, manually managing configuration changes across different containers becomes virtually impossible. Summary of the Invention

[0006] The implementation of this disclosure addresses deficiencies in container configuration management in the art and provides a novel and non-obvious method, system, and computer program product for post-event image viewing of short-lived Linux containers.

[0007] In one example of this disclosure, a method for post-event image viewing of a short-lived Linux container includes: creating the short-lived Linux container in a container management system under the guidance of data processing hardware on a host computing platform; and applying an initial configuration to the short-lived Linux container via the data processing hardware. The method also includes detecting termination of the short-lived Linux container by the data processing hardware. In response to the termination, the method includes: taking a snapshot of the short-lived Linux container's configuration by the data processing hardware; comparing the initial configuration with the snapshot configuration; and displaying a list of differences in a container management display.

[0008] This aspect of the disclosure may include one or more of the following optional features. In one example, the snapshot configuration is a list of files that existed in the short-lived Linux container simultaneously with the termination, and the initial configuration is a list of files that existed in the short-lived Linux container simultaneously with the creation of the short-lived Linux container. Therefore, the comparison may be a comparison between data corresponding to the list of files that existed in the short-lived Linux container simultaneously with the termination and comparable data corresponding to the list of files that existed in the short-lived Linux container simultaneously with the creation of the short-lived Linux container.

[0009] In another implementation, the short-lived Linux container is created with reference to images of different short-lived Linux containers. In yet another aspect of this disclosure, the method further includes: associating each difference in the list with a corresponding configuration change from the initial configuration via data processing hardware; prompting in a display via data processing hardware to add each configuration change of each difference in the list to a whitelist for comparison; and adding each selected difference in the list as an allowed configuration change via data processing hardware to the whitelist.

[0010] In yet another example, the method further includes: associating each difference in the list of differences with a corresponding configuration change from the initial configuration via data processing hardware. Here, the method also includes: prompting in a display via data processing hardware to add each configuration change of each difference in the list to a blacklist for comparison; and adding each selected difference in the list as an unallowed configuration change via data processing hardware.

[0011] In another aspect of this disclosure, a short-lived Linux container management data processing system is configured for a post-event image viewing method for short-lived Linux containers. The system includes a host computing platform having one or more computers, each computer having memory and at least one processor. The system also includes a post-event image viewing module that executes in the memory of the host computing platform and is communicatively coupled to a short-lived Linux container manager that manages the creation, execution, and termination of different short-lived Linux containers. This module includes computer program instructions enabled during execution on the host computing platform to instruct the short-lived Linux container manager to create short-lived Linux containers in a container management system and apply an initial configuration to the short-lived Linux containers to detect termination of the short-lived Linux containers by the short-lived Linux container manager, and to respond to the termination by: instructing the short-lived Linux container manager to take a snapshot of the short-lived Linux container's configuration; comparing the initial configuration with the snapshot configuration; and displaying a list of differences in the module's container management display.

[0012] This aspect of the disclosure may include one or more of the following optional features. In one example, the snapshot configuration is a list of files that existed in the short-lived Linux container simultaneously with the termination, and the initial configuration is a list of files that existed in the short-lived Linux container simultaneously with the creation of the short-lived Linux container. Therefore, the comparison may be a comparison between data corresponding to the list of files that existed in the short-lived Linux container simultaneously with the termination and comparable data corresponding to the list of files that existed in the short-lived Linux container simultaneously with the creation of the short-lived Linux container.

[0013] In another implementation, the short-lived Linux container is created with reference to images of different short-lived Linux containers. In yet another aspect of this disclosure, the operation further includes: associating each difference in the list with a corresponding configuration change from the initial configuration; prompting in the display to add each change of each difference in the list to a whitelist for comparison; and adding each selected difference in the list as an allowed configuration change to the whitelist.

[0014] In yet another example, the operation further includes associating each difference in the list with a corresponding configuration change from the initial configuration. Here, the operation also includes prompting in the display to add each configuration change of each difference in the list to a blacklist for comparison; and adding each selected difference in the list as an unallowed configuration change to the blacklist.

[0015] In another aspect of this disclosure, a computer program product is configured for a post-event image viewing method for short-lived Linux containers. The computer program product includes a computer-readable storage medium embodying program instructions. These program instructions are executable by a device to cause the device to perform operations. These operations include: instructing a short-lived Linux container manager to create a short-lived Linux container in a container management system; and applying an initial configuration to the short-lived Linux container. The operation also includes detecting termination of the short-lived Linux container by the short-lived Linux container manager. The operation further includes responding to the termination by: instructing the short-lived Linux container manager to take a snapshot of the short-lived Linux container's configuration; comparing the initial configuration with the snapshot configuration; and displaying a list of differences in a container management display of the module.

[0016] This aspect of the disclosure may include one or more of the following optional features. In one example, the snapshot configuration is a list of files that existed in the short-lived Linux container simultaneously with the termination, and the initial configuration is a list of files that existed in the short-lived Linux container simultaneously with the creation of the short-lived Linux container. Therefore, the comparison may be a comparison between data corresponding to the list of files that existed in the short-lived Linux container simultaneously with the termination and comparable data corresponding to the list of files that existed in the short-lived Linux container simultaneously with the creation of the short-lived Linux container.

[0017] In another implementation, the short-lived Linux container is created with reference to images of different short-lived Linux containers. In yet another aspect of this disclosure, the operation further includes: associating each difference in the list with a corresponding configuration change from the initial configuration; prompting in the display to add each change of each difference in the list to a whitelist for comparison; and adding each selected difference in the list as an allowed configuration change to the whitelist.

[0018] In yet another example, the operation further includes associating each difference in the list with a corresponding configuration change from the initial configuration. Here, the operation also includes prompting in the display to add each configuration change of each difference in the list to a blacklist for comparison; and adding each selected difference in the list as an unallowed configuration change to the blacklist.

[0019] Details of one or more implementations of this disclosure are set forth in the accompanying drawings and the following description. Other aspects, features, and advantages will be apparent from the description and drawings, as well as from the claims. Attached Figure Description

[0020] The accompanying drawings, which are included in and form part of this specification, illustrate examples of the present disclosure and, together with the description, serve to explain the principles of the disclosure. The implementations illustrated herein are currently preferred; however, it should be understood that the present disclosure is not limited to the precise arrangements and means shown, wherein:

[0021] Figure 1 This is an illustrated explanation of the process for viewing images of short-lived Linux containers after the fact;

[0022] Figure 2 This is a diagram illustrating a container management data processing system configured for post-event image viewing methods for short-lived Linux containers; and,

[0023] Figure 3 This is a flowchart illustrating the process of viewing images after a short-lived Linux container. Detailed Implementation

[0024] This disclosure provides a method for post-event image viewing of short-lived Linux containers. According to this disclosure, a short-lived Linux container is created in a container management system and configured according to a specified configuration. The configuration applied to the created container is then stored in a file. Once the container is created, different applications are started to execute alongside it. Subsequently, the execution of the container is monitored to detect indications to terminate the container issued by the container management system. In response to the detection of a container termination indication, the container's configuration at the time of termination is recorded and compared with the configuration in the stored file. If differences between these configurations are detected, prompts are generated in relation to the container management system to add each configuration difference to a whitelist, a blacklist, or take no action. In this way, despite the short-lived nature of the container, configuration changes within a short-lived container can be easily identified for analysis and feedback within the container management system.

[0025] In further illustrations, Figure 1 The process of using a post-event image viewing method for short-lived Linux containers is illustrated in the diagram. Figure 1As shown, a short-lived container 110 is created by a container management system 100 for use in a server environment. A snapshot 130 of container 110 is taken to produce a recorded configuration 140A of the created container 110. In this respect, the recorded configuration 140A may include a list of files included as part of the configuration of container 110, or the recorded configuration 140A may include data corresponding to the list of files included as part of the configuration of container 110 at the time of its creation.

[0026] Subsequently, post-image viewing logic 120 detects the termination of container 110 and acquires a snapshot 130 of container 110 at the time of termination. Again, snapshot 130 generates a recorded configuration 140B for the now-terminated container 110. The recorded configurations 140A and 140B are then compared 160 to generate a discrepancy list 150. A prompt is then generated in the user interface of the container management system 100, presenting the contents of the discrepancy list 150 and inviting users to add significant configuration changes from the discrepancy list 150 to a whitelist, add significant configuration changes from the discrepancy list 150 to a blacklist, or ignore significant configuration changes from the discrepancy list 150.

[0027] It can be combined within a computer data processing system. Figure 1 The process is described. Further illustrations are provided. Figure 2 A container management data processing system is schematically illustrated, configured for a post-event image viewing method for short-lived Linux containers. The system includes a host computing platform 210 comprising one or more computers, each with memory and at least one processor. A containerized computing environment 250 is defined and managed within the host computing platform via a container management user interface 220. In the container management user interface 220, different containers (short-lived Linux containers) are configured to operate within the host computing platform 210, each container capable of supporting the execution of different computer programs, and each container includes a different corresponding configuration.

[0028] It is worth noting that the post-processing image viewing module 300 executes in the memory of the host computing platform 210 and is coupled to the container management user interface 220. The post-processing image viewing module 300 includes computer program instructions that, when executed by one or more processors in the memory of the host computing platform 210, are enabled to monitor the creation of different containers in the containerized computing environment 250 and, for each container, record in the database 240 the corresponding configuration 260 at the time of creation of the corresponding container among these containers. The program instructions are also enabled to detect the termination of each container and, in response, compare the configuration of each terminated container with the configuration recorded for that terminated container. The program instructions are also enabled to identify one or more differences from the above comparison and present these differences in the container management user interface 220.

[0029] Optionally, the program instructions can be made capable of receiving an option to whitelist or blacklist each of these differences. In the former case, subsequently detected whitelisted configuration differences will not appear as differences in the prompt. In the latter case, the container management user interface 220 will not allow attempts to apply configuration changes associated with blacklisted configuration differences when it encounters such attempts.

[0030] Further illustrations of the operation of the post-event image viewing module are provided. Figure 3 This is a flowchart illustrating the process of a post-event image viewing method for short-lived Linux containers. Starting at box 310, a templated image, such as an existing container, is selected in the container management user interface as the basis for creating a new container. Creating a new container is achieved by copying the configuration of the existing container and applying that configuration to the new container. At box 320, the creation of the container is detected, and in response, at box 330, a list of files used to create the container is retrieved. Subsequently, at box 340, the execution of the container is monitored to detect an instruction to terminate the container operation.

[0031] In decision box 350, it is determined whether an instruction to terminate the container has been received. If so, in box 360, the list of files at the time of container termination is retrieved. Then, in box 370, the list of files at the time of container termination is compared with the list of files retrieved when the container was created. At this point, the comparison is based on any combination of filename, file size, hash values ​​of filename and / or file size, file creation date, or file modification date (to name just a few examples). In decision box 380, it is determined whether any differences exist between the lists. If so, in decision box 390, it is further determined whether any detected differences exist in the whitelist of configuration changes associated with the differences. If not, in box 400, a prompt for differences not listed in the whitelist is displayed, and the option to ignore each difference in the prompt, add it to the blacklist, or whitelist it is received. Based on these choices, then in box 410, the whitelist is updated, and the process ends in box 420.

[0032] It is worth noting that the aforementioned process is shown to occur in response to the detection of the termination of a short-lived Linux container. However, as a variation of the aforementioned process, the response could also occur prior to container termination, in response to determining that the performance of the application within the container or the container itself has degraded below a threshold performance level (making container termination necessary). Examples include detecting a minimum threshold of available memory or a maximum amount of processor cycles consumed. In this way, observations of configuration differences can be used to determine the root cause of the observed container performance degradation.

[0033] This disclosure may be embodied in systems, methods, computer program products, or any combination thereof. A computer program product may include a computer-readable storage medium having computer-readable program instructions thereon for causing a processor to perform aspects of this disclosure. A computer-readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination thereof.

[0034] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to a suitable computing / processing device, or downloaded via a network to an external computer or external storage device. The computer-readable program instructions can be executed entirely on a user's computer, partially on a user's computer, as a standalone software package, partially on a user's computer and partially on a remote computer, or entirely on a remote computer or server. Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to implementations of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, as well as combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0035] These computer-readable program instructions may be provided to the processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / actions specified in one or more boxes of a flowchart and / or block diagram. These computer-readable program instructions may also be stored in a computer-readable storage medium that can instruct a computer, programmable data processing apparatus, and / or other equipment to operate in a particular manner, such that the computer-readable storage medium storing the instructions comprises an article of manufacture containing instructions that implement aspects of the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0036] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus or other equipment to cause a series of operational steps to be performed on the computer, other programmable apparatus or other equipment to produce a computer-implemented process, such that the instructions, which execute on the computer, other programmable apparatus or other equipment, perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0037] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each box in a flowchart or block diagram may represent a portion of a module, segment, or instruction, which includes one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the boxes may not appear in the order indicated in the figures. For example, depending on the functions involved, two boxes shown consecutively may actually be executed substantially simultaneously, or these boxes may sometimes be executed in reverse order. It should also be noted that each box in the block diagram and / or flowchart, and combinations of boxes in the block diagram and / or flowchart, may be implemented by a dedicated hardware-based system that performs the specified function or action, or by a combination of dedicated hardware and computer instructions.

[0038] Finally, the terminology used herein is for the purpose of describing a particular implementation only and is not intended to limit this disclosure. As used herein, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that, when used in this specification, the terms “comprising” and / or “including” specify the presence of the said feature, integer, step, operation, element, and / or component, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0039] The corresponding structures, materials, actions, and equivalents of all means or steps plus functional elements in the appended claims are intended to include any structure, material, or action for performing a function in combination with other claimed elements as specifically claimed. The description of this disclosure has been presented for purposes of illustration and description, but is not intended to be exhaustive or limiting to the form of disclosure disclosed. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of this disclosure. The implementations have been chosen and described in order to best explain the principles and practical application of this disclosure, and to enable others skilled in the art to understand the various implementations of this disclosure and the various modifications suitable for the particular intended use.

[0040] Many implementations have been described. However, it should be understood that various modifications can be made without departing from the spirit and scope of this disclosure. Therefore, other implementations are within the scope of the appended claims.

Claims

1. A method for post-event image viewing of short-lived Linux containers, the method comprising: The creation of short-lived Linux containers (110) in a container management system (100) is guided by the data processing hardware of the host computing platform (210). The initial configuration (140A) is applied to the short-lived Linux container (110) via the data processing hardware. The termination of the short-lived Linux container (110) is detected by the data processing hardware; and In response to the termination: The configuration (140B) of the short-lived Linux container (110) is snapshotted using the data processing hardware. The initial configuration (140A) is compared (160) with the configuration (140B) of the captured snapshot by the data processing hardware. The data processing hardware displays a list of differences (150) in the container (110) management display. The data processing hardware associates each difference in the list (150) with a corresponding configuration change from the initial configuration (140A) (380). The data processing hardware prompts the display to place each configuration change of each difference in the differences into a whitelist for comparison. as well as The data processing hardware adds each selected difference from the differences to the whitelist as an allowed configuration change.

2. The method according to claim 1, wherein, The configuration of the snapshot (140B) is a list of files that exist in the short-lived Linux container (110) at the same time as the termination, and the initial configuration (140A) is a list of files that exist in the short-lived Linux container (110) at the same time as the creation of the short-lived Linux container (110).

3. The method according to claim 2, wherein, The comparison (160) is a comparison (160) of data corresponding to the list of files that exist in the short-lived Linux container (110) at the same time as the termination and of comparable data corresponding to the list of files that exist in the short-lived Linux container (110) at the same time as the creation of the short-lived Linux container (110).

4. The method according to any one of claims 1-3, wherein, The short-lived Linux container (110) is created with reference to images of different short-lived Linux containers (110).

5. The method according to any one of claims 1-3, further comprising: The data processing hardware prompts the display to place each configuration change of each difference in the differences into a blacklist for comparison. as well as The data processing hardware adds each selected difference from the differences to the blacklist as a disallowed configuration change.

6. A short-lived Linux container (110) management data processing system, configured for a post-event image viewing method for short-lived Linux containers, the system comprising: A host computing platform (210) includes one or more computers, each computer having memory and at least one processor; A post-event image viewing module (300), which executes in the memory of the host computing platform (210) and is communicatively coupled to a short-lived Linux container manager (220), wherein the short-lived Linux container manager (220) manages the creation, execution, and termination of various short-lived Linux containers, the module (300) including computer program instructions that enable the execution of operations including: Instruct the short-lived Linux container manager (220) to create a short-lived Linux container (110) in the container management system (100) and apply the initial configuration (140A) to the short-lived Linux container (110). The termination of the short-lived Linux container (110) is detected by the short-lived Linux container (110) manager; and The termination can be responded to as follows: Instruct the short-lived Linux container (110) manager to take a snapshot of the configuration (140B) of the short-lived Linux container (110). The initial configuration (140A) is compared with the configuration of the captured snapshot (140B), and The list of differences (150) is displayed in the management display of the module (300). Associate each difference in the list (150) with a corresponding configuration change from the initial configuration (140A); The display prompts users to add each variation of each difference in the comparison to a whitelist; and Add each selected difference from the aforementioned differences to the whitelist as an allowed configuration change.

7. The system according to claim 6, wherein, The configuration of the snapshot (140B) is a list of files that exist in the short-lived Linux container (110) at the same time as the termination, and the initial configuration (140A) is a list of files that exist in the short-lived Linux container (110) at the same time as the creation of the short-lived Linux container (110).

8. The system according to claim 7, wherein, The comparison (160) is a comparison (160) of data corresponding to the list of files that exist in the short-lived Linux container (110) at the same time as the termination and of comparable data corresponding to the list of files that exist in the short-lived Linux container (110) at the same time as the creation of the short-lived Linux container (110).

9. The system according to any one of claims 6-8, wherein, The short-lived Linux container (110) is created with reference to images of different short-lived Linux containers (110).

10. The system according to any one of claims 6-8, wherein, The operation also includes: The display prompts that each configuration change in each of the differences be placed in a blacklist for comparison; and Add each selected difference from the aforementioned differences to the blacklist as a configuration change that is not allowed.

11. A computer program product for a method of post-event image viewing of a short-lived Linux container, the computer program product comprising a computer-readable storage medium having program instructions embodied therein, the program instructions being executable by a device to cause the device to perform operations, the operations including: Instructions for creating short-lived Linux containers (110) in a container management system (100); Apply the initial configuration (140A) to the short-lived Linux container (110). Detect the termination of the short-lived Linux container (110); and In response to the termination: A snapshot of the configuration (140B) of the short-lived Linux container (110) is taken. The initial configuration (140A) is compared with the configuration of the captured snapshot (140B). Display the list of differences in the management view. Each difference in the list (150) is associated with a corresponding configuration change from the initial configuration (140A). The display prompts users to add each configuration change of each difference in the comparison to a whitelist, and... Add each selected difference from the aforementioned differences to the whitelist as an allowed configuration change.

12. The computer program product according to claim 11, wherein, The configuration of the snapshot (140B) is a list of files that exist in the short-lived Linux container (110) at the same time as the termination, and the initial configuration (140A) is a list of files that exist in the short-lived Linux container (110) at the same time as the creation of the short-lived Linux container (110).

13. The computer program product according to claim 12, wherein, The comparison (160) is a comparison (160) of data corresponding to the list of files that exist in the short-lived Linux container (110) at the same time as the termination and of comparable data corresponding to the list of files that exist in the short-lived Linux container (110) at the same time as the creation of the short-lived Linux container (110).

14. The computer program product according to any one of claims 11-13, wherein, The short-lived Linux container (110) is created with reference to images of different short-lived Linux containers (110).

15. The computer program product according to any one of claims 11-13, wherein, The operation also includes: The display prompts that each configuration change in each of the differences be placed in a blacklist for comparison; and Add each selected difference from the aforementioned differences to the blacklist as a configuration change that is not allowed.

Citation Information

Patent Citations

  • Forensic instance snapshotting

    US9524389B1