Agones is an open source library for hosting, running, and scaling dedicated game servers on Kubernetes. When you run a production deployment of Agones in your Google Kubernetes Engine (GKE) cluster, it is a best practice to run the Agones controller in a dedicated node pool for better isolation and resiliency. This is best suited for production workloads or cost-optimized workloads.
GKE monitors your clusters and uses the Recommender service to deliver guidance for how you can optimize your usage of the platform. The Agones Recommender for GKE identifies clusters where you should isolate the Agones controller.
To learn more about how to manage insights and recommendations from Recommenders, see Optimize your usage of GKE with insights and recommendations.
Identify clusters where you can isolate the Agones controller
The insights from the Agones Recommender identify which clusters contain an Agones controller that should be isolated in a dedicated node pool.
To get these insights, follow the instructions to view insights and recommendations
using the Google Cloud console, the Google Cloud CLI, or the Recommender API with
the AGONES_DEDICATED_NODE_POOL_NEEDED
subtype.
After you identify the clusters, you can implement the recommendation to create a dedicated node pool.
How GKE Agones Recommender detects clusters
The Recommender generates an insight and recommendation if the following criteria are true for a GKE cluster:
- The cluster is running an Agones controller. This is determined if any Pods
have the
agones.dev/role:controller
label set. - The cluster has more than four nodes, which is an indicator that the cluster might be running a production workload.
- The Agones controller is not running on the dedicated node for Agones. A
dedicated node pool is considered to be one that has the following node label
agones.dev/agones-system=true
and node taintagones.dev/agones-system=true:NoExecute
.
Implement the recommendation to create a dedicated node pool
If you've received an insight and recommendation for your cluster and want to use a dedicated node pool for your Agones controller, follow the instructions to create a dedicated node pool where your Agones controller can be scheduled.
The Recommender runs once daily. If it has been less than 24 hours since you've implemented the guidance of the recommendation, you can mark the recommendation as resolved.
What's next
- Optimize your usage of GKE with insights and recommendations
- Create a GKE cluster for your Agones install