Dynamically modifying the resources of a virtual server
Abstract
A system and a method dynamically adjusts the quality of service guarantees for virtual servers based upon the resource demands experienced by the virtual servers. Virtual server resource denials are monitored to determine if a virtual server is overloaded based upon the resource denials. Virtual server resources are modified dynamically to respond to the changing resource requirements of each virtual server. Occasionally, a physical host housing a virtual server may not have additional resources to allocate to a virtual server requiring increased resources. In this instance, a virtual server hosted by the overloaded physical host is transferred to another physical host with sufficient resources.
Claims
exact text as granted — not AI-modified1. A network system for dynamically modifying the computer resources allocated to a virtual server, the network system comprising a plurality of physical hosts, the virtual server operating in a first physical host, the computer resources allocated to the virtual server being specified as a quality of service guarantee, the network system comprising:
a virtual server resource monitor communicatively coupled to the first physical host and configured to monitor resource denials and to send a virtual server overloaded signal in response to the resource denials;
a virtual server resource modifier communicatively coupled to the first physical host and configured to receive the virtual server overloaded signal and, in response to the virtual server overloaded signal, to modify a resource allocation for the virtual server and to send a virtual server resource modification signal;
a load balancing module communicatively coupled to the plurality of physical hosts and configured to receive the virtual server resource modification signal and to determine whether the first physical host is overloaded and, in response to a determination that the first physical host is overloaded, to send a physical host transfer signal that indicates a second physical host; and
a dynamic virtual server mover communicatively coupled to the plurality of physical hosts and configured to receive the physical host transfer signal and, in response to the physical host transfer signal, to transfer the virtual server from the first physical host to the second physical host.
2. The network system of claim 1 , further comprising a file system communicatively coupled to the plurality of physical hosts and configured to store virtual server system files.
3. The network system of claim 2 , wherein the dynamic virtual server mover is further configured to direct the first physical host to store, in the file system, a set of system files for the virtual server and to direct the second physical host to access, from the file system, the set of system files for the virtual server, thereby transferring the virtual server from the first physical host to the second physical host.
4. A computer-readable storage device storing a computer program product to be executed in a computer for dynamically modifying the computer resources allocated to a virtual server operating in a first physical host in a network system, the network system comprising a plurality of physical hosts, the computer resources allocated to the virtual server being specified as a quality of service guarantee, the computer program product comprising:
program code for creating a virtual server resource monitor communicatively coupled to the first physical host and configured to monitor resource denials and, in response to the resource denials, to send a virtual server overloaded signal;
program code for creating a virtual server resource modifier communicatively coupled to the first physical host and configured to receive the virtual server overloaded signal and, in response to the virtual server overloaded signal, to modify a resource allocation for the virtual server and to send a virtual server resource modification signal;
program code for creating a load balancing module communicatively coupled to the plurality of physical hosts and configured to receive the virtual server resource modification signal and to determine whether the first physical host is overloaded and, in response to a determination that the first physical host is overloaded, to send a physical host transfer signal that indicates a second physical host; and
program code for creating a dynamic virtual server mover communicatively coupled to the plurality of physical hosts and configured to receive the physical host transfer signal and, in response to the physical host transfer signal, to transfer the virtual server from the first physical host to the second physical host.
5. A system for modifying the computer resources allocated to a virtual server operating in a first physical host of multiple physical hosts, the system comprising:
a processor and memory; a virtual server resource monitor configured to monitor resource denials and to send a virtual server overloaded signal in response to the resource denials; a virtual server resource modifier configured to receive the virtual server overloaded signal and, in response to the virtual server overloaded signal, to modify a resource allocation for the virtual server and to send a virtual server resource modification signal; a physical host load balancer configured to receive the virtual server resource modification signal and to determine whether the first physical host is overloaded and, in response to a determination that the first physical host is overloaded, to send a physical host transfer signal that indicates a second physical host; and a dynamic virtual server mover configured to receive the physical host transfer signal and, in response to the physical host transfer signal, to transfer the virtual server from the first physical host to the second physical host.
6. The system of claim 5, further comprising a file system configured to store virtual server system files.
7. The system of claim 6, wherein the dynamic virtual server mover is further configured to direct the first physical host to store, in the file system, a set of system files for the virtual server and to direct the second physical host to access, from the file system, the set of system files for the virtual server, thereby transferring the virtual server from the first physical host to the second physical host.
8. One or more computer-readable storage devices collectively storing computer-executable instructions that, if executed, perform operations for modifying computer resources allocated to a virtual server operating in a first physical host in a system, the system comprising multiple physical hosts, the operations comprising:
under control of a virtual server resource monitor,
monitoring resource denials; and
when a resource denial occurs, sending a virtual server overloaded signal;
under control of a virtual server resource modifier,
receiving the virtual server overloaded signal;
modifying a resource allocation for the virtual server; and
sending a virtual server resource modification signal;
under control of a load balancer,
receiving the virtual server resource modification signal;
determining that the first physical host is overloaded; and
sending a physical host transfer signal that indicates a second physical host; and
under control of a dynamic virtual server mover,
receiving the physical host transfer signal; and
transferring the virtual server from the first physical host to the second physical host.
9. The computer-readable storage device of claim 8 wherein the transferring comprises causing the virtual server to store files in a file system and causing the second physical host to access the files stored in the file system.
10. The one or more computer-readable storage devices of claim 8 further comprising, under control of the load balancer, selecting the second physical host based on the resource required by the virtual server.
11. The one or more computer-readable storage devices of claim 10 wherein the selecting includes determining which of the multiple physical hosts can provide the resource requested by the virtual server.
12. The one or more computer-readable storage devices of claim 10 further comprising moving user information from the first physical host to the second physical host.
13. A method performed by a computing system for managing a quality of service for a virtual server, comprising the following computer-implemented instructions:
receiving an indication of a quality of service guarantee relating to an amount of a resource allocated to the virtual server, the quality of service specifying an acceptable threshold value for denial of requests for the resource; executing the virtual server at a first physical host; allocating an amount of the resource to the virtual server; causing the virtual server to execute a process; receiving a request for the resource, the request generated by the executing process; when an insufficient amount of the resource is allocated to the virtual server, denying the request for the resource; monitoring a count of resource request denials for the resource; when the count of resource request denials exceeds the threshold value, generating a signal; and in response to the generated signal,
increasing the allocated amount of the resource when the resource is available on the first physical host; and
transferring the virtual server from the first physical host to a second physical host when the resource is unavailable on the first physical host but is available on the second physical host.
14. The method of claim 13 further comprising continuing execution of the process by the transferred virtual server.
15. The method of claim 14 further comprising transferring state information for the virtual server from the first physical host to the second physical host.
16. The method of claim 15 wherein the transferring comprises:
causing the virtual server executing at the first physical host to store state information in a file; and causing the virtual server executing at the second physical host to access state information from the stored file.
17. The method of claim 13 further comprising transferring user information from the first physical host to the second physical host.
18. The method of claim 13 further comprising:
decreasing the allocated amount of the resource when the resource is deallocated.
19. The method of claim 13 wherein the increasing comprises determining whether the signal was generated within a hysteresis time window.
20. The method of claim 19 wherein the allocated amount of the resource is increased when the signal is generated outside the hysteresis time window.
21. The method of claim 20 wherein the allocated amount of the resource is increased by a specified amount.
22. The method of claim 13 further comprising transferring the virtual server from the first physical host to the second physical host to balance load between the two physical hosts.
23. The method of claim 13 further comprising selecting the second physical host based on the availability of the resource at the second physical host.
24. The method of claim 13 further comprising storing the received indication of the quality of service guarantee in a quality of service parameter table that associates each virtual server executing at the physical host with quality of service guarantee provided to that virtual server.
25. The method of claim 13 further comprising updating in a quality of service parameter table the stored indication of the quality of service guarantee for the virtual server when transferring the virtual server from the first physical host to the second physical host.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.