Centralized management of virtual machines
First Claim
1. A method for enabling a central management service to operate on individual files associated with different virtual machines running in one or more host computers that are each networked to a remote storage system, the method comprising:
- receiving, at a virtualization software layer on a host computer, an input/output (IO) request from a first virtual machine running on the host computer, wherein (i) the IO request relates to a first file stored in a first virtual disk associated with the first virtual machine, the first virtual disk locally attached to the host computer, and (ii) a second file corresponding to the first file is individually stored in the remote storage system in accordance with a file system that governs how data is stored in the remote storage system;
notifying the central management service of the received IO request, wherein the central management service (i) determines a second pathname used by the file system to access the second file in the remote storage system, the second pathname being resolved from a first pathname associated with the IO request and used by the first virtual machine to identify the first file within the first virtual disk, (ii) uses the file system to access the second file in the remote storage system using the second pathname, and (iii) performs a management task on the second file that was accessed by the management service; and
performing, by the virtualization software layer, the IO request on the second file in the remote storage system using the second pathname upon a notification of a successful completion of the management task by the central management service.
1 Assignment
0 Petitions
Accused Products
Abstract
A method enables a central management service to operate on individual files within virtual disks associated with different virtual machines (VMs) running in one or more host computers that are each networked to a remote storage system. An IO request from a VM is received at a virtualization software layer on a host computer, wherein the IO request relates to a file stored in a virtual disk associated with the VM, and the file is individually stored in the remote storage system in accordance with a file system. The central management service is notified of the received IO request and uses the file system to access the file in the remote storage system to perform a management task on the file, and the IO request is then performed on the file by the virtualization software layer upon a notification of a successful completion of the management task.
-
Citations
28 Claims
-
1. A method for enabling a central management service to operate on individual files associated with different virtual machines running in one or more host computers that are each networked to a remote storage system, the method comprising:
-
receiving, at a virtualization software layer on a host computer, an input/output (IO) request from a first virtual machine running on the host computer, wherein (i) the IO request relates to a first file stored in a first virtual disk associated with the first virtual machine, the first virtual disk locally attached to the host computer, and (ii) a second file corresponding to the first file is individually stored in the remote storage system in accordance with a file system that governs how data is stored in the remote storage system; notifying the central management service of the received IO request, wherein the central management service (i) determines a second pathname used by the file system to access the second file in the remote storage system, the second pathname being resolved from a first pathname associated with the IO request and used by the first virtual machine to identify the first file within the first virtual disk, (ii) uses the file system to access the second file in the remote storage system using the second pathname, and (iii) performs a management task on the second file that was accessed by the management service; and performing, by the virtualization software layer, the IO request on the second file in the remote storage system using the second pathname upon a notification of a successful completion of the management task by the central management service. - View Dependent Claims (2, 3, 4, 5, 6, 7, 9)
-
-
8. A method for enabling a central management service to operate on individual files associated with different virtual machines running in one or more host computers that are each networked to a remote storage system, the method comprising:
-
receiving, at a virtualization software layer on a host computer, an input/output (IO) request from a first virtual machine running on the host computer, wherein (i) the IO request relates to a first file stored in a first virtual disk associated with the first virtual machine, the first virtual disk locally attached to the host computer, and (ii) a second file corresponding to the first file is individually stored in the remote storage system in accordance with a file system that governs how data is stored in the remote storage system; notifying the central management service of the received IO request, wherein the central management service uses the file system to access the second file in the remote storage system and performs a management task on the second file that was accessed by the management service; performing, by the virtualization software layer, the IO request on the second file in the remote storage system upon a notification of a successful completion of the management task by the central management service; comparing files that are stored in the remote storage system and associated with different virtual disks in order to determine whether any of the files have identical content; removing any duplicates of the files that are identified as having identical content; and updating a namespace database maintained by the file system to remap pathnames used by virtual machines to access any removed duplicate file to a pathname used by the file system to identify a remaining file having the identical content. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory computer-readable storage medium including instructions that, when executed on a computer processor of a host computer, causes the computer processor to enable a central management service to operate on individual files associated with different virtual machines running in one or more host computers that are each networked to a remote storage system, by performing the steps of:
-
receiving, at a virtualization software layer on the host computer, an input/output (IO) request from a first virtual machine running on the host computer, wherein (i) the IO request relates to a first file stored in a first virtual disk associated with the first virtual machine, the first virtual disk locally attached to the host computer, and (ii) a second file corresponding to the first file is individually stored in the remote storage system in accordance with a file system that governs how data is stored in the remote storage system; forwarding the received IO request to a central server system that notifies the central management service of the received IO request and the second pathname, wherein the central management service (i) determines a second pathname used by the file system to access the second file in the remote storage system, the second pathname being resolved from a first pathname associated with the IO request and used by the first virtual machine to identify the first file within the first virtual disk, (ii) uses the file system to access the second file in the remote storage system using the second pathname, and (iii) performs a management task on the second file that was accessed by the management service; and performing, by the virtualization software layer, the IO request on the second file in the remote storage system using the second pathname upon a notification of a successful completion of the management task by the central management service. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
-
23. A host computer configured to enable a central management service to operate on individual files associated with different virtual machines running in one or more host computers that are each networked to a remote storage system, the host computer comprising a processor configured to perform the steps of:
-
receiving, at a virtualization software layer on the host computer, an input/output (IO) request from a first virtual machine running on the host computer, wherein (i) the IO request relates to a first file stored in a first virtual disk associated with the first virtual machine, the first virtual disk locally attached to the host computer, and (ii) a second file corresponding to the first file is individually stored in the remote storage system in accordance with a file system that governs how data is stored in the remote storage system; forwarding the received IO request to a central server system that notifies the central management service of the received IO request and the second pathname, wherein the central management service (i) determines a second pathname used by the file system to access the second file in the remote storage system, the second pathname being resolved from a first pathname associated with the IO request and used by the first virtual machine to identify the first file within the first virtual disk, (ii) uses the file system to access the second file in the remote storage system using the second pathname, and (iii) performs a management task on the second file that was accessed by the management service; and performing, by the virtualization software layer, the IO request on the second file in the remote storage system using the second pathname upon a notification of a successful completion of the management task by the central management service. - View Dependent Claims (24, 25, 26, 27, 28)
-
Specification