US2014304404A1PendingUtilityA1
Scaling a virtual machine instance
Est. expiryAug 23, 2032(~6.1 yrs left)· nominal 20-yr term from priority
G06F 9/45533G06F 9/5022H04L 43/16G06F 9/5005G06F 2209/5022G06F 9/5077G06Q 30/04
55
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
Techniques are described for scaling of computing resources. A scaling service is utilized that allocates additional computing resources (e.g., processors, memory, etc.) to a virtual machine instance (or other compute instance) and/or de-allocates computing resources from a virtual machine instance according requests and/or thresholds. In addition to the foregoing, other aspects are described in the description, figures, and claims.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A computer implemented method comprising:
under the control of one or more computer systems configured with executable instructions,
causing, by a host computing device running in a service provider environment, a virtual machine to be provisioned on the host computing device;
receiving, from a scaling service running in the service provider environment, a request to adjust resources allocated to the virtual machine; and
in response to receiving the request, adjusting allocation of one or more computing resources to the virtual machine.
2 . The computer implemented method of claim 1 , wherein the scaling service further performs:
monitoring one or more metrics associated with running the virtual machine; detecting that the one or more metrics have passed at least one specified threshold; and transmitting the request to adjust resources allocated to the virtual machine to the host computer device in response to detecting that the one or more metrics have passed the specified threshold.
3 . The computer implemented method of claim 1 , wherein a monitoring service executing on the host computing device is configured to
monitor one or more metrics associated with the virtual machine; detect that the one or more metrics have passed a threshold; and adjust the allocation of the one or more computing resources in response to detecting that the one or more metrics have passed the threshold.
4 . The computer implemented method of claim 1 , wherein the scaling service further performs:
receiving a request to adjust resources allocated to the virtual machine from a customer via an application programming interface (API); and transmitting the request to adjust resources allocated to the virtual machine in response to receiving the request.
5 . The computer implemented method of claim 1 , further comprising:
continuing to allocate the one or more additional resources to the virtual machine until a predetermined limit is reached; and provisioning one or more additional virtual machines to distribute a workload of the virtual machine across one or more additional virtual machines.
6 . The computer implemented method of claim 1 , wherein adjusting the allocation further includes:
determining that one or more additional virtual machines are needed to satisfy at least one of: redundancy, availability or durability associated with at least one service provided by the virtual machine; and provisioning the one or more additional virtual machines.
7 . The computer implemented method of claim 1 , wherein the virtual machine further includes a guest agent that reports one or more metrics associated with executing the workload.
8 . The computer implemented method of claim 1 , further comprising:
billing the user based at least in part on the one or more resources of the host computing device allocated to the virtual machine in response to the request from the scaling service.
9 . The computer implemented method of claim 1 , further comprising:
providing an electronic marketplace that enables a customer to obtain resources of the host computing device to be allocated to the virtual machine for a fee, the fee being based at least in part on demand and supply of the one or more resources.
10 . The computer implemented method of claim 1 , further comprising:
receiving, by a placement service, an API request requesting that the virtual machine be scalable; determining, by the placement service, that the host computing device includes capacity to add additional resources to the virtual machine; and provisioning, by the placement service, the virtual machine onto the host computing device.
11 . A computing system, comprising:
at least one processor; and memory including instructions that, when executed by the processor, cause the computing system to:
receive a web service request related to adjusting resources allocated to a virtual machine running in a service provider environment provision a virtual machine for a user; and
in response to receiving the request, cause a server hosting the virtual machine to allocate one or more computing resources to the virtual machine.
12 . The computing system of claim 11 , wherein the web service request contains one or more input parameters that specify the computing resources to allocate to the virtual machine.
13 . The computing system of claim 11 , wherein the web service request contains one or more input parameters that specify a set of conditions in response to which the server is instructed to adjust the computing resources allocated to the virtual machine.
14 . The computing system of claim 11 , wherein the memory further comprises instruction that upon execution cause the computing system to:
monitor one or more metrics associated with running the virtual machine; detect that the one or more metrics have passed at least one specified threshold; and transmit the request to adjust resources allocated to the virtual machine to the host computer device in response to detecting that the one or more metrics have passed the specified threshold.
15 . The computing device of claim 11 , wherein the scaling service further performs:
receive a request to scale the virtual machine from a customer via an application programming interface (API); and transmit the instruction to scale the virtual machine in response to receiving the request.
16 . The computing device of claim 11 , wherein the memory further comprises instructions that, when executed by the processor, cause the computing device to:
continue to allocate the one or more additional resources to the virtual machine until a predetermined limit is reached; and provision one or more additional virtual machines to distribute a workload of the virtual machine across one or more additional virtual machines.
17 . The computing device of claim 11 , wherein the memory further comprises instructions that, when executed by the processor, cause the computing device to:
determine that the user has selected to the virtual machine instance of a type that is capable of being scaled by allocating the computing resource in response to the web service request; and bill the user based at least in part on the type of the virtual machine selected by the user.
18 . The computing device of claim 11 , wherein the memory further comprises instructions that, when executed by the processor, cause the computing device to:
provide an electronic marketplace that enables a customer to purchase one or more additional resources of the computing device based at least in part on demand and supply of the one or more resources on the computing device.
19 . The computing device of claim 11 , wherein provisioning the virtual machine for the user further includes:
receive, by a placement service, an Application Programming Interface (API) request requesting that the virtual machine be scalable; and provision, by the placement service, the virtual machine onto the host computing device.
20 . A non-transitory computer readable storage medium storing one or more sequences of instructions executable by one or more processors to perform a set of operations comprising:
causing a virtual machine to be provisioned for a user on a host computing device, the virtual machine capable of executing a workload; receiving an instruction to scale the virtual machine, the instruction received from a scaling service to the host computing device, the scaling service residing externally with respect to the host computing device; and in response to receiving the instruction, adjusting allocation of one or more computing resources to the virtual machine, the one or more computing resources being allocatable by a hypervisor of the host computing device.
21 . The non-transitory computer readable storage medium of claim 20 , wherein the virtual machine is provisioned by a shared resource computing environment service provider on behalf of at least one customer, and wherein the scaling service is deployed by the service provider.
22 . The non-transitory computer readable storage medium of claim 20 , wherein the scaling service further performs:
monitoring one or more metrics associated with the workload executed by the virtual machine; detecting that the one or more metrics have passed at least one specified threshold; and transmitting the instruction to scale the virtual machine instance in response to detecting that the one or more metrics have passed the specified threshold.
23 . The non-transitory computer readable storage medium of claim 20 , wherein the scaling service further performs:
receiving a request to scale the virtual machine from a customer via an application programming interface (API); and transmitting the instruction to scale the virtual machine in response to receiving the request.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.