Managed container instances
AssigneeAmazon Technologies, Inc.
InventorsDaniel Robert Gerdesmeier, Christopher Brian Barclay, Anthony Joseph Suarez, Carlos Eduardo Lopez Biagi, Archana Srikanta
Life of this patent
Estimating the term…
Abstract
Techniques for instantiating container instances from a pool of available container instances are described herein. An instance type is determined from a container description such that the instance type satisfies the resource parameters in the container description. An instance of the instance type is selected from a pool of running container instances, the instance is provisioned, and a container is instantiated on the instance.
Claims20
A computer-implemented method, comprising:
- receiving, at a container management service, a task definition for a task, the task definition including a container description, the container description including a set of parameters for instantiating a container, the set of parameters including a number of central processing units (CPUs) and an amount of memory for the container;
- determining, based at least in part on the container description, an instance type usable for instantiating the container, the instance type having a set of performance characteristics that satisfy the set of parameters for instantiating the container;
- upon determining that there are no instances of the instance type available, determining a second instance type having a second set of performance characteristics that exceeds the set of parameters for instantiating the container;
- selecting a running instance of the second instance type from an instance pool, the instance pool including a plurality of running instances that are available to host containers, wherein the running instance comprises a running virtual machine instance configured to run and launch containers, and wherein the running instance is not associated with a task or a container and is available to be assigned;
- instantiating the container on the running instance;
- and
- providing access to the task to a customer associated with the task, the access allowing the customer to interact with the task.
A system, comprising at least one computing device configured with processors and memory, the memory including instructions that upon execution cause the system to:
- determine a first instance type that has a set of performance characteristics that satisfy a set of parameters for instantiating a container obtained from at least information in a task definition associated with a task;
- determine a second instance type, which is different from the first instance type, that satisfies or exceeds the set of parameters for instantiating the container;
- select an instance of the second instance type from an instance pool, the instance pool including a set of running instances, each instance of the set of running instances having a corresponding instance type, wherein the instance is not associated with a container and is available to be assigned, the instance comprising a running computing system instance configured to run and launch containers and, the instance assigned to a customer associated with the container;
- and
- instantiate the container on the instance based at least in part on the task definition.
A non-transitory computer-readable storage medium having stored thereon executable instructions that, as a result of being executed by one or more processors of a computer system, cause the computer system to at least:
- determine an instance type such that the instance type satisfies a set of parameters for instantiating a container on an instance of the instance type, the set of parameters for instantiating the container included in a container description of the container;
- determine a second instance type, which is different from the instance type, that satisfies or exceeds the set of parameters for instantiating the container;
- select an instance of the second instance type from an instance pool, the instance pool including a set of running instances, wherein the instance is not associated with a task and is available to be assigned to a customer, wherein the instance comprises a running computing system instance configured to run and launch containers;
- cause the instance to be assigned to a first customer associated with the container;
- and
- instantiate the container on the instance corresponding to the container description.
Dependencies are inferred from the claim text.