Application Deployment Using Image Fingerprints for Layer Reuse
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing application deployment methods in computing environments, such as those using Kubernetes, introduce delays due to the transmission of entire executable images to hosts, which can be inefficient and time-consuming.
Innovation Solution
The use of image fingerprints to identify and utilize pre-existing components on candidate hosts, allowing for the instantiation of deployment images without transmitting entire images, thereby reducing network delays and accelerating the deployment process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the entire executable image is transmitted to the host for application deployment, then the deployment is complete and reliable, but the deployment time increases due to network transmission delays
Solution Approach 1:
The patent segments the executable image into multiple layers and identifies matching layers between the new image and existing images on the host. Only the non-matching segments are transmitted, while matching segments are reused from the existing image store, thereby reducing transmission time while maintaining deployment completeness
Solution Approach 2:
The system performs preliminary actions by pre-storing executable images and their layer information in an image store on the host. When a new deployment is requested, the system quickly compares the new image layers with existing stored layers to identify matches, avoiding the need to transmit already-available layers
2Reliability
If the entire executable image is transmitted to the host, then all components are ensured to be present, but the network transmission load increases
Solution Approach 1:
The patent extracts only the necessary non-matching layers from the new executable image for transmission to the host. By comparing image layer fingerprints and identifying existing matching layers on the host, the system removes the redundant transmission of already-present components, reducing network load while ensuring all required components are deployed
3Ease of operation
If traditional deployment methods are used, then the process is simple and straightforward, but the deployment speed is slow due to complete image transmission
Solution Approach 1:
The patent introduces an intermediary mechanism - the image layer comparison system that uses fingerprints to identify matching layers between new and existing images. This intermediary layer enables intelligent determination of what needs to be transmitted, significantly improving deployment speed while maintaining operational simplicity through automated layer matching and selection
Data Source
AI summary
Instantiation of a deployment image is accelerated by associating images with fingerprints, including fingerprints of constituent images (e.g., container and application images) of the deployment image. A database is maintained that associates hosts with the fingerprints of images instantiated thereon. When deploying the deployment image, a host associated with at least a portion of the fingerprint of the deployment image is identified and only the portion of the deployment image that is not already present on the host are transmitted to the host. An application image may be loaded into an already-executing container. The container may be restarted and invoke an entrypoint that references an orchestrator agent that retrieves and loads the application image into the container and invokes the entrypoint of the application image.


