logo

Transparent Live Migration of Services Between Kubernetes Cluster

2022-05-19

Authors:   Jörg Schad, Adam Janikowski


Summary

The presentation discusses the challenges of upgrading and migrating a distributed database system like ArangoDB on Kubernetes clusters across different regions and cloud providers.
  • ArangoDB is a cloud-native, distributed database system that has evolved from traditional server-based systems to a dynamic infrastructure on Kubernetes clusters.
  • The presentation focuses on the challenges of upgrading and migrating ArangoDB on Kubernetes clusters across different regions and cloud providers.
  • The challenges include managing upgrades of Kubernetes and ArangoDB versions, testing, and migration between different regions and cloud providers.
  • The solution is to move from a two-dimensional upgrade structure to a three-dimensional structure that allows for upgrading and moving between different Kubernetes clusters.
  • The requirements for the solution include maintaining service availability, backward compatibility, and ensuring no difference in service quality during and after migration.
The speaker mentions that ArangoDB has invested in a Kubernetes operator called UhCuba Rango to manage the distributed system. They have also developed a fully managed cloud service called ArangoDB Oasis that runs on different cloud providers using their managed Kubernetes offerings. However, managing upgrades and migrations across different regions and cloud providers has been a challenge. For example, upgrading a cluster on Google Cloud from version 1.14 to 1.24 is not possible due to accumulated changes. Therefore, the solution is to move to a three-dimensional upgrade structure that allows for upgrading and moving between different Kubernetes clusters.

Abstract

Operating a distributed database on a single Kubernetes cluster is interesting, but how about transparently migrating it from one cluster to another–potentially between different cloud providers– without impacting user workloads? Kubernetes has become the de facto default deployment for ArangoDB, a distributed Graph database. Consider for example ArangoDB Oasis, a managed Cloud Database service with over 200 deployments (aka highly available database clusters) across three major cloud providers and many regions. But outages, (Kubernetes) upgrades, resource considerations, and cost optimizations require the underlying infrastructure to be very dynamic including migration between Kubernetes cluster, datacenter, or even cloud providers. This talk provides insights into how Kube-Arango, the OSS operator for ArangoDB, supports live migration of distributed stateful applications without impact on users. Challenges in such migration include for example networking, DNS, and persistent data.Click here to view captioning/translation in the MeetingPlay platform!

Materials:

Post a comment