IP Library › Granted Patent US 11,226,750
Granted Patent B2
US 11,226,750 · App. 16/989,245 · Granted Jan 18, 2022

Flexible deprovisioning of distributed storage

Inventors: Huamin Chen (Westford, MA); Steven Travis Nielsen (Bothell, WA); Sage Austin Weil (Madison, WI)
Assignee: Red Hat, Inc.
G06F3/0626G06F3/061G06F3/0607G06F3/067G06F3/0629
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 11,226,750
App. No.
16/989,245
Granted
Jan 18, 2022
Kind
B2
Abstract

Flexible deprovisioning of distributed storage is disclosed. For example, an orchestrator executes on a processor to measure a current storage demand factor based on a current count of service guests and a storage capacity of a plurality of storage nodes. A projected storage demand factor is calculated by (i) adjusting the current count of service guests with a timing factor resulting in a projected count, and (ii) combining the projected count with a storage class associated with the service guests. The orchestrator determines that the projected storage demand factor is lower than the current storage demand factor, and in response requests termination of a first storage node of the plurality of storage nodes based on the first storage node lacking an active communication session with the service guests. Cancel termination of the first storage node based on an association between the first storage node and a second storage node.

Claims (40)

1. A method comprising:

determining, by a processing device, that a projected storage demand factor of a plurality of storage nodes is lower than a current storage demand factor of the plurality of storage nodes;

responsive to determining that the projected storage demand factor is lower than the current storage demand factor, requesting termination of a first storage node of the plurality of storage nodes, wherein the first storage node is selected for termination based on the first storage node lacking an active communication session with any service guest of a plurality of service guests associated with the plurality of storage nodes; and

canceling terminating the first storage node based on an association between the first storage node and a second storage node.

2. The method of claim 1 , further comprising:

terminating a third storage node in response to cancelling termination of the first storage node.

3. The method of claim 1 , further comprising:

after the first storage node is selected for termination, a higher level authoritative system performs a validation procedure to check consequences for other systems from terminating the first storage node.

4. The method of claim 3 , wherein the higher level authoritative system is an orchestrator.

5. The method of claim 3 , wherein the higher level authoritative system is a cloud wide registry.

6. The method of claim 1 , wherein the processing device has access to storage utilization data across at least one of geographic regions and time zones collected by a plurality of orchestrators.

7. The method of claim 1 , further comprising:

tracking persistent volume claims from service guests instantiated for a tenant.

8. The method of claim 1 , wherein a storage container measures input output operations per second of the first storage node.

9. The method of claim 1 , further comprising:

implementing timers to measure response times to storage requests, wherein rolling averages for storage latency are tracked by a memory management unit.

10. The method of claim 1 , wherein, during a migration, writes to the first storage node are paused and buffered.

11. The method of claim 1 , wherein a third storage node is migrated from a first storage container to a second storage container without a physical data transfer by modifying at least one of memory paging and virtual linking.

12. The method of claim 1 , further comprising:

recalibrating storage capacity deprovisioning as a periodic job.

13. The method of claim 1 , wherein a termination request for a service container triggers an audit of deprovisionable or terminable dependencies of the service container.

14. A system comprising:

a processing device configured to manage a first plurality of storage nodes by executing to:

determine that a projected storage demand factor of the first plurality of storage nodes is lower than a current storage demand factor of the first plurality of storage nodes;

responsive to determining that the projected storage demand factor is lower than the current storage demand factor, request termination of a first storage node of the first plurality of storage nodes, wherein the first storage node is selected for termination based on the first storage node lacking an active communication session with any service guest of a plurality of service guests associated with the first plurality of storage nodes; and

cancel terminating the first storage node based on an association between the first storage node and a second storage node.

15. The system of claim 14 , wherein the first plurality of storage nodes is hosted on a plurality of storage guests, including a first storage guest hosting the first storage node and a second storage guest hosting the second storage node,

wherein the first storage node becomes associated with a third storage guest, and the first storage guest is terminated after the first storage node becomes associated with the third storage guest, and wherein a second plurality of storage nodes is associated with a second plurality of storage guests, and the third storage guest is a guest of the second plurality of storage guests, and

wherein a third storage node is hosted on both a third storage guest and a fourth storage guest.

16. The system of claim 14 , wherein the plurality of service guests is associated with a first tenant and a second plurality of service guests is associated with a second tenant, and a different second timing factor applies to the second tenant, and

wherein the first timing factor includes at least one of a cyclical demand and a currently unfulfilled demand.

17. The system of claim 14 , wherein a list of active communication sessions between the plurality of service guests and the first plurality of storage nodes is generated.

18. The system of claim 14 , wherein a first storage class associated with the plurality of service guests includes at least two settings of (i) a replication setting, (ii) an input/output setting, (iii) a capacity setting, (iv) a network setting, and (v) a zone setting, and

wherein a second storage class replaces at least one setting of the first storage class with a lower performance setting, and a third storage node of the first plurality of storage nodes is reconfigured from the first storage class to the second storage class, and wherein the third storage node is reconfigured based on a measured usage criteria of the third storage node.

19. The system of claim 14 , wherein a third storage node of the first plurality of storage nodes is instantiated in a storage guest based on determining that the projected storage demand factor is higher than the current storage demand factor.

20. A method comprising:

determining, based on a calculated projected storage demand factor, that a first plurality of storage nodes is overprovisioned;

determining, based on active communication sessions between the first plurality of storage nodes and a first plurality of service guests, to deprovision a first storage node of the first plurality of storage nodes; and

deprovisioning the first storage node by reconfiguring the first storage node from a first storage class to a second storage class,

wherein deprovisioning of a second storage node of the first plurality of storage nodes is cancelled based on an association between the second storage node and a third storage node, and wherein the third storage node is a storage node of a different second plurality of storage nodes associated with a second plurality of service guests and the third storage node is not a member of the first plurality of storage nodes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 11, 2020
From: CHEN, HUAMIN; NIELSEN, STEVEN TRAVIS; WEIL, SAGE AUSTIN
To: RED HAT, INC.
Reel/Frame 053460/0100 →
Continuity (2)
Continuation 16028059 · Jul 5, 2018
Related Publication 20200371698A1 · Nov 26, 2020