IP Library › Granted Patent US 10,324,803
Granted Patent B1
US 10,324,803 · App. 15/277,690 · Granted Jun 18, 2019

Storage snapshot management

Inventor: Puneet Agarwal (Jersey City, NJ)
Assignee: Amazon Technologies, Inc.
G06F11/1448G06F11/1461G06F16/113G06F2201/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,324,803
App. No.
15/277,690
Granted
Jun 18, 2019
Kind
B1
Abstract

A technology is described for managing storage snapshots of storage volumes. An example method may include launching a compute service function on computing resources in response to an event, the compute service function being configured to: retrieve from a data store a storage snapshot policy for invoking storage snapshots of storage volumes assigned to computing instances included in a service provider environment; identify at least one tag assigned to at least one computing instance included in the service provider environment that corresponds to the storage snapshot policy; identify a storage volume assigned to a computing instance associated with the at least one tag identified as corresponding to the storage snapshot policy; and create a storage snapshot of the storage volume assigned to the computing instance based in part on the storage snapshot policy.

Claims (58)

1. A system for managing storage snapshots of storage volumes comprising:

at least one processor;

a first data store containing interface files that are provided to a client in response to a client request, wherein the interface files are executed on the client to provide a snapshot management interface for maintaining storage snapshots of storage volumes assigned to computing instances included in a service provider environment;

a second data store to maintain a storage snapshot policy and snapshot maintenance records specifying snapshot lifecycles for the storage snapshots based in part on the storage snapshot policy;

a memory device including instructions that, when executed by the at least one processor, cause the system to execute a compute service function on computing resources launched based at least in part on a scheduled event in the service provider environment, the compute service function being configured to:

retrieve the storage snapshot policy;

identify a tag assigned to a computing instance included in the service provider environment that is associated with the storage snapshot policy;

identify a storage volume that is assigned to the computing instance associated with the tag;

request that a storage snapshot of the storage volume assigned to the computing instance be created; and

create a snapshot maintenance record specifying a snapshot lifecycle for the storage snapshot.

2. A system as in claim 1 , wherein the storage volumes assigned to the computing instances are included in a private virtual network associated with a customer account, and the private virtual network is provided by a service provider.

3. A system as in claim 1 , further comprising a monitoring service configured to launch the compute service function based at least in part on detecting the scheduled event.

4. A system as in claim 3 , wherein the monitoring service receives instructions to detect the scheduled event and launch the compute service function according to the storage snapshot policy.

5. A computer implemented method, comprising:

launching a compute service function on computing resources based at least in part on an event in a service provider environment, the event being detected by a monitoring service;

retrieving from a data store, by the compute service function, a storage snapshot policy for invoking storage snapshots of storage volumes assigned to computing instances hosted in the service provider environment;

identifying by the compute service function at least one tag assigned to at least one computing instance included in the service provider environment that corresponds to the storage snapshot policy;

identifying by the compute service function a storage volume that is assigned to a computing instance associated with the at least one tag identified as corresponding to the storage snapshot policy; and

requesting by the compute service function that a storage snapshot of the storage volume assigned to the computing instance be created based in part on the storage snapshot policy.

6. A method as in claim 5 , further comprising creating a snapshot maintenance record specifying a snapshot lifecycle for the storage snapshot specified by the storage snapshot policy.

7. A method as in claim 5 , wherein the compute service function is configured to:

retrieve snapshot maintenance records specifying snapshot lifecycles for storage snapshots associated with the storage snapshot policy;

determine that at least one storage snapshot associated with the snapshot maintenance records has expired; and

delete the at least one storage snapshot and associated snapshot maintenance record.

8. A method as in claim 5 , wherein the compute service function is configured to:

determine that the at least one tag assigned to the at least one computing instance does not correspond to the storage snapshot policy;

identify a default storage snapshot policy;

create a default storage snapshot for the storage volume assigned to the at least one computing instance based in part on the default storage snapshot policy; and

create a default snapshot maintenance record associated with the default storage snapshot specifying a default snapshot lifecycle specified by the default storage snapshot policy.

9. A method as in claim 5 , wherein the compute service function is configured to:

identify an untagged computing instance included in a customer account in the service provider environment;

create a default storage snapshot for a storage volume assigned to the untagged computing instance based in part on a default storage snapshot policy; and

create a default snapshot maintenance record associated with the default storage snapshot specifying a default snapshot lifecycle specified by the default storage snapshot policy.

10. A method as in claim 5 , wherein the compute service function is configured to:

obtain an identifier for the computing instance assigned to the at least one tag from a tag service; and

obtain an identifier for the storage volume assigned to the computing instance from a computing instance registry.

11. A method as in claim 5 , wherein launching the compute service function in response to the event further comprises monitoring storage volumes included in a virtual private network for a customer defined event that causes the compute service function to be launched.

12. A method as in claim 5 , further comprising receiving a client request for interface files, wherein the interface files are executable using a browser application and provide a graphical snapshot management interface used to manage the storage snapshot policy.

13. A method as in claim 12 , wherein the interface files are stored by an object data store that is accessed using a URL.

14. A method as in claim 12 , wherein an identity is used to authenticate a customer associated with the client request for the interface files.

15. A method as in claim 5 , wherein creating the storage snapshot of the storage volume further comprises:

creating a snapshot of at least one file stored on the storage volume; and

creating a file snapshot maintenance record specifying a snapshot lifecycle for the file specified by the storage snapshot policy.

16. A method as in claim 5 , wherein the storage volume is block storage that is associated with the computing instance for use by the computing instance.

17. A non-transitory machine readable storage medium having instructions embodied thereon, the instructions when executed by a processor:

launch a compute service function on computing resources included in a service provider environment in response to a scheduled event, the compute service function being configured to:

retrieve a storage snapshot policy from a data store, wherein the storage snapshot policy is for scheduling and maintaining storage snapshots of storage volumes assigned to computing instances included in the service provider environment;

identify at least one computing instance included in the service provider environment that is associated with the storage snapshot policy, wherein the storage snapshot policy is identified as specifying a tag that is associated with at least one tag assigned to the at least one computing instance;

identify a storage volume that is assigned to the at least one computing instance associated with the storage snapshot policy;

request that a storage snapshot of the storage volume assigned to the at least one computing instance be created; and

create a snapshot maintenance record specifying a snapshot lifecycle for the storage snapshot specified by storage snapshot policy.

18. A non-transitory machine readable storage medium as in claim 17 , wherein the instructions that when executed by the processor further:

launch a second compute service function in response to a second scheduled event, the second compute service function being configured to:

identify the snapshot maintenance record specifying the snapshot lifecycle for the storage snapshot;

determine that the storage snapshot has expired; and

delete the storage snapshot and the snapshot maintenance record.

19. A non-transitory machine readable storage medium as in claim 17 , wherein the request that the storage snapshot be created further comprises sending an API (Application Program Interface) request to a snapshot service configured to create the storage snapshot.

20. A non-transitory machine readable storage medium as in claim 19 , wherein the snapshot service is configured to disable write access to the storage volume in order to create the storage snapshot.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2016
From: AGARWAL, PUNEET
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 039870/0120 →
Cited By (1)
US 12,229,082