Databases on K8s Using a Custom Operator & Scalable Graph Processing on K8s


Aug 27, 2019, 4:30 – 7:30 PM

In-person event

About this event

Hi Kubernauts,

Our next Meetup in Hamburg will take place on 27th August @Mesophere.

6:30pm - Welcome & Introduction
7:00 pm - Johannes Unterstein
7:30 pm - Jörg Schad
8:00 pm - Food, drinks & networking


Johannes Unterstein, Neo4J

"Databases on Kubernetes Using a Custom Operator: Day 1, Day 2, and Beyond"

We started the journey of building a managed cloud version of the graph database Neo4j. A bit later we started developing an operator to manage multiple database clusters in k8s.

Handling persistence and Neo4j's own distributed consensus algorithm within k8s gave us a challenge. In this session we want to share the lessons we learned writing this operator and using it in production.

We will start with how to get started using the k8s controller tooling to create an operator to manage a CRD. We go beyond the "day 1" tasks of creating and deleting databases and discuss how we meet "day 2" concerns such as:
- Unit testing our operator using k8s fakes.
- Continuously deploying an operator into a GKE cluster.
- Automatic rolling updates of Neo4j databases with zero downtime and fault tolerance.
- Database administration (backup, restore, password resets etc.) via an operator.

Jörg Schad, ArangoDB

"Kubernetes + ArangoDB + Kudo = Scalable Graph Processing on Kubernetes"

In recent years Kubernetes has become the default OSS Orchestration platform. A database such as ArangoDB can provide a scalable persistent backend for both graph and document data models.

The best practice for running stateful services–such as ArangoDB–on Kubernetes is using operators which provides automation around deployment, scaling and failure recovery.

Still writing operators is challenging as it requires extensive knowledge about Kubernetes, the system itself, and also typically a non-trivial amount of custom code.

It took ArangoDB's kubernetes operator multiple iterations of reaching its current state where it is powering a number of large customer deployments and also a managed service platform.

In this talk we want to share:
- the lessons learned while writing the ArangoDB operator
- general best practices around operator Day 2 operations (such as upgrades, configuration changes, etc)
- the various operator SDKs including kubebuilder, Operator SDK, Kudo, and others

Jörg Schad is Head of Machine Learning at ArangoDB. In a previous life, he has worked on or built machine learning pipelines in healthcare, distributed systems at Mesosphere, and in-memory databases. He received his Ph.D. for research around distributed databases and data analytics. He’s a frequent speaker at meetups, international conferences, and lecture halls.


See you there!



Tuesday, August 27, 2019
4:30 PM – 7:30 PM UTC


  • Leonard Vincent Simon Pahlke

    Liquid Reply


  • Alexander Stielau


  • Christian Bargmann


  • Christian Hüning

    BWI GmbH


  • Niklas Voss


  • Mirabella Fernandez

    Loovent UG

    Head of Events