GraphConnect 2020 has ended
Back To Schedule
Tuesday, April 21 • 1:30pm - 2:10pm
Databases on Kubernetes Using a Custom Operator: Day 1, Day 2, and Beyond

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

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.

avatar for Jacob Davis-Hansson

Jacob Davis-Hansson

Engineer, Cloud, Neo4j
I do engineering at Neo. Over the years I've had my hands on most parts of the code base; everywhere from kernel code, procedures, cypher and Bolt to HA Paxos code and RAFT. Right now I write Kubernetes operators for Neo4j Cloud.

Tuesday April 21, 2020 1:30pm - 2:10pm EDT
Room 4