A community member was interested in setting up a fault-tolerant Nakama cluster using Kubernetes.

Nakama is a distributed server for social and realtime games and apps.

By default, Nakama is typically deployed to droplets, but since it is already containerized, it should be feasible to deploy it with Kubernetes.

  1. Is it feasible to deploy a docker-compose container within a Kubernetes stack?
  2. Would load-balancing and/or Autoscaling negatively impact the game server?
  3. If so, is a droplet the solid choice for Nakama?

Does anyone have experience with this?

Thanks in advance!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
1 answer

Hi AHA, here are some possible answers to your question:

  1. Is it feasible to deploy a docker-compose container within a Kubernetes stack?

    Yes, it’s possible to deploy your docker-compose based application using Kompose or Docker Enterprise. I really like Kompose for converting your docker-compose.yml file to Kubernetes resource definition files by doing kompose convert . You may also want to take a look at the CockroachDB Helm Chart to manage your Cockroach deployment.

  2. Would load-balancing and/or Autoscaling negatively impact the game server?

    It really depends on how you configure your resources to autoscale pods within your cluster. Also, it will depend on the size of the Docker images; smaller is faster. Furthermore, a node or droplet will typically take longer to spin up and become available within your cluster.

  3. If so, is a droplet the solid choice for Nakama?

    I recommend starting with a Kubernetes cluster of at least 3 nodes (i.e. 1 master and 2 workers). I believe a Droplet here is equivalent to a single node within your K8s cluster.

Well, I must go and I wish you all the best.

Think different and code well,

-Conrad

Submit an Answer