Container Image Fingerprinting for Faster Host Deployment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing computing systems face delays in deploying applications due to the transmission of executable images and containers, which can be optimized for faster deployment.
Innovation Solution
A system and method utilizing fingerprints of deployment images to identify and reuse existing containers and layers on hosts, reducing the need for network transmission by matching and assembling partial or complete images on candidate hosts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If containers are restarted to replace application instances, then existing containers can be reused, but network transmission delays occur when downloading new container images
Solution Approach 1:
The system performs preliminary actions by downloading and caching container images before they are actually needed for deployment. The image manager pre-loads container images into the host's memory or storage, so when a container needs to be restarted or replaced, the image is already available locally and can be deployed immediately without network transmission delays.
Solution Approach 2:
The system creates copies of container images and stores them locally on the host. Instead of transmitting the complete container image over the network during deployment, the system uses pre-cached copies that are already present on the host, eliminating the need for network transmission and reducing deployment time.
2Productivity
If complete container images are transmitted to hosts, then containers can be deployed, but network bandwidth is consumed and deployment time increases
Solution Approach 1:
The image manager performs preliminary action by pre-downloading and caching container images before deployment is needed. This ensures that when containers need to be deployed, the images are already available locally, eliminating the need for real-time network transmission and conserving network bandwidth for other critical operations.
Solution Approach 2:
The system creates local copies of container images through the image manager and stores them in the host's memory or storage system. These local copies are then used for container deployment, eliminating the need for continuous network bandwidth consumption and improving deployment efficiency.
3Ease of operation
If containers are restarted without image caching, then deployment can proceed, but the process introduces delays and reduces system responsiveness
Solution Approach 1:
The system performs preliminary action by pre-caching container images in the host's memory or storage before deployment is needed. When a container needs to be restarted or replaced, the image manager can immediately use the pre-cached image without introducing delays, thus maintaining system responsiveness and improving deployment speed.
Solution Approach 2:
The system uses local copies of container images stored in the host's memory or storage to enable rapid container replacement. Instead of waiting for network transmission during the restart process, the system uses pre-existing local copies, eliminating deployment delays and improving the speed of container replacement operations.
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.


