Computer resource allocation
AssigneeAmazon Technologies, Inc.
InventorsCristian Gabriel Gafton, Jacob Adam Gabrielson
Life of this patent
Estimating the term…
Abstract
Various systems, processes, and techniques may be used to allocate computer resources. In particular implementations, systems and processes for allocation of computer resources may include the ability to determine whether a request for allocation of computer resources has been received and determine a set of server computers able to fulfill requirements of the request. The systems and processes may also include the ability to identify one or more server computers in the set likely to successfully provide the computer resources and allocate the requested computer resources on an identified server computer.
Claims26
A computer-readable storage medium having computer-executable instructions stored thereupon that, as a result of being executed by a computer, cause the computer to:
- receive, at a service provider network over a communication network, a request for a virtual machine, the service provider network having a set of server computers that can host virtual machines, the request specifying requirements for the virtual machine;
- analyze data regarding the set of server computers in the server provider network to determine a set of server computers that are currently able to satisfy the requirements specified by the request;
- run a server classification engine, by at least obtaining data from a data store to identify from the set of server computers one or more server computers with a high probability of successfully hosting the virtual machine, the server classification engine analyzing the data associated with similarities with previous requests for virtual machines, previously launched virtual machines classified as successful and unsuccessful, the states of the previously selected server computers at allocation, and the current operating states of the server computers in the set to perform the identification;
- and
- launch the virtual machine on an identified server computer to satisfy the request.
A computer-implemented method comprising:
- receiving, at a service provider, a request for a virtual machine instance;
- analyzing data in the request to determine a set of server computers able to fulfill requirements of the request;
- obtaining metric data from at least a data store about instances currently running on one or more server computers;
- identifying the one or more server computers in the set of server computers with a high probability of successfully running the instance by analyzing information about the requested instance and the metric data;
- and
- launching the instance on an identified server computer to satisfy the request.
A system, comprising:
- one or more processors;
- and
- memory to store executable instructions that, if executed by the one or more processors, cause the system to:
- determine whether a request for allocation of computer resources has been received at a service provider;
- analyze data in the request to determine a set of server computers able to fulfill requirements of the request;
- obtain metric data from at least a data store about instances currently running on the one or more server computers;
- identify the one or more server computers in the set of server computers that are probabilistically likely to successfully provide the computer resources by analyzing information about the requested instance and the metric data;
- and
- allocate the requested computer resources on an identified server computer to satisfy the request.
Dependencies are inferred from the claim text.