IP Library Granted Patent US 8,433,877
Granted Patent B2
US 8,433,877 · App. 12/910,300 · Granted Apr 30, 2013

Storage scalability management

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,433,877
App. No.
12/910,300
Granted
Apr 30, 2013
Kind
B2
Abstract

Storage scalability management is provided by adding storage in a data processing environment. A new storage subsystem is added automatically to an available storage provider only if doing so will not reduce the performance of the storage provider to an unacceptable level. If no such storage provider is available, a new storage provider is added automatically. The new storage provider is added automatically to the server and operating system that is best able to handle the additional work. Thus, a new storage subsystem is added automatically in a data processing environment in a manner that provides for system scalability while minimizing any adverse impact on system performance.

Claims (50)

1. A method of adding storage in a data processing environment, comprising:

obtaining, by a processor unit, a number of metrics for each of a number of storage providers, wherein the number of storage providers provide access to a number of storage subsystems by the data processing environment and wherein the number of metrics provide an indication of performance of each of the number of storage providers;

determining, by the processor unit, whether the number of metrics for a selected one of the number of storage providers are within a number of threshold values;

responsive to a determination that the metrics for the selected one of the number of storage providers are within the number of threshold values, adding a storage subsystem to the selected one of the number of storage providers;

determining, by the processor unit, whether the number of metrics for none of the number of storage providers are within the number of threshold values; and

responsive to a determination that the number of metrics for none of the number of storage providers are within the number of threshold values, adding a new storage provider to the data processing environment and adding the storage subsystem to the new storage provider.

2. The method of claim 1 , wherein the storage subsystem comprises a storage controller and a storage device.

3. The method of claim 1 , wherein adding a new storage provider to the data processing system comprises:

obtaining, by the processor unit, a list of servers and operating system instances for the data processing environment;

obtaining, by the processor unit, a number of system performance metrics for the servers and operating system instances, wherein the system performance metrics provide an indication of performance of the servers and operating system instances;

comparing, by the processor unit, the system performance metrics for the servers and operating system instances;

selecting, by the processor unit, a selected one of the servers and operating system instances responsive to the comparing of the system performance metrics; and

adding the new storage provider to the selected one of the servers and operating system instances.

4. The method of claim 3 , wherein the number of system performance metrics are selected from the group of metrics providing an indication of performance of the servers and operating system instances consisting of: processor utilization, memory utilization, and available file system space.

5. The method of claim 1 , wherein the number of metrics are selected from the group of metrics providing an indication of performance of a storage provider consisting of: a quantity of storage controllers assigned to the storage provider, processor utilization by the storage provider, memory consumption by the storage provider, file system usage by the storage provider, and query performance of the storage provider.

6. An apparatus, comprising:

a processor unit;

a storage performance manager configured to provide, by the processor unit, a number of metrics for each of a number of storage providers in a data processing environment, wherein the number of storage providers provide access to a number of storage subsystems by the data processing environment and

wherein the number of metrics provide an indication of performance of each of the number of storage providers;

a storage scalability configuration manager configured to add, by the processor unit, a storage subsystem to a storage provider;

a storage install manager configured to install and configure, by the processor unit, a new storage provider in the data processing environment; and a storage scalability manager configured to determine, by the processor unit, whether the number of metrics for a selected one of the number of storage providers are within a number of threshold values, responsive to a determination that the metrics for the selected one of the number of storage providers are within the number of threshold values, invoke the storage scalability configuration manager to add a storage subsystem to the selected one of the number of storage providers, determine whether the number of metrics for none of the number of storage providers are within the number of threshold values, and responsive to a determination that the number of metrics for none of the number of storage providers are within the number of threshold values, invoke the storage install manager to add a new storage provider to the data processing environment and invoke the storage scalability configuration manager to add the storage subsystem to the new storage provider.

7. The apparatus of claim 6 , wherein the storage subsystem comprises a storage controller and a storage device.

8. The apparatus of claim 6 , further comprising:

a system manager database, wherein the system manager database includes a list of servers and operating system instances for the data processing environment and a number of system performance metrics for the servers and operating system instances, wherein the system performance metrics provide an indication of performance of the servers and operating system instances; and

wherein the storage scalability manager is further configured to

obtain the list of servers and operating system instances from the system manager database,

obtain the number of system performance metrics from the system manager database,

compare the system performance metrics for the servers and operating system instances,

select a selected one of the servers and operating system instances responsive to the comparing of the system performance metrics, and

invoke the storage install manager to configure and install the new storage provider on the selected one of the servers and operating system instances.

9. The apparatus of claim 8 , wherein the number of system performance metrics are selected from the group of metrics providing an indication of performance of the servers and operating system instances consisting of: processor utilization, memory utilization, and available file system space.

10. The apparatus of claim 6 , wherein the number of metrics are selected from the group of metrics providing an indication of performance of a storage provider consisting of: a quantity of storage controllers assigned to the storage provider, processor utilization by the storage provider, memory consumption by the storage provider, file system usage by the storage provider, and query performance of the storage provider.

11. A non-transitory computer program product for adding storage in a data processing environment, said computer program product comprising:

a computer readable storage medium;

first program instructions stored in the computer readable storage medium to obtain a number of metrics for each of a number of storage providers, wherein the number of storage providers provide access to a number of storage subsystems by a data processing environment and wherein the number of metrics provide an indication of performance of each of the number of storage providers;

second program instructions stored in the computer readable storage medium to determine whether the number of metrics for a selected one of the number of storage providers are within a number of threshold values;

third program instructions stored in the computer readable storage medium to add a storage subsystem to the selected one of the number of storage providers responsive to a determination that the metrics for the selected one of the number of storage providers are within the number of threshold values;

fourth program instructions stored in the computer readable storage medium to determine whether the number of metrics for none of the number of storage providers are within the number of threshold values;

fifth program instructions stored in the computer readable storage medium to add a new storage provider to the data processing environment and to add the storage subsystem to the new storage provider responsive to a determination that the number of metrics for none of the number of storage providers are within the number of threshold values; and

wherein said first, second, third, fourth, and fifth program instructions are stored on said computer readable storage medium.

12. The non-transitory computer program product of claim 11 , wherein the storage subsystem comprises a storage controller and a storage device.

13. The non-transitory computer program product of claim 11 , further comprising:

sixth program instructions stored in the computer readable storage medium to obtain a list of servers and operating system instances for the data processing environment;

seventh program instructions stored in the computer readable storage medium to obtain a number of system performance metrics for the servers and operating system instances, wherein the system performance metrics provide an indication of performance of the servers and operating system instances;

eighth program instructions stored in the computer readable storage medium to compare the system performance metrics for the servers and operating system instances;

ninth program instructions stored in the computer readable storage medium to select a selected one of the servers and operating system instances responsive to the comparing of the system performance metrics;

tenth program instructions stored in the computer readable storage medium to add the new storage provider to the selected one of the servers and operating system instances; and

wherein said sixth, seventh, eighth, ninth, and tenth program instructions are stored on said computer readable storage medium.

14. The non-transitory computer program product of claim 13 , wherein the number of system performance metrics are selected from the group of metrics providing an indication of performance of the servers and operating system instances consisting of: processor utilization, memory utilization, and available file system space.

15. The non-transitory computer program product of claim 11 , wherein the number of metrics are selected from the group of metrics providing an indication of performance of a storage provider consisting of: a quantity of storage controllers assigned to the storage provider, processor utilization by the storage provider, memory consumption by the storage provider, file system usage by the storage provider, and query performance of the storage provider.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: MAPLEBEAR INC.
Reel/Frame 055155/0943 →