Automatic Failover in a Hybrid cloud environment


I want to know whether CockroachDB can support below high availability configuration in a hybrid cloud environment.

Requirements for RDBMS - HA configuration in a hybrid cloud enviroment

  1. Present in all 3 DCs i.e EAST, WEST and CENTRAL, with multiple nodes in at least 2 DCs
  2. Single master across all DCs for reads and writes and async replication with a hot standby (eventually consistent secondary nodes which accept reads)
  3. Automatic failover within a DC (if master goes down we failover to another node in the same DC)
  4. Automatic failover between DCs (when an entire DC goes down or there is a networking problem between DCs, we choose a new master in a different DC)
  5. At least one quorum vote for master in all sites, with an odd number of total votes

Hey @abhikiki,

I’m not very clear on what you’re asking for. Could you give a bit more clarification? “Eventually consistent secondary nodes” makes it sound like you are asking about follower reads, but if we had more clarification we can provide a better answer.



Hi @abhikiki,

it looks like you are asking about monolithical databases like Oracle and Postgres. CockroachDB works different and is created from the ground up to survive node or even DC crashes, if you configured properly.
The database maintains full consistency at all times. Very ACID complient. Each node can view the full dataset, that can be distributed over many nodes in multiple DC’s and served by multiple cloud providers, as one consistent set.

Your application could best connect to the database using some form of a load balancer, so it is always able to connect to a node.

There is no single master. There is no standby. All nodes are write and read nodes. Think of cockroachdb more like a master-master-master database.