[HN Gopher] Thundernetes makes it easy to run your game servers ...
___________________________________________________________________
Thundernetes makes it easy to run your game servers on Kubernetes
Author : pjmlp
Score : 25 points
Date : 2022-03-26 14:01 UTC (1 days ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| amannm wrote:
| Don't game servers need to run on bare metal to minimize latency?
| somebodythere wrote:
| Not really. Minecraft server notoriously ran in JVM for most of
| it's existence. Container virtualization is unlikely to add
| more than a few microseconds of latency.
| dijit wrote:
| This is my field, so even though I'm literally titled
| "expert"[0]- take what I say with a pinch of salt.
|
| When it comes to gameserver performance what tends to be the
| biggest issue is _predictable_ performance. So, kubernetes is
| not inherently antithetical to running game servers as long as
| you don't share the cpu core(s) with anything.
|
| In fact there is a project that (while I was not a part of) was
| spearheaded by ubisoft in collaboration with Google for running
| game servers on Kubernetes (called Agones)[1].
|
| Ubisoft also used "Thunderhead" (which this project seems to be
| a variant of) on Azure with rainbow 6 siege. So it's definitely
| not considered a show-stopping problem.
|
| When it comes to containers/VMs the biggest hit in terms of
| performance is in this order: disk/network/memory access/CPU ;;
| when talking about game servers the most important things go in
| the reverse of that order, which means that the biggest
| performance losses are not as important. Network latency might
| seem like a big deal but you're limited to frame times in the
| best case and geographical differentiations will eat much more
| than the combined weight of frames and Kubernetes networking.
|
| Agones itself bypasses a lot of the Kubernetes networking
| latency additions, though, not all.
|
| [0]: https://www.linkedin.com/in/jharasym
|
| [1]: https://agones.dev/site/
| remram wrote:
| Using container technology doesn't necessarily mean adding
| virtual network devices/proxying/forwarding. In practical
| terms, you can run in "host" networking mode (no separate
| network namespace) on Docker or Kubernetes, and most people
| would still consider those "containers".
|
| In this case they seem to be NAT'ing packets from a host port
| on the correct Kubernetes node (the one running the container)
| to a port in the container, which can be done fast enough with
| iptables (or similar mechanism used by Kubernetes).
| milesward wrote:
| What about Agones? Earlier, I know of more folks using it...
| https://agones.dev/site/
| kodah wrote:
| Very cool project, but I wonder about the economics about using
| public cloud providers as a gaming host where compute and network
| are cornerstones to their profitability.
| remram wrote:
| You can always run Kubernetes on bare metal. This seems easy in
| this case because you don't need persistent storage or load
| balancing to use Thundernetes, and you gain the ability to use
| the generic Kubernetes tools for self-healing, scaling, rolling
| deployments, etc.
| imbriaco wrote:
| The vast majority of game servers are hosted on public cloud
| providers. They turn out to be a pretty perfect example of an
| ideal cloud workload:
|
| - Very elastic demand curve
|
| - Generally ephemeral with any necessary persistent state
| stored off-host
|
| - Benefit from geographic distribution of cloud regions because
| they're generally quite latency sensitive
| BaconPackets wrote:
| It might be more expensive to run but you have savings in terms
| of time to deployment, orchestration and the overall maturity
| of the cloud itself.
|
| Managing bare metal at scale is challenging.
| dijit wrote:
| This is very true. But never underestimate the cost of
| running gameservers in cloud. For us (with really good
| discounts and a fantastic custom made predictive auto-scaler)
| it was still more than double the cost than using our
| previously used bare-metal outsourcing provider.
| alias_neo wrote:
| I guess it makes sense for Microsoft to be able to put Xbox
| game servers in Azure but also game devs can benefit from the
| scalability of Kubernetes. If have is low tire not paying for
| hardware you aren't using and vice versa.
___________________________________________________________________
(page generated 2022-03-27 23:00 UTC)