Tangible, non-transitory, and computer-readable media having stored thereon instructions, that when executed, are configured to cause one or more processors to:
- implement an application manager that is configured to manage a plurality of applications by:
- receiving a service specification for an application of the plurality of applications in a distributed computing environment, wherein the service specification defines a plurality of computing resources used to execute the application;
- and
- requesting the plurality of computing resources out of a plurality of potential computing resources that includes the plurality of computing resources;
- and
- implement a resource supply manager that is configured to manage the plurality of potential computing resources in the distributed computing environment by:
- receiving the request from the application manager;
- responsive to the request, determining availability of the plurality of potential computing resources within the distributed computing environment according to resource allocation policies;
- and
- allocating the plurality of computing resources to the application manager, wherein the application manager is configured to manage allocation of the plurality of computing resources to the application.