Storage Upgrade Integration Points

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face challenges in efficiently coordinating and orchestrating software upgrades across multiple appliances, leading to complex dependencies and potential runtime errors, especially during non-disruptive upgrades (NDUs).

Innovation Solution

The implementation of defined upgrade integration points provides a structured approach to guide upgrades, allowing for the sequential upgrading of appliances and nodes while managing software clusters and rollback processes. This involves associating code entities with integration points to perform specific tasks, such as determining which appliances have certain software components running, and executing rollback processes if necessary.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software upgrades are performed across multiple storage appliances, then the data storage system can be updated to new versions, but complex dependencies and runtime errors occur during the upgrade process

Engineering Contradiction:
Improveupgrade success rateVSAvoidupgrade coordination complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The upgrade process is divided into discrete workflow processing points (integration points) that can be independently managed and executed. Each integration point represents a specific stage in the upgrade workflow where particular tasks must be completed, allowing the complex upgrade process to be segmented into manageable, ordered steps that reduce coordination complexity and prevent runtime errors.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Code entities are associated with integration points in advance of the actual upgrade execution. This preliminary association establishes the upgrade workflow structure and dependencies before the upgrade begins, allowing the system to pre-validate configurations and prepare necessary actions, thereby reducing runtime errors and simplifying the actual upgrade execution.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If multiple software clusters are upgraded simultaneously, then upgrade time is reduced, but coordination complexity and potential for errors increase

Engineering Contradiction:
Improveupgrade speedVSAvoidupgrade orchestration complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The upgrade workflow allows for dynamic execution of code entities at different integration points based on the specific state and configuration of each storage appliance. The system can adaptively determine which code entities to execute and in what order, allowing simultaneous upgrading of multiple software clusters while maintaining manageable coordination complexity through flexible, state-dependent workflow execution.

Inventive Principle:
Principle #15Dynamics

3Reliability

If rollback processes are implemented for failed upgrades, then system reliability is improved, but the upgrade workflow becomes more complex

Engineering Contradiction:
Improveupgrade rollback capabilityVSAvoidworkflow processing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Rollback capabilities are built into the upgrade workflow structure in advance, with code entities associated with integration points that can trigger rollback actions if failures occur. This beforehand cushioning ensures that if an upgrade fails at any integration point, the system can automatically initiate rollback procedures to restore the previous state, improving reliability while the structured workflow keeps the complexity manageable.

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

Data Source

PatentUS12307246B2Upgrade infrastructure with integration points
Publication Date: 2025.05.20 DELL PROD LP
  • US12307246B2 patent drawing
  • US12307246B2 patent drawing
  • US12307246B2 patent drawing

AI summary

Upgrading a cluster can include: defining integration points associated with workflow processing points of an upgrade workflow; associating a code entity with an integration point; and performing processing that executes the upgrade workflow to upgrade storage appliances, wherein first and second software clusters are installed on the storage appliances, wherein upgrading the storage appliances includes upgrading the first and second software clusters, wherein the processing includes: prior to upgrading a first storage appliance, executing first code corresponding to the integration point; in response to executing the first code, invoking the code entity to perform a first task in connection with the second cluster software prior to upgrading the first storage appliance; and upgrading the first storage appliance including upgrading a first component of the first software cluster and upgrading a second component of the second software cluster, wherein the first and second components are installed on the first storage appliance.