Systems, methods, and interfaces for adaptive persistence
First Claim
1. An apparatus, comprising:
- an ephemeral storage resource configured to temporarily retain ephemeral data of a plurality of virtual machines managed by a hypervisor, wherein the hypervisor is configured to host the plurality of virtual machines and to store data of the virtual machines on one of a primary storage resource and the ephemeral storage resource;
a persistence module that identifies an I/O request that pertains to ephemeral data of a first one of the virtual machines, wherein the I/O request is addressed to the primary storage resource managed by the hypervisor; and
an execution module that redirects the identified I/O request from the primary storage resource to the ephemeral storage resource, such that data of the identified I/O request is lost in response to shutdown of the first virtual machine.
6 Assignments
0 Petitions
Accused Products
Abstract
A storage module may be configured to service I/O requests according to different persistence levels. The persistence level of an I/O request may relate to the storage resource(s) used to service the I/O request, the configuration of the storage resource(s), the storage mode of the resources, and so on. In some embodiments, a persistence level may relate to a cache mode of an I/O request. I/O requests pertaining to temporary or disposable data may be serviced using an ephemeral cache mode. An ephemeral cache mode may comprise storing I/O request data in cache storage without writing the data through (or back) to primary storage. Ephemeral cache data may be transferred between hosts in response to virtual machine migration.
441 Citations
22 Claims
-
1. An apparatus, comprising:
-
an ephemeral storage resource configured to temporarily retain ephemeral data of a plurality of virtual machines managed by a hypervisor, wherein the hypervisor is configured to host the plurality of virtual machines and to store data of the virtual machines on one of a primary storage resource and the ephemeral storage resource; a persistence module that identifies an I/O request that pertains to ephemeral data of a first one of the virtual machines, wherein the I/O request is addressed to the primary storage resource managed by the hypervisor; and an execution module that redirects the identified I/O request from the primary storage resource to the ephemeral storage resource, such that data of the identified I/O request is lost in response to shutdown of the first virtual machine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method, comprising:
-
receiving an input/output (I/O) request of a virtual machine that is addressed to a primary storage resource managed by a virtualization kernel, wherein the virtual machine is one of a plurality of virtual machines configured to operate within the virtualization kernel; selecting an ephemeral persistence level for the I/O request in response to determining that the I/O request pertains to temporary data; redirecting the I/O request from the primary storage resource managed by the virtualization kernel to a designated storage resource, wherein the designated storage resource is configured to retain temporary data of the plurality of virtual machines; and removing ephemeral data of a particular virtual machine from the designated storage resource in response to the particular virtual machine no longer running on the virtualization kernel. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A system, comprising:
-
a storage module that selects respective persistence levels for input/output (I/O) requests of a virtual machine configured for operation on a host computing device, the host computing device configured to host a plurality of virtual machines within a virtualization environment and to store data of the virtual machines by use of a storage system comprising a primary storage resource and an ephemeral storage resource, the ephemeral storage resource configured to retain data of the virtual machines until detection of a reboot cycle of the respective virtual machines; a virtual storage driver to provide the plurality of virtual machines access to the ephemeral storage resource; an execution module that reroutes a particular one of the I/O requests from the primary storage resource to the ephemeral storage resource in response to the storage module selecting an ephemeral persistence level for the particular I/O request, wherein data of the particular I/O request is lost from the storage system upon removal of the data of the particular I/O request from the ephemeral storage resource. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification