MongoDB Community Kubernetes Operator on ARM64

Arko Basu
2 min readJun 30, 2024

--

The Github Gist in this article aims to provide the shortest path to deploying MongoDB Community Kubernetes Operator on ARM64 machines with some clarifications in response to the open issues about ARM64 support on the official repository (#1514 and #1420).

Note: I am using an Orange Pi 5B

Check out the detailed Github Gist where I cover how to:

  1. Deploy a Single Node Kubernetes (K8s) cluster using Microk8s.
  2. Provision a single-node Ceph cluster as the underlying storage for the MongoDB Stateful Set using Microceph.
  3. Deploy the MongoDB Community Kubernetes Operator using Helm to watch and manage resources across multiple namespaces
  4. Deploy standalone Replica Set for MongoDB deployment in a single namespace
  5. Configure Users and Databases with varied levels of permissions.
  6. Test and Validate access credentials generated by the operator from a Kubernetes pod once the deployment has completed.

Summary

Like I mention in the gist, the documentation doesn’t necessarily cover the nuances of deploying this neat Operator on an ARM64 platform. It takes a few days to get it all working, and it’s my hope that this article and the github gist togehter helps people who wanna try out a self managed NoSQL database backend without having to pay cloud providers for the exact same service. Yes, the MongoDB Atlas product on Cloud has things like Vector searches that makes it super handy in the world of Generative AI. But in my honest opinion, you could self host a similar infrastructure with open-source tools as well. All you would need is to lock down the gateway into your database and you are good.

In a follow up article I will look forward to exploring how to expose a secure MongoDB deployment to the world using Envoy’s Mongo Proxy and some cool cloudflare products. Please don’t hesitate to reach out with feedback and suggestions. Would really appreciate it. Cheers until the next time.

--

--