skip to Main Content

What We’ve Learned Building a Multi-Region DBaaS on Kubernetes [Cloud Native Rejekts 2019]

Presented at Cloud Native Rejekts NA 2019

Running geo-distributed clusters on Kubernetes presents no shortage of challenges: it complicates networking and service discovery; it mandates the use of stateful sets and persistent volumes; and it requires cleverness to navigate node pools and firewalls. Here's what we learned along the way.

When the engineers at Cockroach Labs started development on a global Database as a Service (DBaaS), they weren’t sure if Kubernetes would be the right choice for the underlying orchestration system. They wanted to harness Kubernetes’s powerful orchestration capabilities, but building a system to run geo-distributed Cockroach clusters on Kubernetes presents unique challenges: First, the clusters must run across multiple regions, complicating networking and service discovery. Second, the clusters must store data, requiring the use of stateful sets and persistent volumes. Third, the system must programmatically create Kubernetes clusters on AWS and GKE, which have different APIs for node pools and firewalls. In this presentation, they share their experience of overcoming these challenges to build a global DBaaS.

Introduce CockroachDB to your team or meetup!

Request a deep-dive into CockroachDB’s architecture and capabilities presented by a CockroachDB engineer. Tech talks can be in-person or virtual, depending on availability and location.

Request a Tech Talk

Additional Resources

Learn how to use

Need help? Get answers on the CockroachDB forum

What are you building with CockroachDB?

Back To Top