Decentralized Host Software Update via Neighbor Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing methods for managing the lifecycle of host clusters in a software-defined datacenter are time-consuming, error-prone, and require centralized software installation bundles (SIBs) from a virtualization management server, which can be inefficient, especially when hosts are geographically distributed and the server is unavailable.

Innovation Solution

A method where a host in a cluster determines the required software installation bundles needed for an upgrade, identifies a neighboring host to download these bundles from, and executes the upgrade using them, decentralizing the distribution process and reducing reliance on a central virtualization management server.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If hosts download software installation bundles from a centralized virtualization management server, then update management is simplified and controlled, but the process becomes time-consuming and creates bottlenecks especially when hosts are geographically distributed

Engineering Contradiction:
Improvecentralized update managementVSAvoidupdate download time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent segments the centralized software distribution system into multiple distributed Software Installation Bundle (SIB) caches across different hosts in the cluster. Instead of all hosts downloading from a single central server, the system divides the distribution function across multiple nodes, allowing parallel downloads and reducing the bottleneck effect. This segmentation enables hosts to download SIBs from nearby cached copies rather than traversing long network paths to a centralized server.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to the distribution architecture by creating a multi-level cache hierarchy. SIBs are cached not only on the virtualization management server but also on multiple host nodes throughout the cluster. This adds a spatial dimension to the distribution system, allowing hosts to obtain updates from geographically closer cached sources rather than relying solely on a centralized remote server.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Stability of the object's composition

If all hosts download software installation bundles from a single virtualization management server, then version consistency is maintained, but the server becomes a single point of failure and bottleneck

Engineering Contradiction:
Improvesoftware version consistencyVSAvoidavailability of update bundles
Core Design Contradiction:
Stability of the object's compositionVSReliability

Solution Approach 1:

The patent implements local quality by allowing different hosts to have local cached copies of SIBs tailored to their specific needs and locations. Each host can maintain a local cache of required software bundles, enabling it to perform updates independently when the central server is unavailable. This localization of update capabilities improves reliability while the versioning control mechanisms maintain consistency across the cluster.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent introduces intermediary SIB cache hosts that act as mediators between the central virtualization management server and end hosts requiring updates. These intermediary nodes store cached copies of SIBs and can serve multiple hosts, distributing the load and providing backup capabilities. If the central server fails, these intermediaries can continue to provide update bundles to their dependent hosts.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Extent of automation

If the virtualization management server is unavailable, then centralized update management fails, but hosts cannot obtain necessary software bundles for updates

Engineering Contradiction:
Improvecentralized lifecycle managementVSAvoidability to update without central server
Core Design Contradiction:
Extent of automationVSAdaptability or versatility

Solution Approach 1:

The patent implements preliminary action by pre-caching Software Installation Bundles on multiple host nodes before they are needed for updates. Hosts and intermediary nodes proactively download and store SIBs in advance, so when update operations are required, the bundles are already available locally or nearby. This eliminates the need for hosts to contact the central server at the moment of update, enabling updates to proceed even when the central server is unavailable.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables self-service by allowing hosts to autonomously obtain software installation bundles from cached sources without requiring active intervention or availability of the central virtualization management server. Hosts can independently query local and neighboring hosts for required SIBs, download them, and perform self-upgrades. This decentralized self-service capability ensures update operations can proceed autonomously even when centralized management is down.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12159132B2Obtaining software updates from neighboring hosts in a virtualized computing system
Publication Date: 2024.12.03 VMWARE INC
  • US12159132B2 patent drawing
  • US12159132B2 patent drawing
  • US12159132B2 patent drawing

AI summary

An example method of upgrading a host in a cluster under management of a lifecycle manager in a virtualized computing system includes: receiving, from the lifecycle manager at a host in the cluster being upgraded, a desired software specification for a hypervisor of the host; determining, by the host, a list of required software installation bundles (SIBs) to satisfy the desired software specification; identifying a neighboring host in the cluster for the host; downloading, from the neighboring host to the host, at least a portion of the required SIBs; and executing an upgrade of the hypervisor in the host using the required SIBs.