Managing communications between computing nodes
First Claim
1. A computer-implemented method comprising:
- providing, by one or more computing systems of a program execution service, an interface;
receiving, by the one or more computing systems and via the provided interface, one or more requests from a client of the program execution service, the received one or more requests including at least an indication of an operating system and configuration information that is related to executing the indicated operating system and that includes an indication of one or more geographical locations in which to execute the indicated operating system;
selecting, by the one or more configured computing systems, one or more computing nodes of the program execution service to use for execution of the indicated operating system, the one or more selected computing nodes being part of a larger plurality of computing nodes of the program execution service that are located in two or more distinct geographical locations, and the selecting of the one or more computing nodes being based at least in part on the indicated one or more geographical locations; and
causing, by the one or more computer systems, the one or more computing nodes to execute one or more instances of the indicated operating system within one or more virtual machines, the causing of the execution being based at least in part on the received configuration information.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are described for managing communications between multiple intercommunicating computing nodes, such as multiple virtual machine nodes hosted on one or more physical computing machines or systems. In some situations, users may specify groups of computing nodes and optionally associated access policies for use in the managing of the communications for those groups, such as by specifying which source nodes are allowed to transmit data to particular destinations nodes. In addition, determinations of whether initiated data transmissions from source nodes to destination nodes are authorized may be dynamically negotiated for and recorded for later use in automatically authorizing future such data transmissions without negotiation. This abstract is provided to comply with rules requiring an abstract, and it is submitted with the intention that it will not be used to interpret or limit the scope or meaning of the claims.
52 Citations
28 Claims
-
1. A computer-implemented method comprising:
-
providing, by one or more computing systems of a program execution service, an interface; receiving, by the one or more computing systems and via the provided interface, one or more requests from a client of the program execution service, the received one or more requests including at least an indication of an operating system and configuration information that is related to executing the indicated operating system and that includes an indication of one or more geographical locations in which to execute the indicated operating system; selecting, by the one or more configured computing systems, one or more computing nodes of the program execution service to use for execution of the indicated operating system, the one or more selected computing nodes being part of a larger plurality of computing nodes of the program execution service that are located in two or more distinct geographical locations, and the selecting of the one or more computing nodes being based at least in part on the indicated one or more geographical locations; and causing, by the one or more computer systems, the one or more computing nodes to execute one or more instances of the indicated operating system within one or more virtual machines, the causing of the execution being based at least in part on the received configuration information. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable medium having stored contents that configure a computing system to:
-
receive, via an interface of a program execution service, a request to run one or more instances of an image, the image including a program, and the request further including configuration information that is related to running the one or more instances and that includes an indication of one or more geographical locations in which at least some instances of the image are to be run; select one or more computing nodes of the program execution service to host the one or more instances of the image, wherein the one or more instances are run using one or more virtual machines, wherein the one or more selected computing nodes are part of a plurality of computing nodes of the program execution service that are located in two or more distinct geographical locations, and wherein the selecting of the one or more computing nodes is based at least in part on the indicated one or more geographical locations; and manage the one or more computing nodes selected to run the one or more virtual machines. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
-
23. A system, comprising:
-
one or more computing systems each having one or more processors; and at least one memory, the memory including instructions that, upon execution by at least one of the one or more processors, cause the system to; receive, via an interface provided for use in configuring execution of programs by a program execution service having a plurality of computing nodes located in multiple geographic locations, a request from a client, the received request including configuration information that indicates one or more geographical locations in which at least one indicated program is to be executed; select, based at least in part on the indicated one or more geographical locations, multiple computing nodes of the program execution service to use for execution of the indicated program; and manage execution of one or more instances of the indicated program by the selected multiple computing nodes on behalf of the client, the managing of the execution being based at least in part on the received configuration information. - View Dependent Claims (24, 25, 26, 27, 28)
-
Specification