Dynamically modifying the resources of a virtual server
DCFirst Claim
1. 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.
4 Assignments
Litigations
0 Petitions
Accused Products
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.
154 Citations
25 Claims
-
1. 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. - View Dependent Claims (2, 3)
-
-
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. - View Dependent Claims (6, 7)
-
-
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. - View Dependent Claims (9, 10, 11, 12)
-
-
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. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
Specification