Cluster Node Upgrade Orchestration for Zero-Downtime Maintenance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Service providers face challenges in quickly and efficiently updating and maintaining cluster services without causing downtime, as existing methods often require individual nodes to be taken offline for maintenance, leading to compatibility issues and prolonged downtime.

Innovation Solution

A method and apparatus that determine the status of a cluster and its nodes, allowing for sequential or parallel upgrades while maintaining service availability by failing over workloads to other nodes, applying patches, and verifying successful upgrades, with the ability to roll back if issues arise, ensuring continuous service and compatibility across nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If individual nodes are taken offline for maintenance, then upgrades can be applied to ensure compatibility and stability, but service downtime occurs and productivity decreases

Engineering Contradiction:
Improvecompatibility and stabilityVSAvoidservice availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The cluster is segmented into multiple independent nodes that can be upgraded individually. The system divides the monolithic upgrade process into discrete node-level operations, allowing selective maintenance of specific nodes while others remain operational. This segmentation enables parallel upgrade paths and maintains service continuity through distributed architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by creating checkpoints and snapshots before upgrades. Status information is determined in advance, and rollback capabilities are pre-configured. These preliminary measures ensure that if an upgrade fails, the system can automatically revert to the previous stable state, guaranteeing compatibility and stability without prolonged downtime.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If sequential upgrades are performed on cluster nodes, then compatibility issues are reduced, but maintenance time increases and productivity decreases

Engineering Contradiction:
ImprovecompatibilityVSAvoidmaintenance time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system implements periodic action through phased upgrade cycles. Nodes are upgraded in controlled waves or batches rather than all at once or one at a time. Status information is periodically assessed between phases to determine compatibility and guide the next upgrade wave. This periodic approach balances compatibility assurance with reduced total maintenance time.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system dynamically changes upgrade parameters such as batch size, parallelism level, and node selection criteria based on cluster status information. By adjusting these parameters, the system optimizes the balance between maintaining compatibility through careful sequencing and reducing maintenance time through parallel operations when conditions permit.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If parallel upgrades are performed on multiple nodes, then productivity is improved and downtime is reduced, but compatibility issues and system complexity increase

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

Solution Approach 1:

The system continuously monitors status information from all nodes during parallel upgrades and uses this feedback to dynamically adjust the upgrade process. Compatibility issues are detected through feedback mechanisms, and the system responds by pausing, rolling back, or adjusting the upgrade plan. This feedback loop manages complexity by providing real-time visibility and automated response to parallel upgrade challenges.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system introduces intermediary components such as upgrade orchestration layers, status information collectors, and coordination mechanisms that manage parallel upgrades. These intermediaries abstract the complexity of coordinating multiple simultaneous upgrades, handling node selection, timing synchronization, and conflict resolution, thereby enabling parallel operations without proportionally increasing management complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If comprehensive status information is collected before upgrades, then upgrade decisions are more accurate and reliability improves, but time and computational resources are consumed

Engineering Contradiction:
Improveupgrade decision accuracyVSAvoidstatus determination time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs partial status information collection focused on critical parameters necessary for upgrade decisions rather than comprehensive monitoring of all system aspects. By determining only the essential status information needed for compatibility assessment and node selection, the system achieves sufficient decision accuracy without the time and computational overhead of exhaustive status gathering.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9032053B2Method and apparatus for upgrading components of a cluster
Publication Date: 2015.05.12 NOKIA TECHNOLOGIES OY
  • US9032053B2 patent drawing
  • US9032053B2 patent drawing
  • US9032053B2 patent drawing

AI summary

An approach is provided for upgrading components of a cluster. One or more components of at least one server of a cluster of servers are determined to be upgraded. Status information of the cluster, the at least one server, or a combination thereof is determined. It is determined whether to initiate another upgrade of one or more other components of the at least one server, another one of the servers, or a combination thereof based, at least in part, on the status information.