Cloud Cluster Provisioning via Parallel Initialization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud-based applications experience significant delays in resource availability and dataset loading due to lengthy initialization processes when scaling into the cloud.

Innovation Solution

A computer-implemented method for provisioning cloud computing clusters that initiates the initialization of a single processing node and attached storage device, requests and configures an IP address and device ID, and sets up a clustered filesystem and WAN cache before completing the initialization process, allowing for early execution of application threads and incremental resource addition.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the initialization process is performed sequentially for all processing nodes before application deployment, then resource allocation is ensured, but application startup delay increases significantly

Engineering Contradiction:
Improveresource allocationVSAvoidapplication startup delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by allocating resource identifiers (IP addresses, device IDs) and configuring filesystem metadata before the initialization process completes. This allows the application to start using resources while initialization continues in the background, resolving the contradiction between ensuring resource allocation and reducing startup delay.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The initialization process is segmented into independent stages: resource identifier allocation, filesystem configuration, and actual node initialization. By decoupling these stages, the system can proceed with application deployment after allocating resources, while initialization continues asynchronously, thus reducing startup delay without compromising resource allocation reliability.

Inventive Principle:
Principle #1Segmentation

2Stability of the object's composition

If all processing nodes are fully initialized before application threads execute, then system stability is maintained, but processing startup time increases

Engineering Contradiction:
Improvesystem stabilityVSAvoidprocessing startup time
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The system performs partial initialization by allocating resource identifiers and configuring filesystem structures without completing full node initialization for all processing nodes. This partial action allows application threads to start executing on available resources while the remaining initialization occurs in the background, thereby improving productivity without compromising overall system stability.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

Critical preliminary actions (resource allocation, filesystem configuration) are completed before application startup, while non-critical initialization steps continue in the background. This ensures system stability for essential operations while reducing processing startup time for application deployment.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the system waits for complete initialization of each resource before proceeding, then resource reliability is ensured, but overall provisioning time increases

Engineering Contradiction:
Improveresource reliabilityVSAvoidprovisioning time
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The system performs preliminary resource allocation and configuration actions before the initialization process completes. Resource identifiers are assigned and filesystem structures are prepared in advance, allowing the system to proceed with application deployment while initialization continues, thus ensuring resource reliability without extending provisioning time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The initialization process continues in the background without interrupting application deployment. Useful actions (application startup, data processing) continue while initialization completes, ensuring resource reliability is maintained while reducing overall provisioning time through continuous parallel execution.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS12182076B2Increasing resource utilization in cloud computing clusters
Publication Date: 2024.12.31 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12182076B2 patent drawing
  • US12182076B2 patent drawing
  • US12182076B2 patent drawing

AI summary

A computer-implemented method for provisioning cloud computing clusters includes receiving a request to create a cloud computing cluster, the cloud computing cluster comprising a clustered filesystem and a requested number of processing nodes and attached storage devices associated with the cloud computing cluster and initiating an initialization process for a single processing node and a corresponding attached storage device responsive to receiving the request to create the cloud computing cluster. The method may also include, previous to completion of the initialization process, requesting and receiving an IP address for the single processing node and a device ID for the corresponding attached storage device from one or more cloud infrastructure controllers and configuring the clustered filesystem and a corresponding WAN cache using the received IP address and the received device ID. A system and computer program product corresponding to the above method are also disclosed herein.