Failure resistant distributed computing system
First Claim
1. A failure resistant network-based distributed computing system with a plurality of datacenters comprising:
- primary and secondary datacenters, each datacenter comprising;
a computerized server comprising;
a processor configured to execute a processing node; and
a memory comprising instructions executable by the processor; and
a control center comprising;
a memory; and
a transmitter, wherein the control center is programmed to perform machine-executable operations stored in its memory to;
select orchestrations from a predefined list stored in its memory; and
transmit, using the transmitter, an identification of the selected orchestrations to at least one of the computerized servers of the primary or secondary datacenters; and
wherein;
the at least one computerized server of the primary and secondary datacenters is programmed to perform machine-executable operations to, responsive to receiving identification of one of the selected orchestrations from the control center, transmit, to the control center, a request for an updated list of machine-executable actions necessary to execute an identified orchestration, and execute the identified orchestration using its processor by referencing a set of actions corresponding to the identified orchestration as previously stored or programmed into the computerized server and executing the set of actions on the server processor modified by the updated list;
at least one of the machine-executable actions is to direct at least one other computerized server to execute prescribed tasks on its processor; and
the predefined list of orchestrations comprises at least one machine-executable orchestration to conduct a failover operation from the primary datacenter to the secondary datacenter, the failover operation comprising shifting performance of tasks from at least one processing node of the primary datacenter to at least one processing node of the secondary datacenter, the tasks comprising;
managing storage accessible by one or more clients located remotely from the datacenters; and
running programs of machine-implemented operations on behalf of clients remotely located from the datacenters.
1 Assignment
0 Petitions
Accused Products
Abstract
A failure resistant distributed computing system includes primary and secondary datacenters each comprising a plurality of computerized servers. A control center selects orchestrations from a predefined list and transmits the orchestrations to the datacenters. Transmitted orchestrations include less than all machine-readable actions necessary to execute the orchestrations. The datacenters execute each received orchestration by referencing a full set of actions corresponding to the received orchestration as previously stored or programmed into the computerized server and executing the referenced full set of actions. At least one of the orchestrations comprises a failover operation from the primary datacenter to the secondary datacenter. Failover shifts performance of task from a set of processing nodes of the primary datacenter to a set of processing nodes of the secondary datacenter, such tasks including managing storage accessible by one or more remote clients and running programs on behalf of remote clients.
-
Citations
21 Claims
-
1. A failure resistant network-based distributed computing system with a plurality of datacenters comprising:
-
primary and secondary datacenters, each datacenter comprising; a computerized server comprising; a processor configured to execute a processing node; and a memory comprising instructions executable by the processor; and a control center comprising; a memory; and a transmitter, wherein the control center is programmed to perform machine-executable operations stored in its memory to; select orchestrations from a predefined list stored in its memory; and transmit, using the transmitter, an identification of the selected orchestrations to at least one of the computerized servers of the primary or secondary datacenters; and wherein; the at least one computerized server of the primary and secondary datacenters is programmed to perform machine-executable operations to, responsive to receiving identification of one of the selected orchestrations from the control center, transmit, to the control center, a request for an updated list of machine-executable actions necessary to execute an identified orchestration, and execute the identified orchestration using its processor by referencing a set of actions corresponding to the identified orchestration as previously stored or programmed into the computerized server and executing the set of actions on the server processor modified by the updated list; at least one of the machine-executable actions is to direct at least one other computerized server to execute prescribed tasks on its processor; and the predefined list of orchestrations comprises at least one machine-executable orchestration to conduct a failover operation from the primary datacenter to the secondary datacenter, the failover operation comprising shifting performance of tasks from at least one processing node of the primary datacenter to at least one processing node of the secondary datacenter, the tasks comprising; managing storage accessible by one or more clients located remotely from the datacenters; and running programs of machine-implemented operations on behalf of clients remotely located from the datacenters. - View Dependent Claims (2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
6. A failure resistant network-based distributed computing system with a plurality of datacenter, comprising:
-
primary and secondary datacenters, each datacenter comprising; a plurality of computerized servers, each of the computerized servers comprising; a processor; a communications port connected to a network; a memory comprising instructions executable by the processor; and a messaging queue connected via the communications port with the computerized servers of the datacenter; wherein; the processor is configured to execute a processing node; and the messaging queues of the primary and secondary datacenters are communicatively interconnected via their respective communication ports by one or more links; the system further comprising; a control center comprising; one or more digital data processing machines; a communications port; a memory; and a transmitter that communicates via signals sent over its communications port coupled to the at least one messaging queue of each datacenter, wherein the control center is programmed to perform machine-executable operations stored in its memory to; select orchestrations from a predefined list stored in its memory; and transmit, using the transmitter, an identification of the selected orchestrations to a server of the computerized servers of the primary or secondary datacenters via a respective one of the messaging queues; and wherein; each of the computerized servers of the primary and secondary datacenters is programmed to perform machine-executable operations to, responsive to receiving identification of one of the selected orchestrations from the control center via one of the messaging queues, execute the identified orchestration using its processor by referencing a full set of actions corresponding to the received orchestration as previously stored or programmed into the computerized server and executing the referenced full set of actions on the server processor; and at least one of the machine-executable actions is to direct at least one other computerized server to execute prescribed tasks on its processor; the predefined list of orchestrations comprises at least one machine-executable orchestration to conduct a failover operation from the primary datacenter to the secondary datacenter, the failover operation comprising shifting performance of tasks from a set of processing nodes of the primary datacenter to a set of processing nodes of the secondary datacenter, the tasks comprising; managing storage accessible by one or more clients located remotely from the datacenters; and running programs of machine-implemented operations on behalf of clients remotely located from the datacenters; and at least one of the computerized servers comprises instructions executable by its processor to perform operations comprising; from the control center, receiving a differences list corresponding to a given orchestration; and performing the given orchestration by executing an amended set of predefined machine-executable actions, the amended set of predefined machine-executable actions comprising the full set of predefined machine-executable actions necessary to execute the given orchestration as stored or programmed into the memory of the computerized server and further as amended according to the differences list.
-
-
17. A computer-implemented method of operating a failure resistant distributed computing system comprising a primary datacenter and a secondary datacenter, each datacenter comprising a computerized server comprising a processor configured to execute a processing node, wherein the primary datacenter and the secondary datacenter are communicatively interconnected, the system further comprising a control center, the method comprising machine-executed operations of:
-
selecting with the control center orchestrations from a predefined list stored in the control center; transmitting via the control center an identification of the selected orchestrations to the computerized server of at last one of the primary datacenter or the secondary datacenter; and performing operations by the computerized servers of the primary datacenter and the secondary datacenters comprising; receiving identification of one of the selected orchestrations from the control center; and responding to the receiving identification by executing the identified orchestration by referencing a set of actions corresponding to the received orchestration as previously stored or programmed into the computerized server and executing the referenced set of actions; wherein; at least one of the referenced set of actions comprises directing at least one other computerized server to execute prescribed tasks; and the predefined list of orchestrations comprises at least one machine-executable orchestration to conduct a failover operation from the primary datacenter to the secondary datacenter; the failover operation comprises; executing pre-validation tests at the primary datacenter; stopping the failover operation if any of the pre-validation tests fail; and unless any of the pre-validation tests fail; shifting performance of the tasks from a set of processing nodes of the primary datacenter to a set of processing nodes of the secondary datacenter, the tasks comprising; managing storage accessible by one or more clients located remotely from the datacenters; and running programs of machine-implemented operations on behalf of clients remotely located from the datacenters. - View Dependent Claims (18, 19)
-
-
20. A failure resistant network-based distributed computing system with a plurality of datacenters, comprising:
-
a primary datacenter and a secondary datacenter, each datacenter comprising a computerized server programmed to perform machine-executable operations to, responsive to receiving identification of a selected orchestrations from a control center, execute the identified orchestration using its a processor of the computerized server by referencing a full set of actions corresponding to the identified orchestration as previously stored or programmed into the computerized server and executing the full set of actions on the processor of the computerized server; and at least one of the machine-executable operations is to direct at least one other computerized server to execute prescribed tasks on its processor; and a predefined list of orchestrations comprising; a machine-executable orchestration to switch DNS entries; a machine-executable orchestration to gather topology information; a machine-executable orchestration to conduct a failover operation from the primary datacenter to the secondary datacenter, the failover operation comprising shifting performance of tasks from a set of processing nodes of the primary datacenter to a set of processing nodes of the secondary datacenter, the tasks comprising; managing storage accessible by one or more clients located remotely from the datacenters; and running programs of machine-implemented operations on behalf of clients remotely located from the datacenters; and a machine-executable orchestration to update a CMDB state. - View Dependent Claims (21)
-
Specification