Systems and methods for supporting hot plugging of remote storage devices accessed over a network via NVME controller
First Claim
1. A system to support hot plugging of virtualized remote storage devices, comprising:
- a physical NVMe controller having one or more processors, which in operation, is configured to;
create and map one or more logical volumes in one or more local NVMe namespaces to a set of remote storage devices over a network via the NVMe controller following a storage network protocol, where the logical volumes mapped to the remote storage devices are accessible by one or more virtual machines (VMs) running on a host over the network via the NVMe controller as if they were local storage volumes coupled to the NVMe controller;
monitor configuration of the set of remote storage devices accessible over the network for any addition to or removal from the set of remote storage devices;
update the logical volumes in the NVMe namespaces mapped to the set of remote storage devices over the network accordingly when one or more remote storage devices are added to or removed from the set of remote storage devices at runtime;
present the logical volumes in the NVMe namespaces updated to reflect the added or removed remote storage devices to the VMs running on the host;
enable the VMs running on the host to perform one or more read and/or write operations on the updated logical volumes without the host and/or the NVMe controller needing to be shut down or restarted.
12 Assignments
0 Petitions
Accused Products
Abstract
A new approach is proposed that contemplates systems and methods to support hot plugging and/or unplugging one or more of remote storage devices virtualized as extensible/flexible storages and NVMe namespace(s) via an NVMe controller during operation. First, the NVMe controller virtualizes and presents a set of remote storage devices to one or more VMs running on a host attached to the NVMe controller as logical volumes in the NVMe namespace(s) so that each of the VMs running on the host can access these remote storage devices to perform read/write operations as if they were local storage devices. When the one or more remote storage devices are added to or removed from the set of remote storage devices based on storage space needs of the VMs, the NVMe controller updates the logical volumes in the NVMe namespace(s) accordingly and enables these remote storage devices to be hot plugged or unplugged from the plurality of remote storage devices at runtime without requiring shutting down and restarting any of the VMs, the host, and/or the NVMe controller. The VMs may then perform read/write operations on the NVMe namespace(s) updated to reflect the changes in the configuration of the set of remote storage devices dynamically without any interruption.
27 Citations
27 Claims
-
1. A system to support hot plugging of virtualized remote storage devices, comprising:
a physical NVMe controller having one or more processors, which in operation, is configured to; create and map one or more logical volumes in one or more local NVMe namespaces to a set of remote storage devices over a network via the NVMe controller following a storage network protocol, where the logical volumes mapped to the remote storage devices are accessible by one or more virtual machines (VMs) running on a host over the network via the NVMe controller as if they were local storage volumes coupled to the NVMe controller; monitor configuration of the set of remote storage devices accessible over the network for any addition to or removal from the set of remote storage devices; update the logical volumes in the NVMe namespaces mapped to the set of remote storage devices over the network accordingly when one or more remote storage devices are added to or removed from the set of remote storage devices at runtime; present the logical volumes in the NVMe namespaces updated to reflect the added or removed remote storage devices to the VMs running on the host; enable the VMs running on the host to perform one or more read and/or write operations on the updated logical volumes without the host and/or the NVMe controller needing to be shut down or restarted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
16. A computer-implemented method to support hot plugging of virtualized remote storage devices, comprising:
-
creating and mapping one or more logical volumes in one or more local NVMe namespaces to a set of remote storage devices over a network via an NVMe controller, where the logical volumes mapped to the remote storage devices are accessible by one or more virtual machines (VMs) running on a host over the network via the NVMe controller as if they were local storage volumes coupled to the NVMe controller; monitoring configuration of the set of remote storage devices accessible over the network for any addition to or removal from the set of remote storage devices; updating the logical volumes in the NVMe namespaces mapped to the set of remote storage devices over the network accordingly when one or more remote storage devices are added to or removed from the set of remote storage devices at runtime; presenting the logical volumes in the NVMe namespaces updated to reflect the added or removed remote storage devices to the VMs running on the host; enabling the VMs running on the host to perform one or more read and/or write operations on the updated logical volumes without the host and/or the NVMe controller needing to be shut down or restarted. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
Specification