Input/output operations at a virtual block device of a storage server
First Claim
Patent Images
1. A non-transitory machine-readable storage medium encoded with instructions executable by a processor of a host server to host a plurality of virtual machines, the storage medium comprising:
- instructions to associate a first virtual block device of a first storage server with the host server;
instructions to receive first virtual block device offsets to which respective first persistent volumes managed by the first storage server are mapped;
instructions to present, to the virtual machines, a plurality of first virtual disks of the host server, each associated with one of the received first virtual block device offsets; and
instructions to provide to the first storage server a request for an input/output (I/O) operation at a first target offset of the first virtual block device, in response to a valid virtual machine request for an I/O operation at any one of the first virtual disks, wherein the first target offset is based on the first virtual block device offset associated with the first virtual disk accessed in response to the virtual machine request and wherein the instructions to receive the first virtual block device offsets are via a communication protocol different than a communication protocol for the I/O operation.
2 Assignments
0 Petitions
Accused Products
Abstract
Example embodiments disclosed herein relate to input/output (I/O) operations at a virtual block device of a storage server. Example embodiments include requesting an input/output (I/O) operation at an offset of a virtual block device of a storage server in response to a virtual machine request for an I/O operation at a virtual disk.
29 Citations
20 Claims
-
1. A non-transitory machine-readable storage medium encoded with instructions executable by a processor of a host server to host a plurality of virtual machines, the storage medium comprising:
-
instructions to associate a first virtual block device of a first storage server with the host server; instructions to receive first virtual block device offsets to which respective first persistent volumes managed by the first storage server are mapped; instructions to present, to the virtual machines, a plurality of first virtual disks of the host server, each associated with one of the received first virtual block device offsets; and instructions to provide to the first storage server a request for an input/output (I/O) operation at a first target offset of the first virtual block device, in response to a valid virtual machine request for an I/O operation at any one of the first virtual disks, wherein the first target offset is based on the first virtual block device offset associated with the first virtual disk accessed in response to the virtual machine request and wherein the instructions to receive the first virtual block device offsets are via a communication protocol different than a communication protocol for the I/O operation. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system, comprising:
-
a first host server to host a plurality of first virtual machines; and a first storage server to; create a first virtual block device associated with the first host server; and map each of a plurality of first persistent volumes managed by the first storage server and identified for input/output (I/O) access by the first host server to a respective offset in the first virtual block device; wherein the first host server comprises a host storage manager to; present, to the first virtual machines, a plurality of first virtual disks of the first host server, each associated with a respective one of the first virtual block device offsets to which the identified first persistent volumes are mapped; and access one of the identified first persistent volumes via a request, to the first storage server, for an I/O operation at a first target offset of the first virtual block device, in response to any valid first virtual machine request for an I/O operation at any one of the first virtual disks, the first target offset based on the first virtual block device offset associated with one of the first virtual disks and wherein the respective offsets in the first virtual block device are received by the first host server via a communication protocol different than a communication protocol for the I/O operation. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method, comprising:
-
hosting a plurality of virtual machines at a host server; receiving identification of a plurality of persistent volumes for I/O access by the host server, the persistent volumes managed by a storage server; identifying for I/O access by the host server, a plurality of persistent volumes managed by a storage server; mapping each of the identified persistent volumes managed by the storage server to respective offsets of a virtual block device of the storage server, wherein the virtual block device is associated with the host server; assigning a plurality of virtual disks of the host server to the virtual machines, respectively, wherein each of the virtual disks is associated with a respective virtual block device offset to which one of the persistent volumes is mapped; and providing, from the host server to the storage server, a request for an input/output (I/O) operation at a target offset of the virtual block device, in response to any virtual machine request for an I/O operation at its assigned virtual disk, the target offset based on the virtual block device offset associated with the virtual disk accessed in response to the virtual machine request, and wherein the respective offsets of the virtual block device are received by the host server via a communication protocol different than a communication protocol for the I/O operation. - View Dependent Claims (17, 18, 19, 20)
-
Specification