IP Library Granted Patent US 10,191,958
Granted Patent B1
US 10,191,958 · App. 15/497,893 · Granted Jan 29, 2019

Storage provisioning in a data storage environment

Inventors: William J Elliott, IV (Holden, MA); Anoop G. Ninan (Milford, MA); Evgeny Roytman (Sharon, MA); Thomas L. Watson (Richardson, TX); Ameer Jabbar (Lilburn, GA)
Assignee: EMC IP Holding Company LLC
G06F17/30575G06F11/1464G06F2201/84
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 10,191,958
App. No.
15/497,893
Granted
Jan 29, 2019
Kind
B1
Abstract

A system, method, and computer program product for storage provisioning in a data storage environment comprising protecting, through an orchestration API, a source volume at a source site by setting the source volume to be replicated to a target volume at a target site through the use of a replication appliance; wherein the API is enabled to create network zones between the source site and the target site for replication from the source site to the target site and wherein the network zone is configured to include the replication appliance; wherein the API is enabled to mask storage devices used to store data on the source volume and the target volume.

Claims (33)

1. A system for storage provisioning in a data storage environment, the system comprising:

an orchestration API; and

computer-executable program code operating in memory coupled with a processor in communication with a database, wherein the computer-executable program code is configured to enable a processor to execute logic to enable:

receiving, through the orchestration API, a request to create a replicated volume, wherein the request comprises a source volume size, a source site, and a source volume protocol, wherein the source site indicates a location at which an uncreated source volume is to be created;

based on the request, protecting, through the orchestration API, a source volume at the source site by setting the source volume to be replicated to a target volume at a target site through the use of a replication appliance; wherein the API is enabled to create network zones between the source site and the target site for replication from the source site to the target site and wherein the network zone is configured to include the replication appliance; wherein the API is enabled to mask storage devices used to store data on the source volume and the target volume to a respective replication appliance cluster node.

2. The system of claim 1 wherein the orchestration API is enabled to:

determine connectivity of one or more replication appliances, wherein the replication appliances include the replication appliance, and storage arrays; wherein at least a first storage array of the storage arrays is on the source site and wherein at least a second storage array of the storage arrays is on the target site; and wherein the storage arrays comprise the storage devices; and

determine configurations of the one or more storage arrays and one or more replication volumes to match an API request for protecting the source volume with the target volume inputted to the orchestration API.

3. The system of claim 2 wherein the orchestration API is enabled to create the source volume on the first storage array and creating the target volume on the target site by interacting with the first storage array on the source site and the second storage array on the target site through a common storage interface.

4. The system of claim 3 wherein an API request to create a replicated volume with a set of parameters is enabled to function with a required set of parameters consisting essentially of the storage size, storage protocol, and source location.

5. The system of claim 2 wherein the orchestration API is enabled to determine a best set of the configurations of the one or more storage arrays and one or more replication volumes; wherein if the best set is a set of one the orchestration API uses that configuration for the replication; and wherein if the best set has multiple configurations requesting input as to which configuration to use in the replication.

6. The system of claim 4 wherein the API request is enabled to function with a set of parameters including a target site; wherein a determination is made whether the target site has been included in the API request; and wherein the API is enabled to choose the target site based on a negative determination of target site included.

7. A computer implemented method comprising:

receiving, through an orchestration API, a request to create a replicated volume, wherein the request comprises a source volume size, a source site, and a source volume protocol, wherein the source site indicates a location at which an uncreated source volume is to be created;

based on the request, protecting, through the orchestration API, a source volume at the source site by setting the source volume to be replicated to a target volume at a target site through the use of a replication appliance; wherein the API is enabled to create network zones between the source site and the target site for replication from the source site to the target site and wherein the network zone is configured to include the replication appliance; wherein the API is enabled to mask storage devices used to store data on the source volume and the target volume to a respective replication appliance cluster node.

8. The method of claim 1 further comprising:

determining connectivity of one or more replication appliances, wherein the replication appliances include the replication appliance, and storage arrays; wherein at least a first storage array of the storage arrays is on the source site and wherein at least a second storage array of the storage arrays is on the target site; and wherein the storage arrays comprise the storage devices; and

determining configurations of the one or more storage arrays and one or more replication volumes to match an API request for protecting the source volume with the target volume inputted to the orchestration API.

9. The method of claim 2 wherein the orchestration API is enabled to create the source volume on the first storage array and creating the target volume on the target site by interacting with the first storage array on the source site and the second storage array on the target site through a common storage interface.

10. The method of claim 3 wherein an API request to the orchestration API to create a replicated volume with a set of parameters is enabled to function with a required set of parameters consisting essentially of the storage size, storage protocol, and source location.

11. The method of claim 2 wherein the orchestration API is enabled to determine a best set of the configurations of the one or more storage arrays and one or more replication volumes; wherein if the best set is a set of one the orchestration API uses that configuration for the replication; and wherein if the best set has multiple configurations requesting input as to which configuration to use in the replication.

12. The method of claim 4 wherein the API request is enabled to function with a set of parameters including a target site; wherein a determination is made whether the target site has been included in the API request; and wherein the API is enabled to choose the target site based on a negative determination of target site included.

13. A computer program product comprising:

a non-transitory computer readable medium encoded with computer executable program, the code enabling:

receiving, through an orchestration API, a request to create a replicated volume, wherein the request comprises a source volume size, a source site, and a source volume protocol, wherein the source site indicates a location at which an uncreated source volume is to be created;

based on the request, protecting, through the orchestration API, a source volume at the source site by setting the source volume to be replicated to a target volume at a target site through the use of a replication appliance; wherein the API is enabled to create network zones between the source site and the target site for replication from the source site to the target site and wherein the network zone is configured to include the replication appliance; wherein the API is enabled to mask storage devices used to store data on the source volume and the target volume to a respective replication appliance cluster node.

14. The computer program product of claim 13 , wherein the code further enables:

determining connectivity of one or more replication appliances, wherein the replication appliances include the replication appliance, and storage arrays; wherein at least a first storage array of the storage arrays is on the source site and wherein at least a second storage array of the storage arrays is on the target site; and wherein the storage arrays comprise the storage devices; and

determining configurations of the one or more storage arrays and one or more replication volumes to match an API request for protecting the source volume with the target volume inputted to the orchestration API.

15. The computer program product of claim 14 wherein the orchestration API is enabled to create the source volume on the first storage array and creating the target volume on the target site by interacting with the first storage array on the source site and the second storage array on the target site through a common storage interface.

16. The computer program product of claim 15 wherein an API request to the orchestration API to create a replicated volume with a set of parameters is enabled to function with a required set of parameters consisting essentially of the storage size, storage protocol, and source location.

17. The computer program product of claim 14 wherein the orchestration API is enabled to determine a best set of the configurations of the one or more storage arrays and one or more replication volumes; wherein if the best set is a set of one the orchestration API uses that configuration for the replication; and wherein if the best set has multiple configurations requesting input as to which configuration to use in the replication.

18. The computer program product of claim 16 wherein the API request is enabled to function with a set of parameters including a target site; wherein a determination is made whether the target site has been included in the API request; and wherein the API is enabled to choose the target site based on a negative determination of target site included.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (042769/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 14, 2017
From: ELLIOTT, WILLIAM J.; NINAN, ANOOP GEORGE; ROYTMAN, EVGENY; WATSON, THOMAS L.; JABBAR, AMEER
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 043591/0043 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
Continuity (1)
Continuation 13886687 · May 3, 2013
Cited By (1)
US 12,717,689