Software Defined Storage Controller Dynamic Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Enterprise-level storage controllers face challenges in automatically managing storage resources to maintain high availability and performance, as they require additional resources for handling hardware failures, low storage availability, and data redundancy, which currently necessitate human intervention.

Innovation Solution

A method for dynamically allocating storage resources from a reserve pool to a software-defined storage (SDS) controller, where multiple storage resources are assigned to a reserve pool, and policy parameters are defined to automatically allocate additional resources based on the controller's state, enhancing capacity, performance, and reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If storage resources are manually allocated to SDS controllers, then resource allocation can be controlled and optimized, but human intervention is required which increases operational complexity and response time

Engineering Contradiction:
Improveautomatic resource allocationVSAvoidresource management complexity
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The SDS controller automatically monitors its own resource state and triggers resource allocation when thresholds are met, eliminating the need for external human intervention. The controller self-manages its resource requirements by detecting when storage capacity or performance metrics warrant additional resources and autonomously initiating the allocation process from the reserve pool.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements continuous monitoring of the SDS controller's state including storage capacity utilization and performance metrics. This feedback mechanism compares current resource usage against predefined thresholds and automatically triggers resource allocation when thresholds are exceeded, creating a closed-loop control system that adapts to changing conditions without human intervention.

Inventive Principle:
Principle #23Feedback

2Reliability

If additional storage resources are allocated to handle hardware failures and redundancy, then system reliability improves, but hardware resource utilization efficiency decreases

Engineering Contradiction:
Improvesystem availabilityVSAvoidhardware resource utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system dynamically adjusts the allocation of storage resources between active controllers and the reserve pool based on real-time conditions. Resources are not statically assigned but continuously reallocated as needed, allowing the system to maintain high availability through redundancy while optimizing overall hardware utilization by sharing the reserve pool across multiple controllers.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The reserve pool of storage resources serves multiple purposes: it provides redundancy for failover, supports capacity expansion for growing controllers, and can be reallocated to different controllers based on varying needs. This multi-functional reserve pool replaces dedicated spare resources, improving overall hardware utilization while maintaining system reliability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If storage resources are pre-allocated to all possible controllers, then resource availability is ensured, but hardware resource utilization efficiency decreases

Engineering Contradiction:
Improveresource availabilityVSAvoidhardware resource utilization
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system pre-configures a reserve pool of storage resources that are ready for immediate allocation but not yet assigned to specific controllers. This preliminary preparation ensures that resources are available when needed while maintaining efficiency by only allocating from the reserve pool when actual demand arises, rather than pre-allocating to all potential controllers.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the state of storage resources from an allocated but unused state to an actively utilized state by dynamically allocating from the reserve pool based on monitored performance parameters and thresholds. This parameter-driven allocation ensures resources are available when needed while optimizing utilization by allocating only when actual demand metrics trigger the process.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10425352B2Policy driven storage hardware allocation
Publication Date: 2019.09.24 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10425352B2 patent drawing
  • US10425352B2 patent drawing
  • US10425352B2 patent drawing

AI summary

Methods, computing systems and computer program products implement embodiments of the present invention that include assigning multiple storage resources to a reserve pool, and defining one or more storage policy parameters that include allocation policies and deallocation policy parameters. A software defined storage (SDS) controller is initialized by allocating, from the reserve pool, one or more of the storage resources to the SDS controller, and a current state of the SDS controller is monitored. In a first embodiment, upon detecting that the state of the SDS controller meets a given allocation policy parameter, an additional storage resource from the reserve pool is allocated from the reserve pool to the SDS controller. In a second embodiment, upon detecting that the state of the SDS controller meets a given deallocation policy parameter, a given the SDS controller is deallocated from the SDS controller and released back to the storage pool.