Global computing interface
First Claim
1. A computer-implemented method comprising:
- maintaining a global database of virtual machine configuration information, the database including information on which virtual machine images are stored in each of a plurality of datacenters, each datacenter being located in one region of a plurality of regions, wherein each datacenter has a cluster manager located in the region of the datacenter that manages virtual machine images in the datacenter;
receiving and storing, by a first cluster manager for a first datacenter in a first region, a virtual machine image in a first datacenter in the first region;
receiving, by the first cluster manager from a user, a request to start one or more virtual machines from the virtual machine image in a second datacenter in which the virtual machine image is not stored, the second datacenter being in a different second region of the plurality of regions;
in response to receiving the request to start one or more virtual machines, providing, by the first cluster manager to a different second cluster manager for the second datacenter in the second region, a request to start, in the second datacenter, one or more virtual machines from the virtual machine image;
determining, by the second cluster manager, that the virtual machine image is stored in the first datacenter and that the virtual machine image is not stored in the second datacenter;
in response to the determining, providing, by the second cluster manager to the first cluster manager, a request to transmit the virtual machine image from the first datacenter to the second datacenter; and
in response to receiving the request to transmit the virtual machine image, transmitting, by the first cluster manager, the virtual machine image from the first datacenter in the first region to the different second cluster manager for the second datacenter in the second region, storing, by the second cluster manager, the virtual machine image in the second datacenter in the second region, and starting one or more virtual machines from the virtual machine image in the second datacenter of the second region without receiving further user interaction from the user.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for implementing a global computing interface. One of the methods includes maintaining a global database of virtual machine configuration information, the database including information on cloud computing resources in each of a plurality of regions, wherein each region of the plurality of regions includes one or more datacenters. A virtual machine image is received in a first region. The global database is updated with configuration information about the received virtual machine image that is stored in the first region. A request is received to start one or more virtual machines from the virtual machine image in a second different region, and the virtual machine image is transmitted from the first region to the second region and one or more virtual machines are started from the virtual machine image in a datacenter of the second different region.
18 Citations
14 Claims
-
1. A computer-implemented method comprising:
-
maintaining a global database of virtual machine configuration information, the database including information on which virtual machine images are stored in each of a plurality of datacenters, each datacenter being located in one region of a plurality of regions, wherein each datacenter has a cluster manager located in the region of the datacenter that manages virtual machine images in the datacenter; receiving and storing, by a first cluster manager for a first datacenter in a first region, a virtual machine image in a first datacenter in the first region; receiving, by the first cluster manager from a user, a request to start one or more virtual machines from the virtual machine image in a second datacenter in which the virtual machine image is not stored, the second datacenter being in a different second region of the plurality of regions; in response to receiving the request to start one or more virtual machines, providing, by the first cluster manager to a different second cluster manager for the second datacenter in the second region, a request to start, in the second datacenter, one or more virtual machines from the virtual machine image; determining, by the second cluster manager, that the virtual machine image is stored in the first datacenter and that the virtual machine image is not stored in the second datacenter; in response to the determining, providing, by the second cluster manager to the first cluster manager, a request to transmit the virtual machine image from the first datacenter to the second datacenter; and in response to receiving the request to transmit the virtual machine image, transmitting, by the first cluster manager, the virtual machine image from the first datacenter in the first region to the different second cluster manager for the second datacenter in the second region, storing, by the second cluster manager, the virtual machine image in the second datacenter in the second region, and starting one or more virtual machines from the virtual machine image in the second datacenter of the second region without receiving further user interaction from the user. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system comprising:
-
one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising; maintaining a global database of virtual machine configuration information, the database including information on which virtual machine images are stored in each of a plurality of datacenters, each datacenter being located in one region of a plurality of regions, wherein each datacenter has a cluster manager located in the region of the datacenter that manages virtual machines in the datacenter; receiving and storing, by a first cluster manager for a first datacenter in a first region, a virtual machine image in a first datacenter in the first region; receiving, by the first cluster manager from a user, a request to start one or more virtual machines from the virtual machine image in a second datacenter in which the virtual machine image is not stored, the second datacenter being in a different second region of the plurality of regions; in response to receiving the request to start one or more virtual machines, providing, by the first cluster manager to a different second cluster manager for the second datacenter in the second region, a request to start, in the second datacenter, one or more virtual machines from the virtual machine image; determining, by the second cluster manger, that the virtual machine image is stored in the first datacenter and that the virtual machine image is not store din the second datacenter; in response to the determining, providing, by the second cluster manager to the first cluster manager, a request to transmit the virtual machine image from the first datacenter to the second datacenter; and in response to receiving the request to transmit the virtual machine image, transmitting, by the first cluster manager, the virtual machine image from the first datacenter in the first region to a different second cluster manager for the second datacenter in the second region, storing, by the second cluster manager, the virtual machine image in the second datacenter in the second region, and starting one or more virtual machines from the virtual machine image in the second datacenter of the second region without receiving further user interaction from the user. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A system comprising:
-
a plurality of datacenters, each datacenter comprising a plurality of computers, each datacenter being located in one region of a plurality of regions; a global database of virtual machine image configuration information, including information on which virtual machine images are stored in each of the plurality of datacenters; and a plurality of cluster managers, each cluster manager of the plurality of cluster managers being installed in a separate datacenter of the plurality of datacenters, wherein each cluster manager for each particular datacenter in each particular region is configured, upon receiving a virtual machine image, to store the virtual machine image in the particular datacenter and to update the global database with an indication that the virtual machine image is stored in the particular datacenter in the particular region, and wherein each cluster manager for each particular datacenter in each particular region is configured to receive a request, from a different cluster manager of a different datacenter in a different region, to start one or more virtual machines from a virtual machine image stored in the different datacenter in the different region, determine, from the virtual machine image configuration information, that the virtual machine image is not stored in the particular datacenter, determine, from the virtual machine image configuration information, that the virtual machine image is stored in the different datacenter in the different region, and in response, provide a request to the different cluster manager for the different datacenter in the different region to transmit the virtual machine image from the different datacenter to the particular datacenter and start, in the particular datacenter, the one or more virtual machines from the received virtual machine image. - View Dependent Claims (12, 13, 14)
-
Specification