Geographic Scale With Virtual Machines and Kubernetes Nodes

In my last post, we looked at how we can deploy CockroachDB across multiple regions in Azure with the help of Cilium CNI. In this post, we evolve this architecture to allow for the use of a mix of Kubernetes pods and virtual machines. Because CockroachDB is a single binary it makes it easy to deploy as a container or just run it natively on virtual machines. This type of architecture may be required for a number of reasons. 

As businesses consider their future cloud strategy and how they can move their existing applications workloads to the Public Cloud, this type of hybrid architecture may be required. Perhaps the on-premises data centers do not have the capability to run a Kubernetes environment as this can be complex and requires additional infrastructure that may not be available. This is just one example but there are likely to be many. Now let's take a closer look at the deployment details.

How To Use Cluster Mesh for Multi-Region Kubernetes Pod Communication

Thanks to services provided by AWS, GCP, and Azure it's become relatively easy to develop applications that span multiple regions. This is great because slow apps kill businesses. There is one common problem with these applications: they are not supported by multi-region database architecture.

In this blog, I will provide a solution for the problem of getting Kubernetes pods to talk to each other in multi-region deployments.