This is a guide to deploying a highly-available version of magda for production use, similar to what’s used on Be aware this is heavily coupled to our providers and costs roughly $1000/month. If you want something lighter, look at just using the defaults in and modifying them as you go.

What you’ll be using if you run Magda like this:

  1. Create a new Google Kubernetes Engine cluster - for high availability you’ll want to spread this over at least 3 nodes and at least two zones. How many nodes you’ll need depends on how many resources you want to set in the magda config - if you use the development settings you only need 2 CPUs, if you use the settings you’ll need 10-12. You can always use autoscaling to get you the right number of nodes, but be aware that it tends to love scaling up but hates scaling down.
  2. Set up a Google Cloud SQL database: Make sure you set that up for HA too.
  3. Install cert-manager and a cert issuer:
  4. Go to the Google Cloud Platform console, and in VPC Network / External IP addresses, reserve yourself an IP address
  5. In AWS Route53, point your desired domain at that address
  6. Fork and follow the instructions at, but first copy paste the values from Make sure to change:
  1. Install MAGDA:
helm install --name magda deploy/helm/magda -f <path to your config file>

At this point everything should start up. It’ll probably take a while to get an actual working system with data (in particular loading regions for spatial search takes ages). Raise an issue if it doesn’t work!