Serverless Disk Image Layer Updates via Compatibility Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud computing environments, particularly in serverless code execution systems, updating disk images is challenging due to the lack of ability to alter images during short execution times and the difficulty in monitoring and applying software updates without compromising data privacy or causing compatibility issues.

Innovation Solution

A cloud computing system that automatically updates layered disk images by designating specific layers for updating, using digital fingerprints for verification, and implementing a gradual transition mechanism to monitor and control potential errors, ensuring compatibility and security without full knowledge of the image contents.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If automatic updates are implemented to disk images, then security and functionality are improved, but compatibility issues and errors may be introduced

Engineering Contradiction:
Improvesoftware update reliabilityVSAvoidcompatibility issues
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The system performs preliminary actions by creating updated disk images in advance and verifying their compatibility through testing before applying them to production environments. This allows potential compatibility issues to be identified and resolved prior to actual deployment, ensuring reliable updates while minimizing harmful effects.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements beforehand cushioning by maintaining rollback mechanisms and creating staged update processes that allow reverting to previous versions if compatibility issues arise. This protective measure ensures that if an update causes harmful effects, the system can quickly restore to a stable state, cushioning against the potential damage.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

2Ease of operation

If manual update tools are used to maintain disk images, then control over updates is maintained, but productivity and efficiency are reduced

Engineering Contradiction:
Improveupdate controlVSAvoidupdate efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system implements self-service by enabling automatic detection, verification, and application of disk image updates without requiring manual intervention. The system autonomously manages the entire update process, maintaining control through structured protocols while dramatically improving productivity and efficiency by eliminating manual operations.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system incorporates feedback mechanisms that continuously monitor update outcomes and adjust future update processes accordingly. This feedback loop ensures that automatic updates maintain control by learning from previous results, optimizing the update strategy to balance automation benefits with operational control.

Inventive Principle:
Principle #23Feedback

3Reliability

If disk images are updated frequently to reflect latest software, then functionality and security are improved, but system stability and execution time are compromised

Engineering Contradiction:
Improvesoftware currencyVSAvoidexecution time
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The system performs preliminary verification and testing of updated disk images before applying them to active systems. This advance preparation ensures that updates are ready for immediate deployment without causing delays, maintaining both software currency and execution time efficiency by eliminating verification delays during actual execution.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements dynamic update strategies that adapt to system conditions, allowing frequent updates when stability is confirmed and pausing updates when execution time constraints are detected. This dynamic approach maintains software currency while respecting execution time requirements, adjusting the update rhythm based on real-time system state.

Inventive Principle:
Principle #15Dynamics

4Reliability

If full knowledge of image contents is required for updates, then compatibility can be verified, but data privacy and security are compromised

Engineering Contradiction:
Improvecompatibility verificationVSAvoiddata privacy
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The system extracts only the necessary metadata and interface signatures from disk images for compatibility verification, while leaving the majority of image contents private and inaccessible. This extraction approach enables compatibility checking without requiring full knowledge of image contents, maintaining data privacy while achieving reliable verification through selective information access.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system introduces intermediary verification layers that act as mediators between update systems and disk image contents. These intermediaries perform compatibility verification by inspecting interfaces and metadata without directly accessing or exposing the full image contents, thus enabling reliable verification while preserving data privacy and security.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11900152B1Controlled automatic updates to disk image layers with compatibility verification
Publication Date: 2024.02.13 AMAZON TECH INC
  • US11900152B1 patent drawing
  • US11900152B1 patent drawing
  • US11900152B1 patent drawing

AI summary

Systems and methods are described for providing updating of disk images supporting serverless code execution and controlled deployment of updated disk images. A disk image can be defined as a set of layers that represent a file system include code of a serverless function and other data used by the code. A function owner can designate one layer as containing software or other data subject to update. When a new version of the layer is obtained at a serverless compute system, the system can generate a new disk image containing the updated layer. The system can then gradually transition the function to the new disk image, by dividing calls to the function among two versions of the function—one using the prior disk image, and one using the new disk image. Performance data gained from the new version of the function can be used to control the gradual transition.