Cluster Software Update via Segmented Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Major software updates in high-performance computing clusters require complete stoppages, leading to significant service interruptions and increased maintenance periods, posing risks and costs, especially in large clusters.

Innovation Solution

A method that splits the cluster into temporary migration and production clusters, allowing for incremental software updates while ensuring consistency and minimizing service disruptions by iteratively testing and validating the temporary migration cluster before integrating it into the final production cluster.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complete cluster shutdown is performed for software updates, then update reliability is improved, but service interruption time increases

Engineering Contradiction:
Improveupdate reliabilityVSAvoidservice interruption time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The cluster is divided into multiple independent nodes or groups of nodes. The update process is applied segment by segment, allowing other parts of the cluster to remain operational. This segmentation enables continuous service during updates by isolating the update impact to specific segments only.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Software updates are prepared and tested in advance on a separate validation cluster before being deployed to the production cluster. This preliminary action ensures update reliability is verified beforehand, allowing safer deployment without requiring complete cluster shutdown.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If incremental node updates are performed, then service continuity is improved, but update complexity increases

Engineering Contradiction:
Improveservice continuityVSAvoidupdate complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

A validation cluster is created as a copy of the production cluster configuration. This copy is used to test and validate software updates in isolation, replicating the production environment without affecting actual services. The validation cluster serves as a sandbox for update testing before production deployment.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The validation cluster acts as an intermediary between update development and production deployment. It mediates the update process by providing a safe environment for testing, validation, and verification before changes are applied to the production cluster, thereby managing complexity through a dedicated intermediate layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If validation cluster is created for update testing, then update reliability is improved, but resource consumption increases

Engineering Contradiction:
Improveupdate reliabilityVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The validation cluster and production cluster share common infrastructure resources such as storage systems, network infrastructure, and administrative management. This merging of shared resources allows the validation cluster to operate without requiring dedicated physical hardware for every component, reducing overall resource consumption while maintaining update validation capability.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentEP2721487B1Method, apparatus and computer program for software update of clusters to optimise the availability of these
Publication Date: 2020.11.18 BULL SA
  • EP2721487B1 patent drawingFigure 1
  • EP2721487B1 patent drawingFigure 2~4
  • EP2721487B1 patent drawingFigure 3a~3e

AI summary

The invention particularly relates to the software update of device elements of a cluster for migrating an initial cluster to a final cluster, said initial cluster being divided into temporary migration and generation clusters during the migration. After identifying (400) a set of devices, said devices are assigned (405) to the temporary migration cluster, and an element of a device from the set of devices is updated. Said temporary generation cluster includes the devices from said plurality of devices except for the devices from among said plurality of devices that are assigned to said temporary migration cluster. Said temporary migration and generation clusters are logically separate. Said temporary migration cluster is then tested (425), and in response to said test, if said temporary migration cluster can be considered to be valid, the final generation cluster is configured (440).