US 11,816,464 B1
Cloud computing platform architecture
Alex Paul Suraci, San Francisco, CA (US)
Assigned to Pivotal Software, Inc., Palo Alto, CA (US)
Filed by Pivotal Software, Inc., San Francisco, CA (US)
Filed on Jun. 7, 2018, as Appl. No. 16/002,938.
Application 16/002,938 is a continuation of application No. 14/601,970, filed on Jan. 21, 2015, granted, now 10,007,500, issued on Jun. 26, 2018.
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 8/61 (2018.01)
CPC G06F 8/61 (2013.01) 25 Claims
OG exemplary drawing
 
1. A system comprising:
a plurality of first computers and a plurality of first storage devices storing instructions that are operable, when executed by the plurality of first computers, to cause the plurality of first computers to perform operations comprising:
receiving a sequence of platform-independent, resource-agnostic commands for execution of a computing service on any one of multiple, different underlying computing platforms, wherein:
the platform-independent, resource-agnostic commands are a) independent of all of the multiple, different underlying computing platforms and b) independent of a plurality of resource types included in the multiple, different underlying computing platforms and independent of instances of the plurality of resource types; and
the platform-independent, resource-agnostic commands do not identify any particular resource type of the plurality of resource types, wherein the plurality of resource types comprises containers and virtual machines;
generating, from the sequence of platform-independent, resource-agnostic commands, a sequence of platform-independent, resource-specific requests, wherein:
the platform-independent, resource-specific requests are a) independent of all of the multiple, different underlying computing platforms and b) specific to a particular resource type, of the plurality of resource types, that is included in one or more of the multiple, different underlying computing platforms; and
the platform-independent, resource-specific requests comprise requests for allocating cloud computing resources of the particular resource type and using the allocated cloud computing resources to effectuate the platform-independent, resource-agnostic commands on one of the multiple, different underlying distributed computing platforms; and
providing, to an underlying computing platform from the multiple, different underlying computing platforms, the sequence of generated platform-independent, resource-specific requests to cause the underlying computing platform to perform platform-specific, resource instance-specific operations that correspond to the sequence of platform-independent, resource-specific requests; and
a plurality of second computers that implement the underlying computing platform and a plurality of second storage devices storing instructions that are operable, when executed by the plurality of second computers, to cause the plurality of second computers to perform operations comprising:
receiving, from at least one of the plurality of first computers, the sequence of generated platform-independent, resource-specific requests;
determining, for each request in the sequence of platform-independent, resource-specific requests, one or more platform-specific, resource instance-specific operations, wherein each platform-specific, resource instance-specific operation specifies one or more instances on the underlying computing platform of the particular resource type that is identified by the corresponding platform-independent, resource-specific request; and
performing the platform-specific, resource instance-specific operations to cause execution of the computing service.