Since GameLift has a limit of up to 50 game sessions per hardware node, I am trying to find anyway, how can I run more than 50 sessions per node (since the limit of 50 game sessions per node is a REALLY huge waste of resources for my lightweight game).
The suggested way was to manage set up FleetIQ manually with EC2 machines (possibly with some built-in autoscaling mechanism). This way should work for us, except for one thing - in this case, we need to run raw binaries instead of containers.
If we use simple binaries, we need to work somehow with monitoring, logging, implementing blue-green or canary deployments, and so on. All these concerns can be solved in an easier way by using containers. With the “containers” word I mean Docker container in this case.
But running containers on raw EC2 instances seems like is not convenient enough: implementing things like blue-green or canary deployments is not really trivial, etc.
I am thinking about the way with AWS ECS, based on EC2 instances. In this case, I can run 1 game session per container as much per node as I can. Fargate is not applicable in my case since the minimal limits for Fargate tasks are too huge for us and it will be a waste of computing resources again.
My question is: Can I use GameLift with ECS at the same time? Why I want to use GameLift: it provides more robust Spot instances and these instances will be more suitable for the game.
P.S. I also thought about AWS EKS with something like Agones but it’s overkill for us, and managing EKS for us is too complex a task.
@JamesM_Aws I hope you can help me