Source: https://patents.google.com/patent/US6801992
Timestamp: 2018-05-24 19:50:32
Document Index: 294761553

Matched Legal Cases: ['Application No. 60', 'Application No. 60', 'application No. 10', 'application No. 10', 'application No. 10', 'application No. 10', 'application No. 10', 'application No. 10', 'application No. 10']

US6801992B2 - System and method for policy based storage provisioning and management - Google Patents
System and method for policy based storage provisioning and management Download PDF
US6801992B2
US6801992B2 US10077482 US7748202A US6801992B2 US 6801992 B2 US6801992 B2 US 6801992B2 US 10077482 US10077482 US 10077482 US 7748202 A US7748202 A US 7748202A US 6801992 B2 US6801992 B2 US 6801992B2
US10077482
US20020174306A1 (en )
This application claims priority to U.S. Provisional Application No. 60/268,694, filed Feb. 13, 2001,entitled “Virtual Storage Systems” which is incorporated herein by reference.
The present application is related to other applications, filed on this date, Feb. 13, 2001, and assigned to the present assignee, that are directed to other aspects of storage servers and that claim priority to U.S. Provisional Application No. 60/268,694 above: U.S. Nonprovisional patent application No. 10/077,696, entitled “Silicon Based Storage Virtualization Server”; U.S. Nonprovisional patent application No. 10/076,855, entitled “Storage Virtualization and Storage Management to Provide Higher Level Storage Services”; U.S. Nonprovisional patent application No. 10/076,909, entitled “Method and Apparatus for Identifying Storage Devices”; U.S. Nonprovisional patent application No. 10/077,181, entitled “Virtual Data Center”; U.S. Nonprovisional patent application No. 10/076,906, entitled “Failover Processing in a Storage System”; U.S. Nonprovisional patent application No. 10/077,199, entitled “RAID at Wire Speed” and U.S. Nonprovisional patent application No. 10/076,878, entitled “Multi-Level Hardware Based Device Security”. These applications are incorporated herein by reference for all purposes.
A storage attribute is a property of storage that is used to characterize the storage. For example, an attribute may characterize a storage's performance, reliability, availability, cost, etc. The storage attributes of storage devices need to be discovered by software in VSX 100 in order to characterize the storage device. For example, storage attributes are discovered by systems and methods described in Attorney Docket No. 20949P-000500US entitled, “Method and Apparatus for Identifying Storage Devices,”. In addition, as described hereinafter, VSX 100 may modify or create storage attributes to change the storage characteristic in order to provision storage. For example, changing the SCSI Mode Pages or creating a mirror set using several disks the characteristic of the storage may be changed.
Storage The RAID-level of the external device. At a
Reliability minimum, the attribute needs to identify
RAID level) identify the RAID-level (RAID-1, RAID-5,
etc.), if the storage is a RAID.
Connec- Whether there are single or multiple paths
tivity- from the host to the storage.
transfer over the lifetime of the application
Avail- The fraction of time that the storage system Probability
ability is servicing requests that is needed by the
Reliability The probability need by the application that Probability
the storage system will be servicing requests as a function
continuously from time 0 to time t of time
Correctness The fraction of data that the application can Probability
violation tolerate dropped or incorrectly transferred
The storage mapping rules may also be specified for the storage provisioning policy. The mapping rules specify rules for exporting the storage to a consumer of the storage, such as the server or server cluster. The mapping rules include policies on LUN (SCSI Logical Unit Number), the access rights to the data on the storage, etc.
In one embodiment, an administrator creates a storage provisioning policy. In another embodiment, applications or software agents acting on behalf of the application create the storage provisioning policies. Policies may also be created dynamically from a policy that is being enforced. In this case, changes in characteristics of the storage, application, or profile may cause policies to be dynamically created. For example, storage heuristic metadata may have a range of 1-100,000 MB/second. An action may be created indicating that if discovered data is greater than 100,000 MB/second, an action should be taken by VSX 100 to create a new policy using new storage heuristics for the new data. Additionally, storage heuristic metadata for the storage attribute may be changed because of the new discovered data.
In step S716, VSX 100 determines if the heuristics are being satisfied and that there are no changes to the characteristics of the storage consumer. The monitoring ensures that QoSS is being met and that the characteristics of the storage consumer have not changed.
If the heuristics are being met and there are no changes to the characteristics of the storage consumer, the process reiterates back to step S714 to continue monitoring discovered storage attribute data.
1. A method for provisioning one or more storage devices using one or more storage provisioning policies and discovered storage attribute data from the one or more storage devices, the one or more storage provisioning policies comprising one or more storage heuristics for one or more storage attributes, the method comprising:
comparing the discovered storage attribute data associated with the one or more storage devices to the one or more storage heuristics for the one or more storage attributes in the one or more storage provisioning policies; and
if the discovered storage attribute data associated with a storage device in the one or more storage devices satisfy the one or more storage heuristics for the one or more storage attributes, provisioning the storage device.
2. The method of claim 1, further comprising if no discovered storage attribute data from the one or more storage devices satisfy the one or more storage heuristics for the one or more storage attributes, creating a virtual storage device, the virtual storage device configured to satisfy the one or more storage heuristics.
3. The method of claim 1, further comprising if no discovered storage attribute data from the one or more storage devices satisfy the one or more storage heuristics for the one or more storage attributes, configuring a storage device to satisfy the one or more storage heuristics.
4. The method of claim 1, wherein provisioning the storage device comprises using storage mapping rules to provision the storage device, wherein the storage mapping rules are specified in the one or more storage provisioning policy.
5. The method of claim 1, further comprising dynamically adapting the one or more storage provisioning policies.
6. The method of claim 1, further comprising creating new storage provisioning policies.
7. The method of claim 1, further comprising monitoring the one or more storage heuristics.
8. The method of claim 7, further comprising taking a corrective action if one or more of the storage heuristics are violated.
9. The method of claim 7, further comprising creating a virtual storage device if one or more of the storage heuristics are violated, the virtual storage device configured to satisfy the one or more storage heuristics.
taking a corrective action if the characteristics of a storage consumer changes.
11. A method for creating one or more storage provisioning policies, the method comprising:
defining one or more storage attributes;
defining one or more storage heuristic metadata associated with the one or more storage attributes; and
specifying one or more storage heuristics using the defined one or more storage heuristic metadata associated with the one or more defined storage attributes to create a storage provisioning policy in the one or more storage provisioning policies, the storage provisioning policy usable to provision a storage device, wherein the provisioned storage device includes discoverable data that satisfies the storage heuristics for the storage attributes.
12. The method of claim 11, further comprising defining one or more storage mapping rules; and
using the defined one or more storage mapping rules to create the storage provisioning policy.
13. The method of claim 11, further comprising dynamically adapting the storage provisioning policy.
14. The method of claim 13, wherein dynamically adapting the storage provisioning policy comprises discovering newly defined storage attributes and newly defined storage heuristics associated with the newly defined storage attributes.
15. The method of claim 11, further comprising defining requirements in the storage provisioning policy.
16. The method of claim 11, further comprising defining actions to be taken if one or more heuristics are violated for the storage provisioning policy.
17. The method of claim 16, wherein the action comprises taking a corrective action if one or more of the storage heuristics are violated.
18. The method of claim 16, wherein the action comprises creating a virtual storage device if one or more of the storage heuristics are violated, the virtual storage device configured to satisfy the one or more storage heuristics.
19. The method of claim 11, further comprising storing the specified storage heuristics in a storage profile.
20. A method for provisioning one or more storage devices using discovered storage attribute data from the one or more storage devices and supported storage attributes with associated one or more defined storage heuristic metadata, the method comprising:
creating a storage provisioning policy, wherein creating the storage provisioning policy comprises specifying storage heuristics using the one or more defined storage heuristic metadata associated with the one or more storage attributes;
comparing the discovered storage attribute data associated with the one or more storage devices to the one or more storage heuristics in the storage provisioning policy; and
if the discovered storage attribute data associated with a storage device in the one or more storage devices satisfy the one or more storage heuristics, provisioning the storage device.
21. The method of claim 20, further comprising if no discovered storage attribute data from the one or more storage devices satisfy the one or more storage heuristics, creating a virtual storage device, the virtual storage device configured to satisfy the one or more storage heuristics.
22. The method of claim 20, wherein creating the storage provisioning policy further comprises specifying storage mapping rules.
23. The method of claim 22, wherein provisioning the storage device comprises using the storage mapping rules to provision the storage device.
24. A storage management device for provisioning one or more storage devices using one or more storage provisioning policies and discovered storage attribute data from the one or more storage devices, the one or more storage provisioning policies comprising one or more storage heuristics for one or more storage attributes, the method comprising:
instructions for comparing the discovered storage attribute data associated with the one or more storage devices to the one or more storage heuristics for the one or more storage attributes in the one or more storage provisioning policies; and
instructions for provisioning the storage device if the discovered storage attribute data associated with a storage device in the one or more storage devices satisfy the one or more storage heuristics for the one or more storage attributes.
25. The storage management device of claim 24, further comprising instructions for if no discovered storage attribute data from the one or more storage devices satisfy the one or more storage heuristics for the one or more storage attributes, creating a virtual storage device, the virtual storage device configured to satisfy the one or more storage heuristics.
26. The storage management device of claim 24, further comprising instructions for if no discovered storage attribute data from the one or more storage devices satisfy the one or more storage heuristics for the one or more storage attributes, configuring a storage device to satisfy the one or more storage heuristics.
27. The method of claim 24, wherein instructions for provisioning the storage device comprise instructions for using storage mapping rules to provision the storage device, wherein the storage mapping rules are specified in the one or more storage provisioning policies.
28. The storage management device of claim 24, further comprising instructions for dynamically adapting the one or more storage provisioning policies.
29. The storage management device of claim 24, further comprising instructions for creating new storage provisioning policies.
30. The storage management device of claim 24, further comprising instructions for monitoring the one or more storage heuristics.
31. The storage management device of claim 24, further comprising:
instructions for taking a corrective action if one or more of the storage heuristics are violated.
32. The storage management device of claim 31, further comprising:
instructions for creating a virtual storage device if one or more of the storage heuristics are violated, the virtual storage device configured to satisfy the one or more storage heuristics.
instructions for taking a corrective action if the characteristics of a storage consumer changes.
34. A storage management device for creating one or more storage provisioning policies, the method comprising:
one or more storage attributes;
one or more storage heuristic metadata associated with the one or more storage attributes; and
instructions for receiving a specification of one or more storage heuristics using the defined one or more storage heuristic metadata associated with the one or more defined storage attributes to create a storage provisioning policy in the one or more storage provisioning policies, the storage provisioning policy usable to provision a storage device, wherein the provisioned storage device includes discoverable data that satisfies the storage heuristics for the storage attributes.
35. The method of claim 34, further comprising defining one or more storage mapping rules; and
36. The storage management device of claim 34, further comprising instructions for dynamically adapting the storage provisioning policy.
37. The storage management device of claim 36, wherein instructions for dynamically adapting the storage provisioning policy comprises instructions for discovering newly defined storage attributes and newly defined storage heuristics associated with the newly defined storage attributes.
38. The storage management device of claim 34, further comprising instructions for receiving definitions of requirements in the storage provisioning policy.
39. The method of claim 34, further comprising instructions for receiving definitions of actions to be taken if one or more heuristics are violated for the storage provisioning policy.
40. The storage management device of claim 34, further comprising instructions for storing the specified one or more storage heuristics in a storage profile.
41. A storage management device for provisioning one or more storage devices using discovered storage attribute data from the one or more storage devices and supported storage attributes with associated one or more defined storage heuristic metadata, the method comprising:
instructions for creating a storage provisioning policy, wherein creating the storage provisioning policy comprises specifying one or more storage heuristics using the one or more defined storage heuristic metadata associated with the one or more storage attributes;
instructions for comparing the discovered storage attribute data associated with the one or more storage devices to the one or more storage heuristics the storage provisioning policy; and
if the discovered storage attribute data associated with a storage device in the one or more storage devices satisfy the one or more storage heuristics, instructions for provisioning the storage device.
42. The method of claim 41, further comprising if no discovered storage attribute data from the one or more storage devices satisfy the one or more storage heuristics, creating a virtual storage device, the virtual storage device configured to satisfy the one or more storage heuristics.
43. The method of claim 41, wherein creating the storage provisioning policy further comprises specifying storage mapping rules.
44. The method of claim 43, wherein provisioning the storage device comprises using the storage mapping rules to provision the storage device.
US10077482 2001-02-13 2002-02-13 System and method for policy based storage provisioning and management Active 2022-10-23 US6801992B2 (en)
US10077482 US6801992B2 (en) 2001-02-13 2002-02-13 System and method for policy based storage provisioning and management
US10928081 US7065616B2 (en) 2001-02-13 2004-08-26 System and method for policy based storage provisioning and management
US10928081 Continuation US7065616B2 (en) 2001-02-13 2004-08-26 System and method for policy based storage provisioning and management
US20020174306A1 true US20020174306A1 (en) 2002-11-21
US6801992B2 true US6801992B2 (en) 2004-10-05
ID=23024069
US10076855 Active 2023-11-09 US7415506B2 (en) 2001-02-13 2002-02-13 Storage virtualization and storage management to provide higher level storage services
US10077482 Active 2022-10-23 US6801992B2 (en) 2001-02-13 2002-02-13 System and method for policy based storage provisioning and management
US10076906 Active 2023-10-29 US7039827B2 (en) 2001-02-13 2002-02-13 Failover processing in a storage system
US10077696 Active 2025-07-12 US7594024B2 (en) 2001-02-13 2002-02-13 Silicon-based storage virtualization
US10928081 Active US7065616B2 (en) 2001-02-13 2004-08-26 System and method for policy based storage provisioning and management
US11325578 Active 2024-02-24 US7640451B2 (en) 2001-02-13 2006-01-03 Failover processing in a storage system
US13871718 Abandoned US20130297902A1 (en) 2001-02-13 2013-04-26 Virtual data center
US (7) US7415506B2 (en)
EP (4) EP1368742A4 (en)
JP (2) JP4457184B2 (en)
DE (1) DE60237583D1 (en)
WO (4) WO2002065309A1 (en)
US20060045754A1 (en) * 2004-08-27 2006-03-02 Peter Lukens Ion pump for cryogenic magnet apparatus
US8793379B2 (en) 2011-11-01 2014-07-29 Lsi Corporation System or method to automatically provision a storage volume by having an app-aware based appliance in a storage cloud environment
US8219681B1 (en) * 2004-03-26 2012-07-10 Emc Corporation System and method for managing provisioning of storage resources in a network with virtualization of resources in such a network
GB2395810B (en) * 2002-11-29 2005-09-28 Ibm Multi-requester detection of potential logical unit thrashing and preemptive application of preventive or ameliorative measures
JP4377313B2 (en) * 2004-10-22 2009-12-02 株式会社日立製作所 Optimization of the error recovery level in the network system
US7664980B2 (en) * 2006-07-28 2010-02-16 Fujitsu Limited Method and system for automatic attempted recovery of equipment from transient faults
CN101150792A (en) * 2006-09-20 2008-03-26 深圳富泰宏精密工业有限公司;奇美通讯股份有限公司 Method for recovering operation function temporary disabled user recognition card and mobile communication device
EP2115564A1 (en) 2007-01-31 2009-11-11 International Business Machines Corporation Apparatus and method for stored data protection and recovery
JP4939271B2 (en) 2007-03-29 2012-05-23 株式会社日立製作所 Redundancy method of a storage maintenance and management apparatus, and a device using the method
US7813331B2 (en) * 2007-08-28 2010-10-12 International Business Machines Corporation Apparatus, system, and method for implementing failover in a polling adapter without support from an application server
US9223798B2 (en) 2011-05-17 2015-12-29 Archion, Inc. Virtualized workspaces for standardization of access to data
US9311330B1 (en) * 2012-09-28 2016-04-12 Emc Corporation Method and system for performing full backup in a failover cluster
JP6287495B2 (en) 2014-03-31 2018-03-07 富士通株式会社 Storage system, a storage device
CN105446654A (en) * 2014-09-10 2016-03-30 纬创资通股份有限公司 Server control method and frame controller
WO2017171575A1 (en) * 2016-03-30 2017-10-05 Emc Corporation Virtual machine storage management queue
DE10134540C1 (en) * 2001-07-16 2003-03-06 Siemens Ag Magnetic resonance apparatus with a mechanical vibration generator
Al-Mouhamed et al., "A Heuristic Storage for Minimizing Access Time of Arbitrary Data Patterns", (C) 1997 IEEE, p. 441-447.* *
Al-Mouhamed et al., "A Heuristic Storage for Minimizing Access Time of Arbitrary Data Patterns", © 1997 IEEE, p. 441-447.*
US7539824B2 (en) * 2001-09-28 2009-05-26 Emc Corporation Pooling and provisioning storage resources in a storage network
US7600083B2 (en) 2005-06-10 2009-10-06 Network Appliance, Inc. Method and system for automatic write request suspension
US7996638B2 (en) 2006-10-09 2011-08-09 Sandisk Il Ltd. Application dependent storage control
US8161489B2 (en) * 2007-04-26 2012-04-17 Nec Corporation Resource sharing and allocation between a plurality of different raid policies on groups of disks
WO2013188382A3 (en) * 2012-06-12 2014-03-20 Centurylink Intellectual Property Llc High performance cloud storage
EP1370947A1 (en) 2003-12-17 application
JP4457184B2 (en) 2010-04-28 grant
US20030037127A1 (en) 2003-02-20 application
WO2002065298A1 (en) 2002-08-22 application
WO2002065290A1 (en) 2002-08-22 application
EP1370950B1 (en) 2017-12-27 grant
JP2004523831A (en) 2004-08-05 application
EP1368742A4 (en) 2010-09-01 application
US20020156987A1 (en) 2002-10-24 application
US20060117212A1 (en) 2006-06-01 application
WO2002065249A2 (en) 2002-08-22 application
US20020188711A1 (en) 2002-12-12 application
EP1370947A4 (en) 2009-05-27 application
WO2002065298A9 (en) 2003-01-30 application
US7039827B2 (en) 2006-05-02 grant
EP1370950A4 (en) 2011-01-05 application
US20050027754A1 (en) 2005-02-03 application
WO2002065290A9 (en) 2002-12-27 application
WO2002065249A3 (en) 2002-10-17 application
US20130297902A1 (en) 2013-11-07 application
DE60237583D1 (en) 2010-10-21 grant
US7594024B2 (en) 2009-09-22 grant
US20020174306A1 (en) 2002-11-21 application
JP4457185B2 (en) 2010-04-28 grant
EP1370950A1 (en) 2003-12-17 application
US7640451B2 (en) 2009-12-29 grant
EP1370945A1 (en) 2003-12-17 application
EP1370945B1 (en) 2010-09-08 grant
US7065616B2 (en) 2006-06-20 grant
US7415506B2 (en) 2008-08-19 grant
EP1370945A4 (en) 2008-01-02 application
JP2004532442A (en) 2004-10-21 application
EP1368742A2 (en) 2003-12-10 application
WO2002065309A1 (en) 2002-08-22 application
Owner name: CONFLUENCE NETWORKS, INC, CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GAJJAR, KUMAR;COLLINS, JIM;MEYER, RICHARD;AND OTHERS;REEL/FRAME:012930/0333;SIGNING DATES FROM 20020429 TO 20020430
Free format text: CHANGE OF NAME;ASSIGNOR:CONFLUENCE NETWORKS, INC.;REEL/FRAME:013458/0734