Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document how to configure maximum number of pods/node that can be allocated #295

Closed
victor-prodan opened this issue Jul 19, 2018 · 8 comments
Labels
kind/design Proposal discussing new features / fixes and how they should be implemented kind/documentation Documentation for Agones kind/feature New features for Agones
Milestone

Comments

@victor-prodan
Copy link
Contributor

victor-prodan commented Jul 19, 2018

While operating dedicated game servers, CPU usage is not a good indicator of node load. The server can mix idle periods (players loading, in lobby, etc) with burst periods (intense gameplay).

You can thus put too many pods in a node because their servers are idle and then when gameplay starts they will starve one another leading to lag, player disconnections or even server crashes.

I propose to be able to configure a maximum amount of pods/node or even better - somehow tie this cap to the number of cpus of the node (if possible).

@cyriltovena
Copy link
Collaborator

cyriltovena commented Jul 19, 2018

I think Kubernetes does this already for you.

If within your pod spec template you provide a resource properties you can express the requested and limit CPU required see https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/

Now when you set this properly for you gameserver expectations, Kubernetes can (if activated) auto scale nodes based on pods requirements.

Would this works ?

@markmandel
Copy link
Member

Or another angle - I wrote about doing this:
https://www.compoundtheory.com/scaling-dedicated-game-servers-with-kubernetes-part-2-managing-cpu-and-memory/

And this paragraph seems relevant:
https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#how-pods-with-resource-requests-are-scheduled

If we are happy about this - this is something we should likely document/faq on our end, as it'll be a common question.

@victor-prodan
Copy link
Contributor Author

Yes, it looks like what I wanted. Can you use this issue as a request to add doc/examples?

@markmandel markmandel added kind/feature New features for Agones kind/documentation Documentation for Agones kind/design Proposal discussing new features / fixes and how they should be implemented labels Jul 19, 2018
@markmandel markmandel changed the title Need to configure maximum number of pods/node that can be allocated Document how to configure maximum number of pods/node that can be allocated Jul 19, 2018
@markmandel
Copy link
Member

SGTM. Marked as such, and changed the title. 👍

Now to work out where we want this to go. Maybe we need a FAQ?

@victor-prodan
Copy link
Contributor Author

I would like a default setting added to the existing configuration examples, as scaling is an important issue for dedicated servers. Or at least a comment....

@markmandel
Copy link
Member

I added
https://github.com/GoogleCloudPlatform/agones/blob/master/docs/limiting_resources.md

Recently. Does this cover this topic, or do we feel there is more that we can write here?

(Basically asking if we can close this ticket)

@victor-prodan
Copy link
Contributor Author

@markmandel That's good enough for me, thanks!

@markmandel
Copy link
Member

Awesome. Closed! 🤸‍♂️

@markmandel markmandel added this to the 0.6.0 milestone Oct 25, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/design Proposal discussing new features / fixes and how they should be implemented kind/documentation Documentation for Agones kind/feature New features for Agones
Projects
None yet
Development

No branches or pull requests

3 participants