Virtualization Software Lifecycle Management via Release Units
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The lifecycle management of virtualization software in computing systems is cumbersome and error-prone due to inter-dependencies between software components, making it difficult to make piecemeal changes, track the current state of software configurations, and ensure compliance with desired states, especially during upgrades.
Innovation Solution
A desired state model is introduced where virtualization software components are grouped into release units managed separately, allowing for independent creation and shipping with proper naming and versioning, enabling end-users to specify a desired state through a software specification that composites a hierarchical software stack, including a base image, add-ons, firmware, and solutions, ensuring compatibility and easy consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If software components are tightly integrated with inter-dependencies, then system reliability is improved, but lifecycle management complexity increases and piecemeal changes become difficult
Solution Approach 1:
The patent segments the virtualization software into independent Software Installation Bundles (SIBs), each representing a discrete, versioned component. This segmentation allows individual SIBs to be updated, added, or removed without affecting the entire system, thereby reducing lifecycle management complexity while preserving system reliability through controlled dependencies.
Solution Approach 2:
The patent implements a dynamic software composition model where the virtualization software image is assembled at installation time by selecting and combining specific versions of SIBs based on a software bill of materials (SBOM). This dynamic approach enables flexible lifecycle management where individual components can be independently updated by modifying the SBOM, without requiring complete system reinstallation.
2Adaptability or versatility
If multiple software vendors and OEMs contribute components, then software functionality and adaptability are improved, but tracking and managing the current state of software configurations becomes difficult
Solution Approach 1:
The patent implements a comprehensive feedback mechanism through the SBOM, which automatically tracks and records the exact version, vendor, and dependency information of each SIB in the virtualization software image. This feedback system provides real-time visibility into the software configuration state, enabling users to answer questions about current software composition and ensuring compliance with desired states through automated comparison and reporting.
3Stability of the object's composition
If software releases are tightly controlled with bulletins and integrated ISO images, then system stability is improved, but ease of making piecemeal changes and upgrades is reduced
Solution Approach 1:
The patent enables partial updates by allowing users to specify and apply only the necessary SIBs from a bulletin or update package, rather than requiring complete system reinstallation. This partial action approach maintains system stability through controlled integration while significantly improving ease of operation by enabling selective, piecemeal changes to the virtualization software image.
4Adaptability or versatility
If solutions are enabled to provide discrete features, then software versatility is improved, but compatibility conflicts and upgrade complexity increase
Solution Approach 1:
The patent performs preliminary compatibility checking and dependency resolution during the software image assembly phase, before deployment. The SBOM pre-validates that selected SIBs are compatible with each other and with the base image version, and pre-resolves any dependency conflicts. This preliminary action eliminates compatibility issues before they manifest during upgrades, reducing upgrade complexity while maintaining solution versatility.
Data Source
AI summary
A method of installing an image of a virtualization software in a cluster of hosts includes: in response to a user input, generating a software specification that specifies a base image of the virtualization software and a solution to be enabled; retrieving metadata of the base image, metadata of the solution, and a constraint of the solution; generating a desired image of the virtualization software based on the metadata of the base image and the metadata of the solution in accordance with the constraint; and instructing each host in the duster to install the desired image of the virtualization software.


