Fault-tolerant replication architecture
First Claim
1. A fault-tolerant replication system, comprising:
- a first machine running a first hypervisor;
a second machine that is failure-independent of the first machine, running a second hypervisor;
a first storage device within or in communication with the first machine storing code representing a first plurality of virtual machines;
a second storage device within or in communication with the second machine storing code representing a second plurality of virtual machines;
wherein each of the virtual machines of the first and second plurality of virtual machines constitutes either a virtual machine replica server of a fault-tolerant replicated state machine or a backup corresponding to a virtual machine replica server of the fault-tolerant replicated state machine and every backup is embodied on a different machine, of the first and second machines, from its corresponding virtual machine replica server,wherein the fault-tolerant replicated state machine is a configuration in which each of the replica servers thereof vote on a single replica server thereof to act as a leader maintaining an order in which client requests sent to the state machine are to be processed.
1 Assignment
0 Petitions
Accused Products
Abstract
A fault-tolerant replication system includes a first machine running a first hypervisor. A second machine is failure-independent of the first machine. The second machine runs a second hypervisor. A first plurality of virtual machines runs on the first hypervisor. A second plurality of virtual machines runs on the second hypervisor. Each of the virtual machines of the first and second plurality of virtual machines constitutes either a virtual machine replica server of a fault-tolerant replicated state machine or a backup corresponding to a virtual machine replica server of the fault-tolerant replicated state machine. Every backup is embodied on a different machine, of the first and second machines, from its corresponding virtual machine replica server.
6 Citations
23 Claims
-
1. A fault-tolerant replication system, comprising:
-
a first machine running a first hypervisor; a second machine that is failure-independent of the first machine, running a second hypervisor; a first storage device within or in communication with the first machine storing code representing a first plurality of virtual machines; a second storage device within or in communication with the second machine storing code representing a second plurality of virtual machines; wherein each of the virtual machines of the first and second plurality of virtual machines constitutes either a virtual machine replica server of a fault-tolerant replicated state machine or a backup corresponding to a virtual machine replica server of the fault-tolerant replicated state machine and every backup is embodied on a different machine, of the first and second machines, from its corresponding virtual machine replica server, wherein the fault-tolerant replicated state machine is a configuration in which each of the replica servers thereof vote on a single replica server thereof to act as a leader maintaining an order in which client requests sent to the state machine are to be processed. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method for providing a fault-tolerant replication system, comprising:
-
installing a first hypervisor on a first machine; installing a second hypervisor on a second machine, that is failure-independent of the first machine; running a first plurality of virtual machine replica servers on the first hypervisor of the first machine and running a second plurality of virtual machine replica servers on the second hypervisor of the second machine, wherein the plurality of virtual machine replica servers comprise a fault-tolerant replicated state machine; establishing a first plurality of backup virtual machines, corresponding to the first plurality of virtual machine replica servers of the first machine, on the second machine, and establishing a second plurality of backup virtual machines, corresponding to the second plurality of virtual machine replica servers of the second machine, on the first machine. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A Byzantine fault-tolerant replication system, comprising:
-
a first physical machine running a first hypervisor; a second physical machine, distinct from the first physical machine, running a second hypervisor; a first plurality of virtual machine replica servers of a Byzantine fault-tolerant replicated state machine running on the first hypervisor; a first plurality of virtual machine backups running on the second hypervisor, each of the first plurality of virtual machine backups corresponding to one of the virtual machine replica servers of the first plurality of virtual machine replica servers running on the first hypervisor; a second plurality of virtual machine replica servers of the Byzantine fault-tolerant replicated state machine running on the second hypervisor; and a second plurality of virtual machine backups running on the first hypervisor, each of the second plurality of virtual machine backups corresponding to one of the virtual machine replica servers of the second plurality of virtual machine replica servers running on the second hypervisor.
-
Specification